深度学习-AUC/PR计算

1 AUC :AUC 表示随机抽取一个正样本和一个负样本,分类器正确给出正样本的score高于负样本的概率,在所以标注样本中,正样本共T个,负样本共F 个,如果随机抽取一个正样本和负样本,共有T*F 个pair,其实如果有s个pair 的正负样本pair 满足于正样本的score 高于负样本(权重为1),v个pair 正负样本score 相同(权重为0.5),则AUC就等于(s+0.5v)/(T*F).

1 根据定义,由梯形法计算ROC 曲线下的面积,求auc

2 变量全部样本,对正负pair 的数目计数,求AUC。

3 从高到底依次将score 值作为阈值,当测试样本属于正样本的概率大于或等于这个threshold 时,我们认为它为正样本,否则为负样本,每次选取一个不同的threshold,就可以得到一组FPR和TPR,即ROC曲线上的一点,这样一来,我们一共得到了20组FPR和TPR的值,将它们画在ROC曲线。

2 PR 曲线

PR 曲线的横坐标是召回率,纵坐标是准确率,对于一个排序模型来说,其PR 曲线上的一个点代表: 在某一个阈值下,模型将大于该阈值的结果判定为正样本,整条PR 曲线是通过将阈值从高到低移动而生成的。所以可以整体地比较在不同阈值下模型预测的水平。

但是有个问题是离线评测数据集的数据分布往往跟线上环境的数据集分布不同,比如你的离线数据集正负样本比例为1:1,线上样本比例1:100,这是PR 曲线就不适用了,需要ROC 曲线。

你可能感兴趣的:(项目-深度学习)