【机器学习】:理解分类模型评价指标AUC

2020-02-17  本文已影响0人  故沉_N

\color{red}{ROC} (Receiver Operating Characteristic)\color{red}{受试者工作特性曲线}

ROC曲线

纵轴TPR(真正例率)和横轴FPR(假正例率)分别为
TPR= \frac {TP} {TP+FN}

FPR= \frac {FP} {FP+TN}

对于二分类问题,预测模型会对每一个样本预测一个概率p。 然后,可以选取一个阈值t,让p>t的样本预测为正,反之为负。 这样一来,根据预测的结果和实际的样本标签可以把样本分为4类

实际正样本 实际负样本
预测为正 TP(真正例) FP(假正例)
预测为负 FN(假负例) TN(真负例)

若一个学习器的ROC曲线被另一个学习器的曲线完全“包住”,则可以断言后者的性能优于前者;若两个学习器发生交叉,则难以断言哪个好哪个差,此时较为合理的评判标准是ROC下的面积,即AUC。

\color{red}{AUC}(Area Under ROC Curve)\color{red}{ROC曲线下的面积}
AUC的几何意义:
  对ROC曲线下的各部分面积求和得到。
AUC的概率意义:
  随机取出一个正样本和一个负样本,放入分类器中进行判别输出相应的为正的概率。
  那么(正样本为正的概率)>(负样本为正的概率)的可能性即AUC。
记P为出现(正样本为正的概率)>(负样本为正的概率)的可能的次数
一堆已知正负的样本(假设正样本M个,负样本N个)
随机取一对正负样本的可能性有MN对,则AUC=P/MN。

接下来就是求P。
求出所有样本放入分类器后产生其可能为正的概率,对这个概率进行降序排列
记rank_x为在整个(M+N)中输出概率排名为rank_x的正样本的秩,x是单纯在正样本输出概率中进行升序排列的秩。
则在这个样本排名
  之后(比此样本概率小)正样本有M-X个,
  之前(比此样本概率大)有M-(M-X)-1=X-1个;
  之前的负样本有(M+N-rank_x)-(X-1),
  之后的负样本有N-[(M+N-rank_x)-(X-1)]=rank_x-(M-X+1)。

P就是所有(正样本为正的概率)>(负样本为正的概率)的可能组合个数,
以上诉例子来讲,就是对M个正样本而言,每次比较排名在它之后的样本个数
P=\sum_{X=1}^{M}rank_x-(M-X+1)
后面那项是等差数列,代入AUC公式化简一下就是知乎博主小小丘贴出的最后公式
AUC=\frac{\sum_{ins_{i}\in positiveclass}rank_{ins_{i}}-\frac{M*(M+1)}{2}}{M*N}

参考:
  小小丘知乎答案
  周志华的西瓜书

上一篇 下一篇

猜你喜欢

热点阅读