西瓜书《机器学习》阅读笔记2——Chapter2_查准率、查全率与F1

绘制P-R曲线

这里举两个例子来说明怎么绘制P-R曲线。
假设有测试实例 {x1,x2,x3,x4,x5,x6} ,其中真实标记为正例的是 x1,x2,x5 ,真实标记为反例的是 x3,x4,x6

现在根据学习算法A得到了模型,按其预测的为正例的可能性大小对测试样例进行排序,结果如下: x5,x2,x1,x3,x4,x6

  • x5 预测为正例,其余预测为反例,则 P=1,R=13 ,其对应的混淆矩阵如下:
  预测为P 预测为N
真实为P 1 2
真实为N 0 3


  • x5,x2 预测为正例,其余预测为反例,则 P=1,R=23
  • x5,x2,x1 预测为正例,其余预测为反例,则 P=1,R=1

  • x5,x2,x1,x3 预测为正例,其余预测为反例,则 P=34,R=1

  • x5,x2,x1,x3,x4 预测为正例,其余预测为反例,则 P=35,R=1

  • x5,x2,x1,x3,x4,x6 预测为正例,则 P=12,R=1

综上,可以画出算法A的P-R曲线:

西瓜书《机器学习》阅读笔记2——Chapter2_查准率、查全率与F1_第1张图片

曲线下的面积很大,可以看出学习算法A的性能是非常好的。


F1

F1的计算公式如下:

F1=PRP+R(1)

F1其实是P和R的调和平均:
1F1=12(1P+1R).

更一般的形式是 Fβ
1Fβ=11+β2(1P+β2R).(2)

其中 β 度量了查全率和查准率的相对重要性。

F1 更注重较小值:比如 P=0.1,R=0.9 ,那么 F1 是会大呢,还是小呢?根据公式(2)得到 F1=2PRP+R=0.18 ,所以 F1 更偏向小值。也可以这样理解,因为 F1=21P+1R ,那么分母中的两个相加项,更大的那个对 F1 的取值更重要,也就是 P R 中更小的那个对 F1 的取值更重要。

β>1 时,查全率对 Fβ 的影响更大;在 β<1 时,查准率对 Fβ 的影响更大。因为 Fβ=(1+β2)11P+β2R ,当 β>1 时, β2R 项会更大,所以 R 更重要;反之亦然。

当手上有多个二分类混淆矩阵时,想考察综合查准率和查全率,有两种方式:

  • macro(宏):计算每个混淆矩阵的P和R,然后取平均作为宏P和宏R
  • micro(微):每个混淆矩阵对应的元素相加,得到一个新混淆矩阵,基于这个新的混淆矩阵计算出微P和微R

根据公式(1)由宏P和宏R得到宏F1,由微P和微R得到微F1。

你可能感兴趣的:(机器学习)