AUC
AUC: Area Under Curve, 默认为ROC(receiver operating characteristic curve) Curve, 也可以指定PR(Precision Recall) curve。
由于ROC曲线的X轴为False Positive Rate,Y轴为True Positive Rate,AUC是可以指 随机给定一个正样本和一个负样本,分类器输出该正样本为正的 比 输出该负样本为正 要大的概率,即 AUC = P(P_tpr > P_fpr).
AUC的计算方法:
在有M个正样本,N个负样本的数据集里。一共可构成 MN 个样本对(一对样本即,一个正样本与一个负样本)。统计这MN对样本里,正样本的预测概率大于负样本的预测概率的个数。
$$
A U C=\frac{\sum_{i \in \text { positiveclass }} \operatorname{rank}_{i}-\frac{M(1+M)}{2}}{M \times N}
$$
1 | def AUC(label, pre): |
1、多分类可以计算AUC吗?
可以。通过one VS rest可以得到M个AUC,最后求均值。
2、AUC的阈值怎么选取最佳?
曲线靠近左上角对应的阈值最佳,代表TPR大于FPR的最大机会。
3、类别不平衡对AUC_roc和AUC_pr哪个影响大?
ROC不受训练集类别分布的影响
References:
1、 AUC的计算方法