模型的正则化
Why & What 正则化
首先,从使用正则化解决了一个什么问题的角度来看:正则化是为了防止过拟合, 进而增强泛化能力。
正则化项
正则化其实就是在原始的损失函数中添加一个正则化项,用于约束
w
w
w 的取值空间。
正则化项一般都是单调递增函数,函数模型越复杂,正则化值越大。
这样设置风险函数,就可以很好地保证在模型的识别上去的情况下,模型的复杂度不会太大。进而保证了模型的泛化能力,防止过拟合。
正则化参数
正则化项中的标量
λ
\lambda
λ 一般被称之为正则化参数:
λ
=
σ
2
σ
w
2
\lambda=\frac{\sigma^2}{\sigma_w^2}
λ=σw2σ2
其中
σ
w
2
\sigma_w^2
σw2 表示的是一种先验,即开始时对数据集样本的信心程度。
σ
w
2
\sigma_w^2
σw2 越大,表示数据集合分布越均匀,训练出来的模型越能接近真实模型。
范数
一般将范数作为正则化项的另外一部分,如下:
蓝色的圆圈表示没有经过限制的损失函数在寻找最小值过程中, w w w
的不断迭代(随最小二乘法,最终目的还是使损失函数最小)变化情况,表示的方法是等高线,z轴的值就是 E ( w ) E(w) E(w) 。 w ∗ w^∗ w∗
为最小值取到的点
可以直观的理解为(帮助理解正则化),我们的目标函数(误差函数)就是求蓝圈+红圈的和的最小值(回想等高线的概念并参照3式),而这个值在很多情况下是两个曲面相交的地方
- 可以看到二次正则项的优势,处处可导,方便计算,限制模型的复杂度(因为这样可以限制 w 的数量大小)。
- 一次正则项有拐点,不是处处可微。但是可以很好地降低维度,防止过拟合(因为 w 1 = 0 w_1=0 w1=0,很好的简化了模型的规模)。