美文网首页
比准确率更准确的 F1指标是怎么回事?

比准确率更准确的 F1指标是怎么回事?

作者: 苏州叶晓锋 | 来源:发表于2020-06-07 09:12 被阅读0次

算法工程师除了准确率(Accuracy)之外,经常会用F1值(F1 Score)评判模型的优劣。虽然F1值好用,但解释起来颇为困难。翻阅了网上很多介绍F1值的文章,大部分只会介绍F1 值是怎么计算的,而很少从业务角度介绍F1值,所以整理这篇文章,作为备忘。

首先,什么是模型的准确率?以二元分类模型为例,模型对10个样本进行推理,每次推理的结果要么正确要么错误,准确率就是正确推理的样本数所占百分比,如果只出现1次错误就是90%,出现2次错误就是80%,以此类推。


图1.模型准确率

事实上准确率存在一个问题,不管什么类型的样本,推理错误都一样对待,统计比较粗糙,而F1值就不一样,它会把错误和正确根据样本的不同再细分,考虑问题更细致全面。我们假设做一个模型来玩扫雷游戏,扫雷游戏的规则是雷区判断错误游戏马上结束,但在安全区标雷区游戏还能继续。

图2.扫雷游戏
每一个推理错误,F1值会统计是雷区的错误还是安全区的错误,而模型准确率(Accuay)只统计错误的数量而不管是不是碰了雷区,这就是F1值统计更细更准的原因,如下图所示。
图3.错误细分
10个样本出现2次错误模型的准确率(Accuary)永远都是80%,而按照F1的统计方法,这两次错又会细分成27种情况,F1值可以统计出最优的情况,而模型准确率不管哪种情况都是80%。
最后看一下怎么细分这27种情况,这要用到迷惑矩阵,把模型推理结果分为四大类,分别是雷区的错误FP(False Positive),雷区的正确TP(True Positive),安全区的错误(False Negative),安全区的正确(True Negative),用一个二维矩阵来表示就构成迷惑矩阵,如下图所示。
图4.迷惑矩阵
具体F1值的计算就根据 TP,FP,TN,TN的代入下面的公式得到:
图5.计算公式
准确率80%和不同F1的对照表如下:
表1.F1值和准确率值对照表

总结:

F1值之所以比模型准确率更能评判模型的优劣,根本原因是其统计的更精细更全面,如果把准确率比作一把测量模型的直尺,那么F1值就是一把千分尺。

相关文章

网友评论

      本文标题:比准确率更准确的 F1指标是怎么回事?

      本文链接:https://www.haomeiwen.com/subject/ghrizhtx.html