趋近智
当你训练神经网络时,主要目标是使训练数据集上的损失函数最小。我们讨论过的优化算法,比如梯度下降及其变体,正是为此目的而设。然而,仅仅在模型训练过的数据上达到很低的损失,并不能确保在实际使用中表现良好。这便引出了机器学习模型开发中的一个常见难题:过拟合。
过拟合发生在模型对训练数据学得过好时。模型没有掌握数据中能泛化到新样本的基本规律和关联,而是开始记忆只存在于训练集中的具体细节和噪声。想象一下,你通过背诵练习题的准确答案来备考。你可能在练习测试中取得好成绩,但遇到考查相同原理的新问题时,你可能会遇到困难,因为你没有学习基本原理。过拟合模型的表现类似;它在已见过的数据上表现非常出色,但无法泛化到未见过的数据。
这导致模型出现低偏差(它紧密贴合训练数据)但高方差(它的预测结果随不同训练集剧烈变化,在新数据上表现不佳)的情况。相反的问题是欠拟合,它发生在模型过于简单,无法掌握数据的基本结构时,导致在训练集和验证集上表现均不理想(高偏差)。我们的目标通常是在这两种极端情况之间找到一个最佳点。
有几个因素可能导致过拟合:
最常见的方式是通过监测模型在训练过程中,在训练集和独立的验证集上的表现来发现过拟合。
如果模型学习良好且具有泛化能力,训练损失和验证损失都应该下降,相关指标也应该提升。然而,如果开始出现过拟合,你通常会观察到:
训练和验证表现之间的这种差异是过拟合的一个明确迹象。可视化训练和验证损失/指标随轮次的变化是一个标准做法。
典型的学习曲线显示训练损失持续下降,而验证损失在大约第25轮次后开始上升,表示过拟合的出现。
构建机器学习模型的最终目标是泛化能力:在新数据上做出准确预测的能力。过拟合是获得好的泛化能力的一个直接障碍。因此,理解、发现并缓解过拟合是任何深度学习实践者的重要技能。本章后续部分将介绍几种专门用于应对过拟合并提升模型泛化表现的方法。
这部分内容有帮助吗?
© 2026 ApX Machine Learning用心打造