机器学习01-过拟合和Regularization(正则化)

东阳的学习记录,坚持就是胜利!

过拟合

首先看一个正常的拟合。y = b + w * x
机器学习01-过拟合和Regularization(正则化)
更改模型, 使用二次回归, y=b+w1x+w2x2y = b + w _1 ∙ x + w 2 ∙ x^ 2
机器学习01-过拟合和Regularization(正则化)
逐渐增大, y=b+w1x+w2(x2+w3x3+w4x4+w5x5y = b + w _1 ∙ x + w_ 2 ∙ (x ^ 2+ w _3 ∙x^3 + w 4 ∙ x^ 4 + w 5 ∙ x^5
机器学习01-过拟合和Regularization(正则化)

不同模型在训练集和测试集上的表现

可以看到, 当改变回归模型的阶数时,在训练集上的变现编号,但是在测试集上的表现先变好,后变差。称这种现象叫做过拟合。
机器学习01-过拟合和Regularization(正则化)

过拟合的理解

之所以存在过拟合的可能,是因为选择模型的标准和评价模型的标准是不一致的。举例来说,选择模型时往往是选取在训练数据上表现最好的模型;但评价模型时则是观察模型在训练过程中不可见数据上的表现。当模型尝试“记住”训练数据而非从训练数据中学习规律时,就可能发生过拟合。一般来说,当参数的自由度或模型结构的复杂度超过数据所包含信息内容时,拟合后的模型可能使用任意多的参数,这会降低或破坏模型泛化的能力。

如图中所示,过拟合虽然包含了所需要的内容,但是也包含了一些无用的,在原来数据中所不能体现出来的东西。不够精确。
机器学习01-过拟合和Regularization(正则化)

如何防止过拟合

正则化

我们在损失函数中,添加上如下图红色框的内容。这个行为就是正则化。正则化的目的是找到一个更平滑的曲线来拟合数据,这样更不容易受到噪声的影响。(正则化不用管bias)
机器学习01-过拟合和Regularization(正则化)

正则化的理解

加入正则化后,我们可以得到一个参数值(wiw_i)更加接近于0的训练结果,为什么接近于0的参数可以防止过拟合呢。
wiw_i接近于0,表示该函数曲线更平滑,更不容易受到noise的影响,这样就能够保证一个比较好的结果。

加入正则化之后的模型表现

机器学习01-过拟合和Regularization(正则化)

  • 在一定范围内增大λ,可以增强模型的表现。
  • 但是λ不能过大,这样会使得曲线过于平滑,而导致欠拟合。