【机器学习】ROC曲线与PR曲线

一、前置概念

1.混淆矩阵

预测为Positive 预测为Negative
实际值为P TP FN
实际值为N FP TN

前一个字母:预测正确为T,预测错误为F;后一个字母:预测为正例为P,预测为负例为N。

2.评价指标

A准确率

所有样本里,预测正确的概率。当类别不均衡时,准确率高也不一定意味着模型好。

R召回率/查全率:\frac{TP}{TP+FN}

实际为正例的例子里,预测正确的概率。比如核酸检测时,更关注把真实的正例全部找出来,所以更关注召回率。更关注真实情况能被看清多少。

P精准率/查准率:\frac{TP}{TP+FP}

预测为正例的例子里,预测正确的概率。比如做判断题,希望把找出来的正例尽可能正确,更关注精准率。更关注预测正例对了多少。

二、PR曲线和ROC曲线

PR曲线

横轴为R召回率,纵轴为P精准率。完全聚焦于正例。

ROC曲线:

横轴为假正率\frac{FP}{FP+TN}(真负例里面预测错误,即预测为正例)。纵轴是真正率/召回率/查全率\frac{TP}{TP+FN}(真正例里预测对的)。

预测为正例的阈值概率由1逐渐减小,可以画出一个模型的ROC曲线,曲线右下角的面积为AUC,AUC的面积越大越好。AUC的取值范围在0.5和1之间。AUC越接近1.0,检测方法真实性越高;等于0.5时,则真实性最低,无应用价值。

三、类别不均衡时

假设负样本:正样本=1000:10.在这种情况下,当阈值为最大时,真正率/查全率还是0,假正例还是0,查准率是1。随着我们不断调小阈值,预测为正例的数目逐渐增多。

PR曲线的纵轴,即查准率的分母,即预测为正例的数目会不断增大,而分子TP有上限,所以其会迅速下降,意味着模型性能迅速变差,可以体现类别不均衡对模型产生的影响。

而ROC曲线中横轴是在负例基础上计算,纵轴是在正例基础上计算,二者分母是不变的,分子在都在不断增加(和类别均衡时没有特别大的差异),没有很好地体现出样本类别分布不平衡对模型产生的影响,甚至导致对模型性能有错误的解释,因此此时不适用评估单个模型是好是坏。ROC曲线更适用于评估不同分类器的整体性能。

此文为个人笔记,如有错误欢迎指出。

参考文章机器学习--PR曲线, ROC曲线 - 老张哈哈哈 - 博客园

你可能感兴趣的:(人工智能,python)