AUC(Area under curve)是机器学习常用的二分类评测手段,直接含义是ROC曲线下的面积.另一种解释是:随机抽出一对样本(一个正样本,一个负样本),然后用训练得到的分类器来对这两个样本进行预测,预测得到正样本的概率大于负样本概率的概率. 在有M个正样本,N个负样本的数据集里,利用公式求解: \[ AUC=\frac{\sum_{i \in positiveClass} rank_i-\frac{M(1+M)}{2}}{M*N} \] 在python实现中,相当于使用了计数排序,因为