关于如何处理火车与测试错误的比较,似乎存在相互矛盾的建议,尤其是当两者之间存在差距时。在我看来,似乎有两种流派。我想了解如何调和两者(或了解我在这里缺少的内容)。
思想#1:仅培训和测试集性能之间的差距并不表示过拟合
首先,(在这里也进行了讨论:训练和测试错误比较如何指示过度拟合?),仅火车和测试集之间的差异就不能表明过度拟合的想法。这与我在例如集成树方法方面的实践经验相吻合,在集成方法中,即使在基于交叉验证的超参数调整之后,训练误差和测试误差之间的差距仍会保持较大。但是(无论模型类型如何)只要您不会验证错误,就可以了。至少,这就是想法。
思想#2:当您看到培训和测试性能之间存在差距时:做一些可以防止过度拟合的事情
但是,您会从非常好的来源中看到一些建议,这些建议表明训练误差和测试误差之间的差距表明过度拟合。这是一个示例:Andrew Ng的“深度学习的要点”演讲(精彩演讲)https://www.youtube.com/watch?v=F1ka6a13S9I在大约48:00的时间戳上,他绘制了流程图表示“如果火车设置误差很小,而火车-dev设置误差很大,则应该添加正则化,获取更多数据或更改模型架构” ...这都是您可能要采取的应对过度拟合的措施。
带我去... :我在这里想念什么吗?这是特定于模型的经验法则吗(通常更简单的模型似乎在训练和测试之间的差距较小)?还是仅仅存在两种不同的思想流派?