点击上方“”,选择加"
重磅干货,第一时间送达
目录:
(1)ROC曲线的由来
(2)什么是ROC曲线
(3)ROC曲线的意义
(4)AUC面积的由来
(5)什么是AUC面积
(6)AUC面积的意义
(7)讨论:能否在多分类问题下使用ROC曲线
许多学习器为测试样本产生实值或概率预测,然后将预测值与分类阈值进行比较。如果大于阈值,则分为正类,否则为反类。例如,神经网络通常预测每个测试样本[00.0,1.0]之间的实值,然后将该值与阈值0.比较,大于0.5则判为正例,否则为反例。该阈值的设置直接决定了学习器的泛化能力。
在不同的应用任务中,我们可以根据任务需要使用不同的阈值。例如,如果我们更关注检查率,我们可以设置更大的阈值,使分类器的预测结果更确定;如果我们更关注检查率,我们可以设置更小的阈值,让分类器预测更多的例子。因此,阈值设置的质量反映了学习器在不同任务下的泛化性能。为了描述图像的变化,在此介绍ROC曲线,ROC曲线是从阈值选择的角度研究学习器泛化性能的有力工具。
ROC全称是“
ROC曲线的纵轴是
显示ROC曲线图称为曲线图ROC图。图1给出了一个示意图。显然,对角线对应于随机猜测模型,点(0,1)对应于理想模型,将所有正例预测为真实例,所有反例预测为真实反例。
图1:ROC曲线与AUC面积
在现实任务中,通常使用有限的测试样本来绘制ROC此时只能获得有限的坐标对(真实例率、假正例率),图1中不能产生光滑ROC曲线只能绘制图2所示的近似ROC曲线。绘制过程非常简单:给出一个例子和一个反例,根据学习器的预测结果对样本进行排序,然后将分类阈值设置为最大值,即将所有样本预测为反例。此时,真实例率和假例率为0,并在坐标(0、0)处标记一个点。然后,将分类阈值设置为每个样本的预测值,即将每个样本分为例子。设置前一个标记点的坐标为,如果当前为真实例,则相应标记点的坐标为;如果当前为假例,则相应标记点的坐标为,然后用线段连接相邻点。
图2:基于有限样例绘制的ROC曲线与AUC面积
通过图表可以观察和分析学习器的准确性,并用肉眼判断该方法简单、直观。ROC曲线将真实例率和假正例率与图表相结合,能准确反映学习器真实例率与假正例率的关系,是检测准确性的综合代表。
ROC曲线阈值不固定,允许中间状态的存在,有利于用户权衡漏诊和误诊的影响,选择更多阈值作为诊断参考值。
如果两条ROC曲线没有相交,我们可以根据哪条曲线最靠近左上角哪条曲线代表的学习器性能就最好。但是,实际任务中,情况很复杂,如果两条ROC曲线交叉时,很难普遍判断谁优谁劣。在许多实际应用中,我们往往希望将学习器的性能分为不同的层次。在这里介绍AUC面积。
比较学习器时,如果是学习器ROC曲线被另一个学习器的曲线完全“包住”,则可断言后者的性能优于前者;若两个学习器的ROC曲线交叉时,很难普遍判断哪个更好,哪个更差。此时,如果必须进行比较,更合理的判断依据是比较
AUC是衡量二分类模型优劣的评价指标,
看这里,是不是很疑惑,根据AUC定义和计算方法算方法与预测正例排在负例前的概率联系起来?如果我们理解定义和计算方法AUC其实含义很难。AUC和Mann-WhitneyU test(曼-慧特尼U检验)密切相关。从Mann-Whitney U statistic从角度解释,AUC即从所有正样本中随机选择样本,从所有负样本中随机选择样本,然后根据学习器预测两个随机样本,将正样本预测为例,负样本预测为例,>概率等于AUC。
另外值得注意的是,AUC该计算方法还考虑了学习器对例子和负例的分类能力,在样本不平衡的情况下,仍能对分类器进行合理的评价。AUC样本类别是否平衡并不敏感,通常使用不平衡样本AUC评估学习器性能的一个原因。例如,在癌症预测场景中,假设没有癌症样本为例,癌症样本为负,负比例很小(约0.1%),如果使用精度评估,将所有样本预测为例,即可获得99.准确率9%。但如果使用AUC,以所有样本预测为例,TPR为1,FPR为1。在这种情况下,学习器AUC值将等于0.5.成功避免了样平衡造成的问题。
最后,我们正在讨论:
我的理解:ROC在多分类中使用曲线是没有意义的。只有在二分类中Positive和Negative适用于同等重要的时间ROC曲线评价。如果确实需要用于多分类问题ROC曲线可以转化为多个一对多问题。也就是说,把其中一个作为例子,其余的作为负例,画多个ROC曲线。
开始向外开放。
下载1:OpenCV-Contrib中文版教程扩展模块 在「小白学视觉」微信官方账号后台回复:扩展模块中文教程,下载全网第一份OpenCV中文版扩展模块教程涵盖扩展模块安装SFM算法、立体视觉、目标跟踪、生物视觉、超分辨率处理等20多章。 下载2:Python视觉实战项目52讲 在「小白学视觉」微信官方账号后台回复:Python可下载图像分割、口罩检测、车道线检测、车辆计数、添加眼线、车牌识别、字符识别、情感检测、文本内容提取、面部识别等31个视觉实践项目,帮助快速学校计算机视觉。 下载3:OpenCV实战项目20讲 在「小白学视觉」微信官方账号后台回复:OpenCV20个实战项目可以下载20个基于OpenCV实现20个实战项目OpenCV学习进阶。 交流群 欢迎加入微信官方账号读者群与同行交流。SLAM、三维视觉、传感器、自动驾驶、摄影计算、检测、分割、识别、医学图像、GAN、算法竞赛等微信群(以后会逐渐细分),请扫描以下微信号加群,备注:昵称 学校/公司 研究方向,如: &nsp;上海交大 + 视觉SLAM“。请按照格式备注,否则不予通过。添加成功后会根据研究方向邀请进入相关微信群。请勿在群内发送广告,否则会请出群,谢谢理解~