- 从能反映你期望未来获得并工作好的数据分布中选择开发集和测试集。这个分布可能和你训练数据的分布是不一样。
- 如果可能的话,选择来自相同分布的开发集和测试集。
- 为你的团队选择一个单值评估指标进行优化。如果你关心多个目标,考虑把它们合并到一个公式中(例如平均多个错误指标),或设定满足性指标和优化指标。
- 机器学习是一个高度迭代的过程:在发现你满意的方法之前你可能需要尝试很多的想法。
- 通过开发/测试集和单值评估指标可以帮助你快速评估算法,从而实现开发的快速迭代。
- 当开发一个全新的应用时,尝试快速建立开发/测试集和评估指标,最好在一周之内。当然,在成熟应用上花费更长的时间是可以接受的。
- 当你拥有大量数据时,依据70%:30%的比例划分训练/测试集这一经验性的方法不太适用;开发/测试集的数据比例可以远小于30%。
- 你的开发集应该足够大,以检测出算法准确性有意义的改变,但没必要更大。你的测试集应该足够大,大到能对你的系统整体性能有一个可信的评估。
- 如果你的开发集和评估指标不再使你的团队在正确方向上前进,快速改变它们:(i) 如果你过拟合了开发集,则获得更多的开发集数据。(ii) 如果你所关心的实际分布和开发/测试集的分布不同,那么去获得新的开发/测试集数据。(iii) 如果你的评估指标不再能衡量对你来说最重要的东西,改变评估指标。
This repository was archived by the owner on Aug 16, 2022. It is now read-only.