「机器学习速成」分类,评估指标(TP、FP、TN、FN),ROC曲线和AUC
https://www.toutiao.com/a6706449645901464078/
2019-06-25 20:49:47
大家好,今天我们学习【机器学习速成】之 分类,评估指标(TP、FP、TN、FN),ROC曲线和AUC。
本节介绍了如何使用逻辑回归来执行分类任务, 并探讨了如何评估分类模型的有效性。
我们 马上学三点 ,
- 逻辑回归用作分类:指定阈值
- 评估指标:准确率、精确率和召回率
- ROC曲线和曲线下面积(AUC)
大家可以点击下面的“ 了解更多 ”, 或搜索“ 马上学123 ”, 在线观看PPT讲义。
分类与回归: 指定阈值
我们在之前“逻辑回归”一节介绍了关于回归的内容, 逻辑回归是一种极其高效的概率计算机制, 会生成一个介于0到1之间的概率值:
- 您可以“原样”使用返回的概率,
- 也可以将返回的概率转换成二元值。
现在,我们可以将逻辑回归用作分类的基础, 具体方法是利用概率输出并为其应用固定阈值。
例如,如果邮件为垃圾邮件的概率超过0.8, 我们可能就会将其标记为垃圾邮件, 0.8就是分类阈值。
阈值取决于具体问题, 我们要根据具体问题对其进行调整。 在选择阈值时, 需要评估您将因犯错而承担多大的后果。 例如, 将非垃圾邮件误标记为垃圾邮件会非常糟糕,要少标。 但是雷达检测导弹信号,就必须宁可多虚警也不能漏掉。
评估指标:准确率
选定分类阈值之后, 如何评估相应模型的性能呢?
我们需要一些新指标, 评估分类效果的一种传统方式是使用准确率。 我们所说的准确率指的是正确结果数除以总数。 根本上讲,就是正确结果所占的百分比。 值得注意的是,虽然准确率是一种非常直观 且广泛使用的指标,但它也有一些重大缺陷。
准确率可能具有误导性
特别是, 如果问题中存在类别不平衡的情况, 那么准确率指标的效果就会大打折扣。
例如, 在100个肿瘤样本中,91个为良性,9个为恶性。 在91个良性肿瘤中, 某个模型将90个正确识别为良性。 准确率很好。 不过,在9个恶性肿瘤中, 该模型仅将1个正确识别为恶性。 这是多么可怕的结果! 9个恶性肿瘤中有8个未被诊断出来!
虽然91%的准确率可能乍一看还不错, 但如果另一个肿瘤分类器模型总是预测良性, 那么这个模型使用我们的样本进行预测 也会实现相同的准确率(100个中有91个预测正确)。 换言之,我们的模型 与那些没有预测能力来区分恶性肿瘤和良性肿瘤的模型差不多。 显然,准确率并不适用于这种情况。
真正例TP、假正例FP、假负例FN和真负例TN:
为了处理类别不平衡问题, 我们需要采用更精细的方法来观察, 模型如何预测正类别、负类别或不同类别。
我们可以考虑将这些不同类型的成功和失败结果 放入2x2混淆矩阵中, 其中包括真正例TP、假正例FP、假负例FN和真负例TN:
真正例TP、假正例FP、假负例FN和真负例TN
- 真正例是指模型将正类别样本正确地预测为正类别;
- 真负例是指模型将负类别样本正确地预测为负类别;
- 假正例是指模型将负类别样本错误地预测为正类别;
- 假负例是指模型将正类别样本错误地预测为负类别。
真正例和假正例,举例:狼来了
为了方便理解, 我们想想“狼来了”这则故事,这个小男孩是一个牧童:
真正例TP、假正例FP、假负例FN和真负例TN
- 如果狼来了,小男孩正确地指出来, 这就是真正例。 他看到了狼并说“狼来了”。 真正例对应的结果是小镇得救,这很好。
- 假正例则是小男孩说“狼来了”, 但其实并没有狼。 这就是假正例,会令所有人非常恼火。
- 假负例的后果可能更严重。 假负例对应的情形是, 狼来了而小男孩睡着了或没看到, 狼进入镇子并吃掉了所有的鸡。 这可真的太惨了。
- 真负例对应的情形是小男孩没喊“狼来了”, 狼也确实没出现,一切安好。
评估指标:精确率和召回率
我们可以将这些预期情况组合成几个不同的指标:
- 其中一个就是精确率, 也就是, 在小男孩说“狼来了”的情况中, 有多少次是对的? 他说“狼来了”的精确率如何?
- 另一方面,召回率指标则是指: 在所有试图进入村庄的狼中,我们发现了多少头?
值得注意的是, 这些指标往往处于此消彼长的状态:
- 如果您希望在召回率方面做得更好, 那么即使只是听到灌木丛中传出的一点点声响, 也要早些指出“狼来了”。 我们认为这种做法会降低分类阈值。
- 如果我们希望非常精确, 那么正确的做法是只在我们完全确定时才说“狼来了”, 我们认为这样会提高分类阈值。
这两个指标往往处于此消彼长的状态, 而在这两个方面都做好非常重要。 这也意味着, 每当有人告诉您精确率值是多少时, 您还需要问召回率值是多少, 然后才能评价模型的优劣。
ROC 曲线:真正例率 (TPR) 、假正例率 (FPR)
我们选择特定的分类阈值后, 精确率和召回率值便都可以确定。
但我们可能无法事先得知最合适的分类阈值, 而我们仍然想知道我们的模型质量如何。
合理的做法是尝试使用许多 不同的分类阈值来评估我们的模型。 事实上,我们有一个指标可衡量模型 在所有可能的分类阈值下的效果。 该指标称为ROC曲线,即接收者操作特征曲线。
ROC曲线具体概念是: 我们对每个可能的分类阈值进行评估, 并观察相应阈值下的真正例率和假正例率。
ROC 曲线:真正例率 (TPR) 、假正例率 (FPR)
- 横轴FP假正例率(误报率), 模型预测错误的狼来了占真实情况狼没有来的比例;
- 纵轴TP真正例率(召回率), 模型预测正确的狼来了占真实情况狼来了的比例;
ROC 曲线
ROC 曲线
ROC曲线用于绘制采用不同分类阈值时的TPR与FPR。 降低分类阈值会导致将更多样本归为正类别, 从而增加假正例和真正例的个数。
评估指标:曲线下面积
为了计算 ROC 曲线上的点, 我们可以使用不同的分类阈值多次评估逻辑回归模型, 但这样做效率非常低。 幸运的是, 有一种基于排序的高效算法可以为我们提供此类信息, 这种算法称为曲线下面积, 也称为AUC(Area Under Curve)。
曲线下面积
借助曲线下面积,我们可以有效解读概率。
举例解释一下: 如果我拿一个随机正分类样本, 然后再拿起一个随机负分类样本, 则模型正确地将较高分数分配给正分类样本 而非负分类样本的概率是多少? 结果表明, 这个概率正好等于ROC曲线下面积代表的概率值。 因此,如果我看到ROC曲线下面积的值是0.9, 那么这就是得出正确的配对比较结果的概率。
曲线下面积(AUC)对所有可能的分类阈值的效果 进行综合衡量。
AUC值是一个概率值, 当你随机挑选一个正样本以及负样本, 当前的分类算法根据计算得到的Score值 将这个正样本排在负样本前面的概率就是AUC值, AUC值越大, 当前分类算法越有可能将正样本排在负样本前面, 从而能够更好地分类。
所以,AUC曲线的物理意义为: 任取一对(正、负)样本, 正样本的置信度大于负样本的置信度的概率。
曲线下面积的取值范围为0-1:
- 预测结果 100% 错误的模型的曲线下面积为 0.0;
- 预测结果 100% 正确的模型的曲线下面积为 1.0;
- ROC曲线越靠近左上角,模型的准确性就越高;
- 如果两条ROC曲线发生了交叉, 可以比较ROC曲线下的面积,即AUC选模型;
总结:
- 逻辑回归用作分类,指定阈值,阈值取决于具体问题
- 评估指标:准确率(accuracy)、精确率(precision)、召回率(recall)
- ROC曲线对每个可能的分类阈值进行评估, 并观察相应阈值下的真正例率和假正例率。
- AUC曲线的物理意义为:任取一对(正、负)样本,正样本的置信度大于负样本的置信度的概率
这里讲了三点,关键词有哪几个?
提问,论文中一般使用那些评估指标?
「机器学习速成」分类,评估指标(TP、FP、TN、FN),ROC曲线和AUC相关推荐
- AUC值越大_「机器学习速成」分类,评估指标(TP、FP、TN、FN),ROC曲线和AUC
大家好,今天我们学习[机器学习速成]之 分类,评估指标(TP.FP.TN.FN),ROC曲线和AUC. 本节介绍了如何使用逻辑回归来执行分类任务, 并探讨了如何评估分类模型的有效性. 我们 马上学三点 ...
- 分类模型-评估指标(2):ROC曲线、 AUC值(ROC曲线下的面积)【只能用于二分类模型的评价】【不受类别数量不平衡的影响;不受阈值取值的影响】【AUC的计算方式:统计所有正负样本对中的正序对】
评价二值分类器的指标很多,比如precision.recall.F1 score.P-R曲线等.但这些指标或多或少只能反映模型在某一方面的性能.相比而言,ROC曲线则有很多优点,经常作为评估二值分类器 ...
- 【机器学习】--模型评估指标之混淆矩阵,ROC曲线和AUC面积
一.前述 怎么样对训练出来的模型进行评估是有一定指标的,本文就相关指标做一个总结. 二.具体 1.混淆矩阵 混淆矩阵如图: 第一个参数true,false是指预测的正确性. 第二个参数true,p ...
- 真阳假阳真阴假阴指标(TP,FP,TN,FN)精度Precision 准确率Accuracy 召回率Recall 总结
检测相关指标(TP,FP,TN,FN)总结表格 指标 定义 公式 备注 真阳性 (True Positive, TP) 预测为阳性,实际为阳性 - - 假阳性 (False Positive, FP) ...
- 正解TP/FP/TN/FN评价指标
问题 机器学习分类任务中常见的指标有TP/FP/TN/FN四种,初学者往往很难区分这四个概念.本文将采用简洁的方式,清晰的介绍四者之间的区别. 区别 四个 指标中,TP和TN是比较好理解的,FP和FN ...
- 模型评估与选择(中篇)-ROC曲线与AUC曲线
P-R曲线 以二分类问题为例进行说明.分类结果的混淆矩阵如下图所示. 假设,现在我们用某一算法h对样本进行二分类(划分为正例.反例).由于算法可能与理想方法存在误差,因此在划分结果中,划分为正例的那部 ...
- 「机器学习速成」数据预处理,特征工程,良好特征的特点
https://www.toutiao.com/a6703863693408469516/ 大家好,今天我们学习[机器学习速成]之 数据预处理,特征工程,良好特征的特点 我们 马上学三点 , 特征工程 ...
- 「机器学习速成」过拟合的风险和泛化
https://www.toutiao.com/a6702764208561340942/ 大家好,今天我们学习[机器学习速成]之过拟合的风险和泛化. 泛化是指模型很好地拟合以前未见过的新数据的能力. ...
- 「机器学习速成」训练神经网络:反向传播、梯度爆炸消失Dropout
https://www.toutiao.com/a6706075530187244045/ 2019-06-24 20:38:02 大家好,今天我们学习[机器学习速成]之 训练神经网络. 我们 马上学 ...
最新文章
- 万年历的设计c语言,万年历设计报告
- SQL server 专业词汇
- 清华计算机系上热搜!近 9 成优秀毕业生放弃留学,前 50 名 41 人留校深造......
- 2016年ADAS行业发展潜力及行业发展趋势分析【图】
- Java 日志缓存机制的实现--转载
- while((ch=getchar())!=EOFch != '\n');消除非法输入
- php注解rbac,PHP的RBAC权限详解
- 【PAT - 甲级1003】Emergency (25分)(Dijkstra,最短路条数,双权值最短路)
- win 二进制门安装mysql_MySQL5.7 windows二进制安装
- 了解JQuery TextArea的取值与赋值问题
- h5带mysql数据库的留言板_【mysql】用PHP写留言板,有回复功能,要写入数据库。...
- 初步了解Java内部类
- Java简单实现贪吃蛇经典小游戏(附源代码)
- 深度学习 —— 偏差与方差
- sql md5或shal加密
- 树莓派实现实时视频监控
- matlab中minigrid,[转载][转载]matlab画地图的工具:worldmap和m_map
- ImageIO类的使用
- 你没有见过的6个创意CSS链接悬停效果
- js获取指定字符后面的字符
热门文章
- 2021-03-12java性能调优三板斧
- 数据归一化 - MinMaxScaler()/MaxAbsScaler() - Python代码
- SELECT INTO 和 INSERT INTO SELECT 两种表复制语句
- java 将本地图片批量上传到oss服务
- 大模型技术实践路线图出炉,唐杰牵头,近百位智源、清华、北大、MILA等顶尖研究者联合推出...
- 销售 750000 册爆款「蟒蛇书」的新版抢先上市 | 9月书讯
- 烂片《信条》?有多少人假装看懂了?
- 《Adobe AIR权威指南》——《Flex 3权威指南》作者新作
- 损失函数约束类间不一致性
- 技术性图文还原那些腿长得能改变地球引力场的TB奇女子