精确率与召回率,RoC曲线与PR曲线

爿臣戈王耑/ 十二月 18, 2017/ 机器学习/ 0 comments

1. TP, FP, TN, FN

    1.   True Positives,TP:预测为正样本,实际也为正样本的特征数
    2.   False Positives,FP:预测为正样本,实际为负样本的特征数
    3.   True Negatives,TN:预测为负样本,实际也为负样本的特征数
    4.   False Negatives,FN:预测为负样本,实际为正样本的特征数

2. 精确率(precision),召回率(Recall)与特异性(specificity)

精确率(Precision)的定义在上图可以看出,是绿色半圆除以红色绿色组成的圆。严格的数学定义如下:

P=TPTP+FPP=TPTP+FP

召回率(Recall)的定义也在图上能看出,是绿色半圆除以左边的长方形。严格的数学定义如下:
R=TPTP+FNR=TPTP+FN

特异性(specificity)的定义图上没有直接写明,这里给出,是红色半圆除以右边的长方形。严格的数学定义如下:

S=FPFP+TNS=FPFP+TN

有时也用一个F1值来综合评估精确率和召回率,它是精确率和召回率的调和均值。当精确率和召回率都高时,F1值也会高。严格的数学定义如下:

2F1=1P+1R2F1=1P+1R

有时候我们对精确率和召回率并不是一视同仁,比如有时候我们更加重视精确率。我们用一个参数ββ来度量两者之间的关系。如果β>1β>1, 召回率有更大影响,如果β<1β<1,精确率有更大影响。自然,当β=1β=1的时候,精确率和召回率影响力相同,和F1形式一样。含有度量参数ββ的F1我们记为Fβ, 严格的数学定义如下:

Fβ=(1+β2)PRβ2P+RFβ=(1+β2)∗P∗Rβ2∗P+R

我们熟悉了精确率, 召回率和特异性,后面的RoC曲线和PR曲线就好了解了。

3. RoC曲线和PR曲线

有了上面精确率, 召回率和特异性的基础,理解RoC曲线和PR曲线就小菜一碟了。

以召回率为y轴,以特异性为x轴,我们就直接得到了RoC曲线。从召回率和特异性的定义可以理解,召回率越高,特异性越小,我们的模型和算法就越高效。也就是画出来的RoC曲线越靠近左上越好。如下图左图所示。从几何的角度讲,RoC曲线下方的面积越大越大,则模型越优。所以有时候我们用RoC曲线下的面积,即AUC(Area Under Curve)值来作为算法和模型好坏的标准。

以精确率为y轴,以召回率为x轴,我们就得到了PR曲线。仍然从精确率和召回率的定义可以理解,精确率越高,召回率越高,我们的模型和算法就越高效。也就是画出来的PR曲线越靠近右上越好。如上图右图所示。

使用RoC曲线和PR曲线,我们就能很方便的评估我们的模型的分类能力的优劣了。

 

发表 评论

电子邮件地址不会被公开。 必填项已用*标注

你可以使用 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>
*
*