机器学习评估指标整理

名词解释:

TP: True Positive

FP:False Positive

TN:True Negative

FN:False Negative

评估指标的计算:

precision = TP / (TP + FP)   # 预测为正的样本中实际正样本的比例
recall = TP / (TP + FN)      # 实际正样本中预测为正的比例
accuracy = (TP + TN) / (P + N)
F1-score = 2 / [(1 / precision) + (1 / recall)] #调和平均数

下图完整的叙述了计算方式:

(新窗口打开高清图)

Micro-F1和Macro-F1:

最后看Micro-F1和Macro-F1。在第一个多标签分类任务中,可以对每个“类”,计算F1,显然我们需要把所有类的F1合并起来考虑。

这里有两种合并方式:

第一种计算出所有类别总的Precision和Recall,然后计算F1。

例如依照最上面的表格来计算:Precison=5/(5+3)=0.625,Recall=5/(5+4)=0.556,然后带入F1的公式求出F1,这种方式被称为Micro-F1微平均。

第二种方式是计算出每一个类的Precison和Recall后计算F1,最后将F1平均。

例如上式A类:P=2/(2+0)=1.0,R=2/(2+2)=0.5,F1=(2*1*0.5)/1+0.5=0.667。同理求出B类C类的F1,最后求平均值,这种范式叫做Macro-F1宏平均。

从上面二者计算方式上可以看出,macro-F1平等地看待各个类别,它的值会受到稀有类别的影响;而micro-F1则更容易受到常见类别的影响。

注:如果这个数据集中各个类的分布不平衡的话,更建议使用mirco-F1,因为macro没有考虑到各个类别的样本大小。

mofeng

mofeng

陌风小同学爱科技、爱文艺、也爱生活!

留下你的评论

*评论支持代码高亮<pre class="prettyprint linenums">代码</pre>