ROC曲线

四个概率

TPTP——将正样本预测为正(的概率)

FNFN——将正样本预测为负(的概率)

FPFP——将负样本预测为正(的概率)

TNTN——将负样本预测为负(的概率)

精确度定义为:

P=TPTP+FPP=\frac{TP}{TP+FP}

分母为所有判断为正的样本,PP表示在所有被判断为正的样本中真正的正样本的概率

召回率定义为:

R=TPTP+FNR=\frac{TP}{TP+FN}

分母为所有真正的正样本,RR表示在所有真正的正样本中被判断为正样本的概率

  1. TP+FN=1TP+FN=1

  2. FP+TN=1FP+TN=1

  3. 对于同一个系统来说,若TP增加,则FP也增加

    若系统性能不提高(即同一个系统),允许更多FN变为TP的同时,也会使更多TN变为FP

    (好东西进来了,苍蝇蚊子也会进来)

ROC曲线

1590570545803

ROC(Receiver Operating Character)曲线,是一条横坐标FP,纵坐标TP的曲线

通过改变判断阈值,可以得到ROC曲线。上图画出了4个系统的ROC曲线

怎么看ROC曲线呢?(以上哪个系统的性能最优呢?)

显然是蓝色曲线,因为在每一个FP点,其对应的TP都大于其他三条曲线。

赋予一个场景帮助理解:

若上述模型是人脸识别门禁系统,则FP=0时的TP值表示在不错误放入一个未登记的用户的情况下,已登记用户能被正确识别的概率,在这种情况下蓝色曲线表现最好。可以预见,当放低系统准确性的要求时(即FP增大),已登记用户能被正确识别的概率将会增大(ROC曲线为增函数)。那么蓝色曲线完全在其他曲线之上,说明蓝色曲线的性能毫无疑问大于其他曲线。

但是如果ROC曲线如下图所示,则不能得出红色曲线就一定比白色曲线要好的结论,这需要一个取舍(看能接受的最大FP为多少,若FP的要求不高,则白色曲线可以认为比红色曲线好)

1590584798526

综合评定这个系统的性能也可以看ROC曲线下面积的大小,ROC曲线下面积越大,则系统性能越优良。

等错误率(Equal Error Rate,EER)是两类错误FP和FN相等时候的错误了,可以直观地表示系统性能。

FN=1TP=FPTP+FP=1FN=1-TP=FP\Rightarrow TP+FP=1

1590571167054

上图中,ROC曲线和EER直线的交点的纵坐标表示在FP=FN条件下的TP的值(即两类错误等概时的正确度),交点的TP值越大则系统性能越优良。

单纯看TP值来判断系统的性能是不科学的,因为TP值高的情况下,可能系统发生两类错误的概率也很大,那么如何评判在这么大错误率情况下的TP值有什么意义呢?

若对两类错误的看重程度一样(即没有偏向小一点的FP或小一点的FN),则在两类错误相等的情况下的TP值恰好就是上图中EER直线和ROC曲线交点的纵坐标的含义。在对系统发生两类错误有限制的情况下考察TP值才具有意义。