正则化如何防止过拟合?

我不明白为什么在成本函数中加上lambda与theta平方和的乘积会减少数据集中的过拟合。能有人解释一下吗?


回答:

想象一下两个极端情况:

  1. 你不需要学习任何东西 ==> 你需要0个参数来学习(这是欠拟合的一个极端情况)。
  2. 你想记住你看到的所有东西(在训练集中) ==> 你需要大量的参数来记住所有东西(这是过拟合的一个极端情况)

真正的训练应该在这两个极端情况之间进行,以实现良好的泛化。良好的泛化有助于在未见过的测试数据上获得更现实的预测。

当你试图最小化成本函数时,你是在惩罚机器在训练集上的每个错误预测。为了克服这种惩罚,大多数情况下比达到真正的泛化更容易,机器会倾向于记住训练中的所有内容,这样它就能得到更低的损失,受到的惩罚也更少。当你提供一个复杂的网络时(具有大量的训练参数,也就是说当W很大时),这种情况很容易发生。

为了防止机器使用这种技巧,我们强迫机器降低成本,但同时我们也规定它不能使用非常大的一组参数。这是进行正则化的一种方式。

Related Posts

如何对SVC进行超参数调优?

已关闭。此问题需要更加聚焦。目前不接受回答。 想要改进…

如何在初始训练后向模型添加训练数据?

我想在我的scikit-learn模型已经训练完成后再…

使用Google Cloud Function并行运行带有不同用户参数的相同训练作业

我正在寻找一种方法来并行运行带有不同用户参数的相同训练…

加载Keras模型,TypeError: ‘module’ object is not callable

我已经在StackOverflow上搜索并阅读了文档,…

在计算KNN填补方法中特定列中NaN值的”距离平均值”时

当我从头开始实现KNN填补方法来处理缺失数据时,我遇到…

使用巨大的S3 CSV文件或直接从预处理的关系型或NoSQL数据库获取数据的机器学习训练/测试工作

已关闭。此问题需要更多细节或更清晰的说明。目前不接受回…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注