设置开发和测试集
- 开发集和测试集的定义
- 开发集和测试集应该服从同一分布
- 开发集和测试集应该有多大?
- 使用单值评估指标进行优化
- 优化指标和满意度指标
- 通过开发集和度量指标加速迭代
- 何时修改开发集、测试集和指标
- 小结:建立开发集和测试集
基本误差分析
- 快速构建并迭代你的第一个系统
- 误差分析:根据开发集样本评估想法
- 在误差分析时并行评估多个想法
- 清洗误标注的开发集和测试集样本
- 将大型开发集拆分为两个子集,专注其一
- Eyeball 和 Blackbox 开发集该设置多大?
- 小结:基础误差分析
偏差和方差
学习曲线
与人类水平的表现相比
不同发行版的培训和测试
调试推理算法
端到端学习
按零件进行误差分析
总结
文章来源于网络收集而来,版权归原创者所有,如有侵权请及时联系!
为何与人类表现水平进行对比
许多机器学习系统的设计目的是想要自动化一些人类可以处理得很好的事情,可举的例子有图像识别、语音识别以及垃圾邮件分类等等。学习算法进步如此之快,有许多类似任务的处理已经超过了人类的表现水平。
此外,有许多理由表明在处理人类擅长的任务时,构建一个机器学习系统会更加简单:
- 易于从人为标签中获取数据。举个例子,由于人类可以很好地识别图片中的猫,因此让人们为你的学习算法提供高精度的带标签数据也很方便。
- 基于人类直觉进行误差分析。假设某个语音识别系统的表现要低于人类的表现水平。比如错误地将音频片段 “This recipe calls for a pear of apples” 中的 “pair” 认为是 “pear”. 此时你可以利用人类的直觉来尝试理解,普通人会利用何种信息来获取正确的转录内容,并且试着修改你的学习算法,使它在相同的知识点上有着更好的表现。
- 使用人类表现水平来估计最优错误率,并设置可达到的“期望错误率”。 假设你的算法在某个任务上达到了 10% 的误差,但普通人所能达到的误差是 2% . 由此我们就可以知道最优错误率是 2% 或更低,这也表明可避免偏差至少是 8% . 所以你应当尝试一下降低偏差的技术。更一般地说,有一个合理可实现的“期望错误率”可以帮助你去估计学习算法的可避免偏差。这反过来也帮你决定是否使用误差降低技术。
尽管第三点可能听起来不太重要,但我发现有一个合理且可实现的目标错误率有助于加快团队的进度。知道你的算法有很高的可避免偏差是非常有价值的,它将展开一个具有多个选项的菜单供你去尝试。
连人类都不擅长的任务也是存在的。比如向你推荐一本书,或者在某个网站上选择向用户展示的广告,或者对股票市场进行预测。如今计算机在此类任务上的表现已经远超过人类。对于这些应用,我们主要面临着下面的问题:
- 获取标签数据很难。 比如很难去获取用户数据库,并要求人工标记者使用“最优”的书籍标签对数据库进行注释,从而向用户推荐书籍。如果你正在负责一个书籍销售网站或者是 APP 的运营,你可以通过向用户展示书籍并查看他们的购买记录来获取数据。可当你没有这样一个网站时,就需要去找到一些更具创意的方法来获取数据了。
- 人类的直觉难以依靠。例如,几乎没有人能准确地预测股票市场。因此当我们的股票预测算法比随机猜测的表现还要差时,很难弄清楚要如何去改进它。
- 最优错误率和合理的期望错误率难以确定。假设你已经有了一个很好的图书推荐系统。如果没有人类水平作为参考,你怎么知道它还能改善多少呢?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论