从0开始学习机器学习--Day21--算法的评估标准

准确率和召回率(precision and recall)

在上一章我们提到了在每次运行算法时通过返回一个实数值来判断算法的好坏,但是我们该如何构建这个实数的计算公式呢,毕竟这关乎于我们对算法的判断,不能过于夸大或贬低。有一个典型的会被影响的很大例子叫做偏斜类问题。

假如我们在一个机器学习算法的验证集中得到的错误率是1%,而另一个算法中的错误率是0.5%,那么是不是意味着第二个算法肯定比第一个好呢。实际上,假如我们的训练集中正样本和负样本的比例很极端,我们并不能武断地直接用预测正确率来判断算法好坏。就像我们刚刚说的,第二个算法的逻辑很简单,他总是预测结果是0,即负样本,那么在一个正负样本比例很极端的训练集中,后者有着天然的优势,所以单纯靠预测正确率来判断并不能检验算法的好坏,我们把这种样本集中一类比另一类样本多很多的问题称为偏斜类问题。

在遇到偏斜类问题时,我们一般会用叫做查准率和召回率的数据来判断算法的好坏。 ,,两者都是越高越好,前者代表预测为真的准确率,后者代表预测真数据的效率。

但并不是所有的问题都要用到这两个度量标准,事实上这取决于问题的条件限制。例如,在癌症分类问题中,我们会将概率从0.5改为0.7,即当我们认为该病人有大于等于70%概率得癌症的时候才下判断,毕竟这是一个听起来很恐怖的事情,而在这个时候我们的查准率也会随我们对标准放宽而提高;但如果我们的目的是想要尽量避免漏掉癌症病人,不想要错过最佳的治疗窗口期,那么这个时候就会将概率改为0.3,放低界限,那么类似的我们的召回率就会升高,准确率就会降低。

根据所选概率变化的准确率和召回率

如图,我们可以看到一个横轴为召回率,纵轴为准确率的图像,线上的点代表不同的概率。这就像是一个滑动变阻器,按照不同的环境,通过移动中间的点来选取合适的值。

但仅仅是这样似乎还不够能帮我们判断,为了能考虑到偏斜类问题,我们提出了一个参考值,假设准确率为,召回率为,我们用来判断,这能避免我们忽略召回率的问题。

视频参考:https://www.bilibili.com/video/BV1By4y1J7A5?spm_id_from=333.788.player.switch&vd_source=867b8ecbd62561f6cb9b4a83a368f691&p=68

相关推荐
limuyang24 小时前
我在 2核2G 云主机上跑 OpenViking:一次关于云主机、模型选型与长期成本的真实复盘
人工智能·开源·ai编程
Shulex5 小时前
跨境电商 AI Agent 核心架构解析:从只读问答到自主执行的工程落地
人工智能·架构·智能客服·跨境电商
Java后端的Ai之路5 小时前
CAS并发控制-从CPU指令到企业级乐观锁
vue.js·人工智能·python·cas·乐观锁
情 九5 小时前
MCP 实战 06:把 HTTP 接口接成工具,让 AI 帮你查数据
人工智能·网络协议·http·mcp
码农小旋风6 小时前
Ray分布式计算引擎介绍
人工智能·架构
火山引擎和TA的超级拍档们6 小时前
产品情报局 08 | AI 内容助手:全网热点驱动,一站式打通内容生产全链路
人工智能
Binovate缤江数智6 小时前
水泵远程开关之后,还需要管什么?数智开关在无人值守泵站中的监测、保护与能耗分析
人工智能·物联网
素男6 小时前
两个月不是六十天
人工智能·agent·self-becoming·ai长期记忆·ai自我介绍
byte轻骑兵6 小时前
【LMP】规范精讲[10]: 语音专线开线记——SCO 固定占座与 eSCO 限时重传
人工智能·人机交互·lmp·蓝牙链路管理·蓝牙外设