设置开发和测试集
- 开发集和测试集的定义
- 开发集和测试集应该服从同一分布
- 开发集和测试集应该有多大?
- 使用单值评估指标进行优化
- 优化指标和满意度指标
- 通过开发集和度量指标加速迭代
- 何时修改开发集、测试集和指标
- 小结:建立开发集和测试集
基本误差分析
- 快速构建并迭代你的第一个系统
- 误差分析:根据开发集样本评估想法
- 在误差分析时并行评估多个想法
- 清洗误标注的开发集和测试集样本
- 将大型开发集拆分为两个子集,专注其一
- Eyeball 和 Blackbox 开发集该设置多大?
- 小结:基础误差分析
偏差和方差
学习曲线
与人类水平的表现相比
不同发行版的培训和测试
调试推理算法
端到端学习
按零件进行误差分析
总结
文章来源于网络收集而来,版权归原创者所有,如有侵权请及时联系!
处理偏差和方差
下面是处理偏差和方差问题最简单的形式:
- 如果具有较高的可避免偏差,那么加大模型的规模(例如通过添加层/神经元数量来增加神经网络的大小)。
- 如果具有较高的方差,那么增加训练集的数据量。
如果你可以加大神经网络的规模且无限制地增加训练集数据,那么许多机器学习问题都可以取得很好的效果。
实际上,不断加大网络的规模使你终将遇到算力问题,因为训练一个大型模型需要很多时间。另外,你也可能会耗尽获取更多训练数据的能力。(即使在网上,猫图片的数量也是有限的)
不同的模型架构(例如不同的神经网络架构)对于你的问题将有不同的偏差/方差值。近期,不少深度学习研究已经开发出很多新的模型架构。所以,如果你在使用神经网络,学术文献可能会是一个很好的灵感来源,在 Github 上也有许多不错的开源实现。但尝试新架构的结果要比简单地加大模型规模或添加数据的形式更难以预测。
加大模型的规模通常可以减少偏差,但也可能会增加方差和过拟合的风险。然而,这种过拟合风险通常只在你不使用正则化技术的时候出现。如果你的算法含有一个精心设计的正则化方法,通常可以安全地加大模型的规模,而不用担心增加过拟合风险。
假设你正在应用深度学习方法,使用了 L2 正则化和 dropout 技术,并且设置了在开发集上表现最好的正则化参数。此时你加大模型规模,算法的表现往往会保持不变或提升;它不太可能明显地变差。这种情况下,不使用更大模型的唯一原因就是这将使得计算代价变大。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论