准确率(Accuracy)
准确率(Accuracy)是用来评估分类模型性能的一个重要指标。它表示模型正确预测的样本数占总样本数的比例。
准确率的计算公式为:
Accuracy=(TP+TN)/(TP+TN+FP+FN)
其中:
-
TP(True Positives):真正例,模型正确预测为正类的样本数。 TN(True Negatives):真负例,模型正确预测为负类的样本数。 FP(False Positives):假正例,模型错误预测为正类的样本数。 FN(False Negatives):假负例,模型错误预测为负类的样本数。
举个例子来说明,假设有一个医生在诊断一种疾病时使用了某种检测方法。我们可以将这个例子对应到分类模型的术语中:
-
真正类(TP):实际患病的人被检测为阳性。
-
真负类(TN):实际健康的人被检测为阴性。
-
假正类(FP):实际健康的人被错误地检测为阳性。
-
假负类(FN):实际患病的人被错误地检测为阴性。
现在假设有100个人参加了检查,其中50人实际患病,50人实际健康。检测结果如下:
-
40名患病者被检测为阳性(TP)
-
10名患病者被错误地检测为阴性(FN)
-
45名健康者被检测为阴性(TN)
-
5名健康者被错误地检测为阳性(FP)
将数值代入计算:
Accuracy=(40+45)/(40+45+5+10)=85/100=0.85
因此,这种检测方法的准确率为85%,也就是说在所有被检测的人中,有85%的人被正确诊断。准确率反映了模型或检测方法在所有样本中正确预测的比例。它是一个直观的性能指标,但在某些情况下可能会产生偏差, 需要结合其他指标一起评估模型的性能。
精确率(Precision)
精确率(Precision)是一个重要的性能指标,用于衡量分类模型在预测为正类时的准确性。它表示在所有被模型预测为正类的样本中,实际为正类的比例。
精确率的计算公式为:
Precision=TP/(TP+FP)
用前面的例子来表示:
-
40名患病者被检测为阳性-----真正类 TP
-
5名健康者被错误地检测为阳性-----假正类 FP
根据精确率公式:
Precision=40/(40+5)≈0.889
因此,这种检测方法的精确率约为88.89%。这表示在所有被检测为阳性的样本中,有88.89%实际上是患病的。精确率是评估模型性能的重要指标,尤其在类别不平衡的情况下尤为重要。它帮助我们理解模型在预测正类时的准确性,能够有效反映出模型的可靠性。
召回率(Recall)
召回率(Recall)是一个重要的性能指标,用于衡量分类模型在实际为正类的样本中,预测正确的比例。
召回率的计算公式为:
Recall=TP/(TP+FN)
用前面的例子来表示:
-
40名患病者被检测为阳性----真正类 TP
-
10名患病者被错误地检测为阴性----假负类 FN
根据召回率计算公式:
Recall=40/(40+10)=0.8
因此,这种检测方法的召回率为80%。这表示在所有实际患病的样本中,有80%被正确检测为阳性。召回率反映了模型在实际正类样本中的覆盖程度。它与精确率不同,侧重于模型在实际正类样本中的表现。在某些应用场景中,如医疗诊断,召回率可能比精确率更加重要,因为我们希望尽可能多地识别出实际患病的人。召回率的分数越高越好。
F1分数(F1 Score)
F1分数是一个重要的性能指标,用于综合评估分类模型的精确率(Precision)和召回率(Recall)。它特别适用于类别不平衡的数据集,因为它能够平衡这两个指标的影响。
F1分数的计算公式为:
F1=2×(Precision×Recall)/(Precision+Recall)
在上面的例子中,Precision=40/(40+5);Recall=40/(40+10),我们根据F1 score的计算公式可以知道, F1= 2*
(40/45)*(40/50)/(40/45+40/50)=84.21%
F1分数是一个综合性指标,能够有效反映模型在处理类别不平衡问题时的性能。它在许多领域(如医疗诊断、欺诈检测等)中非常重要,因为这些领域通常对假阳性和假阴性的影响有不同的要求。F1分数越高越好
ROUGE
ROUGE(Recall-Oriented Understudy for Gisting Evaluation)是一种用于评估自动文本摘要和机器翻译质量的指标。它通过比较自动生成的摘要与参考摘要(通常是人工生成的)之间的相似度来进行评估。
ROUGE的主要类型
-
ROUGE-N:计算生成摘要与参考摘要之间的n-gram重叠情况。
-
ROUGE-L:基于最长公共子序列(LCS)来评估生成摘要与参考摘要的匹配程度。
-
ROUGE-W:考虑词序权重的n-gram评估。
-
ROUGE-S:评估生成的句子与参考摘要之间的匹配程度。
ROUGE-N的计算公式为:
举个例子,假设我们有以下自动生成的摘要和参考摘要:
-
自动摘要:
the cat was found under the bed
-
参考摘要:
the cat was under the bed
计算ROUGE-1
-
1-gram提取:
-
自动摘要的1-gram:
the
,cat
,was
,found
,under
,the
,bed
-
参考摘要的1-gram:
the
,cat
,was
,under
,the
,bed
-
重叠的1-gram数量:
-
重叠的1-gram:
the
,cat
,was
,under
,the
,bed
(共6个) -
计算ROUGE-1:
-
参考摘要的1-gram总数:6
-
ROUGE-1计算:
ROUGE−1=6/6=1.0
这表示自动摘要与参考摘要之间的1-gram重叠率为100%。
计算ROUGE-2
-
2-gram提取:
-
自动摘要的2-gram:
the cat
,cat was
,was found
,found under
,under the
,the bed
-
参考摘要的2-gram:
the cat
,cat was
,was under
,under the
,the bed
-
重叠的2-gram数量:
-
重叠的2-gram:
the cat
,cat was
,under the
,the bed
(共4个) -
计算ROUGE-2:
-
参考摘要的2-gram总数:5
-
ROUGE-2计算:
ROUGE−2=4/5=0.8
这表示自动摘要与参考摘要之间的2-gram重叠率为80%。
ROUGE-1和ROUGE-2是最常用的评估指标.
Perplexity
Perplexity(困惑度)是自然语言处理(NLP)中一种常用的评估语言模型性能的指标。它衡量了语言模型在预测文本序列时的“困惑”程度,反映了模型对下一个词的预测能力。
Perflexity计算公式
Perplexity 可以被定义为一个序列的平均负对数似然的指数形式。具体而言,对于给定的词序列 w1,w2,…,wNw1,w2,…,wN,其计算公式为:
其中:
-
NN 是序列中的词数。
-
P(wi∣w1,w2,…,wi−1)P(wi∣w1,w2,…,wi−1) 是模型在给定前面词的情况下预测第 ii 个词的概率。
直观理解
Perplexity 可以被视为模型在预测下一个词时的“惊讶”程度。较低的困惑度表示模型对文本的预测更有信心,而较高的困惑度则表示模型在预测时更加困惑。例如,如果一个语言模型的困惑度为 10,这意味着模型在每个词的预测中,平均需要从 10 个可能的选择中进行选择。
假设我们有一个简单的语言模型,它在给定上下文的情况下预测下一个词的概率。对于句子“the cat sat on the”,模型可能会对下一个词的预测概率如下:
-
P( mat ∣ the cat sat on the )=0.6P( mat ∣ the cat sat on the )=0.6
-
P( floor ∣ the cat sat on the )=0.3P( floor ∣ the cat sat on the )=0.3
-
P( table ∣ the cat sat on the )=0.1P( table ∣ the cat sat on the )=0.1
如果我们计算这个句子的困惑度,首先需要计算每个词的对数概率,然后取平均值并进行指数运算。假设我们只考虑句子的最后一个词“mat”,则:
PPL=exp(−log(0.6))≈1.51PPL=exp(−log(0.6))≈1.51
这个困惑度值表示模型对预测的信心程度,Perplexity的值越小,表明模型对词的预测更有信心。
BLEU
BLEU(Bilingual Evaluation Understudy)是一种用于评估机器翻译质量的指标。它通过比较机器翻译输出与一个或多个参考翻译之间的n-gram重叠来进行评分。
定义
BLEU的核心思想是判断机器翻译的输出与人类翻译之间的相似程度。该指标主要通过以下几个步骤进行计算:
-
n-gram匹配:计算候选翻译(机器翻译输出)与参考翻译之间的n-gram重叠。常见的n-gram包括:
-
BLEU-1:计算unigram(单词级别)的重叠。
-
BLEU-2:计算bigram(词组级别)的重叠。
-
BLEU-3和BLEU-4:分别计算三元组和四元组的重叠。
-
修改后的精确率:BLEU使用修改后的n-gram精确率来避免重复计算相同词的多次匹配。具体而言,候选翻译中每个n-gram的计数被限制为在参考翻译中出现的最大次数。
-
长度惩罚:为了避免机器翻译系统生成过短的翻译,BLEU引入了长度惩罚(Brevity Penalty),确保翻译的长度与参考翻译相对一致。
计算公式
BLEU的计算公式为:
BLEU=BP⋅exp(∑n=1Nwnlogpn)BLEU=BP⋅exp(n=1∑Nwnlogpn)
其中:
-
BPBP 是长度惩罚因子。
-
NN 是n-gram的最大长度(通常取4)。
-
wnwn 是权重系数(通常取 1NN1)。
-
pnpn 是n-gram的精确率。
直观理解
假设我们有以下参考翻译和机器翻译输出:
-
参考翻译:
The cat is on the mat.
-
机器翻译:
The cat sat on the mat.
-
提取n-gram:
-
参考翻译的unigram:
[The, cat, is, on, the, mat]
-
机器翻译的unigram:
[The, cat, sat, on, the, mat]
-
计算匹配的unigram数量:
-
匹配的unigram:
[The, cat, on, the, mat]
(共5个匹配)。
-
计算unigram精确率:
-
机器翻译的unigram总数:6
-
p1=56≈0.8333p1=65≈0.8333
-
计算长度惩罚:
-
假设机器翻译长度为6,参考翻译长度为6,则 BP=1.0BP=1.0。
-
计算BLEU分数:
-
最终BLEU分数为:
BLEU=1.0⋅exp(log(0.8333))≈0.8333BLEU=1.0⋅exp(log(0.8333))≈0.8333
BLEU分数越高,翻译质量越好
标签:BLEU,F1,模型,ROUGE,40,cat,gram,rouge,Perplexity From: https://www.cnblogs.com/syw20170419/p/18544290