设置开发和测试集
- 开发集和测试集的定义
- 开发集和测试集应该服从同一分布
- 开发集和测试集应该有多大?
- 使用单值评估指标进行优化
- 优化指标和满意度指标
- 通过开发集和度量指标加速迭代
- 何时修改开发集、测试集和指标
- 小结:建立开发集和测试集
基本误差分析
- 快速构建并迭代你的第一个系统
- 误差分析:根据开发集样本评估想法
- 在误差分析时并行评估多个想法
- 清洗误标注的开发集和测试集样本
- 将大型开发集拆分为两个子集,专注其一
- Eyeball 和 Blackbox 开发集该设置多大?
- 小结:基础误差分析
偏差和方差
学习曲线
与人类水平的表现相比
不同发行版的培训和测试
调试推理算法
端到端学习
按零件进行误差分析
总结
在误差分析时并行评估多个想法
对于改进猫检测器,你的团队有一些想法:
- 修正算法将狗误分类为猫的问题。
- 修正算法将大型猫科动物(比如狮子、黑豹等等,下面用大猫代指)误分类为家猫的问题。
- 改善系统在模糊图像上的表现。
- ...
上述的想法都可以以并行的形式进行评估。通常我会创建一个电子表格,一边查看被误分类的 100 个开发集样本一边完善表格内容,同时我也会留下一些能够帮助我记住特定样本的备注。为了说明这一过程,如下所示是一个仅含四个样本的小型开发集的电子表格:
图像 | 狗 | 大猫 | 模糊 | 备注 |
---|---|---|---|---|
1 | √ | 不常见的美国比特犬 | ||
2 | √ | |||
3 | √ | √ | 狮子;雨天在动物园拍摄的图片 | |
4 | √ | 树木后的美洲豹 | ||
占全体比例 | 25% | 50% | 50% |
你会发现表格中图片 3 的"大猫"与“模糊”列都被勾选了,另外由于一个样本可能与多个类别都有关联,所以表格底部的百分比加起来可能不是 100 %.
虽然你可能事先规定了一些类别(狗,大猫,模糊)并进行了手动的分类,但在浏览图像时你可能会受到启发并发现一些新的类别。比如你在浏览一些图片时发现,经过 Instagram 滤镜处理过的图片在识别时对结果造成了误差,你就可以在电子表格中加入一个新的 “Instagram” 列。手动查看误分类样本,并思考人类如何/是否能正确地分类这些样本,这将帮助你发现新的类别以及解决方案。
探寻方法去改进对应误差的类别是很有帮助的。举个例子,如果你能“撤销” Instagram 的滤镜效果并恢复到原始图片,那么 Instagram 分类就能发挥作用。这不代表你只能局限于那些已有的改进途径的类别;这个过程主要是为了帮助你对一些潜在的,有改进效果的方向培养一定的敏感度。
假设你已检查了 100 个开发集的误分类样本,并得到了下面的表格:
图像 | 狗 | 大猫 | 模糊 | 备注 |
---|---|---|---|---|
1 | √ | 不常见的美国比特犬 | ||
2 | √ | |||
3 | √ | √ | 狮子;雨天在动物园拍摄的图片 | |
4 | √ | 树木后的美洲豹 | ||
... | ... | ... | ... | |
占全体比例 | 8% | 43% | 61% |
现在你应该可以判断出,对于解决狗的误分类问题项目最多可以改进 8% 的误差,处理大猫和模糊类则可以改进更多。因此你将更有可能挑选后两者之一进行处理。如果你的团队有足够的人力并行处理多个方向,则可以要求一部分成员处理大猫类别,另一部分成员处理模糊类别。
误差分析并不会产生一个明确的数学公式来告诉你什么任务的优先级最高。你还需要考虑在不同类别上的预期进展以及解决每个类别所需的工作量。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论