精度、召回率、准确率、F-score
文本分类的评价指标
文本分类的评价指标一般采用精度(precision)、召回率(recall)、F-score和准确率(accuracy)
混淆矩阵
预测正例 | 预测反例 | |
实际正例 | TP | FN |
实际反例 | FP | TN |
其中TP:true positive 表示实际为正例、预测也为正例的样本数量;FN:false negative 实际为正例、结果预测为反例的样本;FP:false positive:实际反例但是预测是正例的样本数量;TN:true negative 实际反例预测也是反例的样本数量。
精度
$$
precision=\frac{TP}{TP+FP}
$$
简化为
$$
precision=\frac{正正}{正正+反正}
$$
理解为:精度=实际正例并且预测也为正例/实际正例预测为正例+实际反例但是预测为正例的和
召回率
$$
recall = \frac{TP}{TP+FN}
$$
简化:
$$
recall = \frac{正正}{正正+正反}
$$
理解:
$$
召回率=\frac{预测为正例、实际也是正例}{预测为正例、实际也是正例+预测为反例、实际为正例}
$$
准确率
$$
accuracy = \frac{TP+TN}{TP+FN+FP+TN}
$$
这个很好理解,就是实际上预测和实际结果正确的样本数量和全部的比重
F-score
实际应用时, 需要平衡精度和召回率, 通常使用两者的调和平均数作为一个综合的评价指标, 称之为F-score
$$
f-score = \frac{2precisionrecall}{precision+recall}
$$
优缺点
1. 准确率
虽然准确率能够判断总的正确率,但是在样本不均衡的情况下,并不能作为很好的指标来衡量结果。
比如在样本集中,正样本有90个,负样本有10个,样本是严重的不均衡。对于这种情况,我们只需要将全部样本预测为正样本,就能得到90%的准确率,但是完全没有意义。对于新数据,完全体现不出准确率。因此,在样本不平衡的情况下,得到的高准确率没有任何意义,此时准确率就会失效。所以,我们需要寻找新的指标来评价模型的优劣。
2 . 精确率
精确率(Precision) 是针对预测结果而言的,其含义是在被所有预测为正的样本中实际为正样本的概率,精确率和准确率看上去有些类似,但是是两个完全不同的概念。精确率代表对正样本结果中的预测准确程度,准确率则代表整体的预测准确程度,包括正样本和负样本。
3. 召回率
召回率(Recall) 是针对原样本而言的,其含义是在实际为正的样本中被预测为正样本的概率。
准确率和召回率互相影响,理想状态下肯定追求两个都高,但是实际情况是两者相互“制约”:追求准确率高,则召回率就低;追求召回率高,则通常会影响准确率。我们当然希望预测的结果precision越高越好, recall越高越好, 但事实上这两者在某些情况下是矛盾的。这样就需要综合考虑它们,最常见的方法就是F-score。 也可以绘制出P-R曲线图,观察它们的分布情况。
4. F-score
一般来说准确率和召回率呈负相关,一个高,一个就低,如果两个都低,一定是有问题的。 一般来说,精确度和召回率之间是矛盾的,这里引入F1-Score作为综合指标,就是为了平衡准确率和召回率的影响,较为全面地评价一个分类器。F1是精确率和召回率的调和平均。
参考
文本分类的评价指标 基于Word2vec的微博短文本分类研究 张谦 高章敏 刘嘉勇 四川大学电子信息学院
博客 准确率、精确率、召回率和F-score