目录
- 困惑度 Perplexity
- 如何计算?
- BLEU分数
- 步骤 1:计算 n-gram 精度。
- 第 2 步:简洁惩罚(BP)
- ROUGE 分数
- ROUGE-N
- ROUGE-L
- ROUGE-S
- ROUGE-SU
- ROUGE-W
- MRR平均倒数排名
- BERT 分数
-
- 标记化和嵌入生成
-
- 余弦相似度计算
-
- 最佳匹配策略
-
- 准确率、召回率、F1 分数计算
-
LLM评估有哪些指标? ROUGE 分数、BLEU、困惑度、MRR、BERTScore 数学和示例
困惑度 Perplexity
不要将它与 ChatGPT 的竞争对手困惑度 (Perplexity) 混淆,但它是用于评估语言模型预测答案中单词序列的能力的关键指标。此外,它不需要 Ground Truth!
困惑度衡量模型在预测序列中的下一个单词时的“困惑”或“混乱”程度。
困惑度越低,意味着混乱程度越低,这意味着它能够更好地预测下一个单词。
相反,困惑度越高,表示混乱程度越高,这意味着模型很难正确预测下一个单词。
所以,
如果Perplexity=1,则模型以 100% 的准确率完美地预测该序列。
Perplexity=10可以解释为模型在序列中的每个点上平均有 10 个同样可能的选项。因此非常困惑。
如何计算?
exp(- (1/N) * Σ log(P(w_i | w_1, w_2, …, w_i-1)))
P(w_i | w_1, w_2, …, w_i-1) = 给定前面的单词 (w_1, w_2, …, w_i-1) 作为上下文,语言模型分配给序列中第 i 个单词 (w_i) 的条件概率。
N =长度
假设 LLM 预测某些提示为“猫坐在垫子上。”。
**步骤 1:**根据前面的单词计算每个单词的概率。对于此示例,我们假设以下值:
P(“The”) = 0.5
P(“cat”|“The”) = 0.4
P(“sat”|“The cat”) = 0.3
P(“on”|“The cat sat”) = 0.4
P(“the”|“The cat sat”) = 0.5
P(“mat”|“The cat sat on”) = 0.6
**第 2 步:**应用对数并将这些概率加在一起
log(P(“The”)) +
log(P(“cat”|”The”)) +
log(P(“sat”|”The cat”)) +
log(P(“on”|”The cat sat”)) +
log(P(“the”|”The cat sat”)) + log(P(“the”|”The cat sat on”)) +
log(P(“mat”|”The cat sat on”)) = abc
**步骤 3:**对上述对数总和取平均值(除以总词数),并应用指数
exp(-abc/6) = 2.275 (暂时假设)
因此,Perplexity=2.275 意味着模型需要在约 2.275 个单词中进行选择来选择序列中的下一个单词。
***注意:*要计算困惑度,您需要掌握预测概率。因此,在使用 OpenAI 或 Anthropic 等无法获取概率分数的 API 时,困惑度就毫无用处了。
对于 HuggingFace 加载的模型,您可以使用评估包,使用下面的代码来更改模型的名称。
BLEU分数
另一个非常流行的指标是 BLEU(Bilingual Evaluation Understudy,双语评估替补),它评估输出与 Ground Truth 的相似程度(因此与 Perplexity 不同,需要 Ground Truth),主要用于机器翻译问题。
BLEU


6746

被折叠的 条评论
为什么被折叠?



