在线性模型之中,除了线性回归之外,最知名的就是岭回归与Lasso了。这两个算法非常神秘,他们的原理和应用都不像其他算法那样高调,学习资料料也很少。这可能是因为这两个算法不是为了提升模型表现,而是为了修复漏洞而设计的(实际上,使用岭回归或者Lasso,模型的效果往往会下降一些,因为删除了一小部分信息),因此在结果为上的机器学习领域颇有些被冷落的意味。本文介绍一下岭回归。
岭回归,又称为吉洪诺夫正则化(Tikhonov regularization)。通常来说,大部分的机器学习教材会使用代数的形式来展现岭回归的原理,这个原理和线性回归非常相似,都是将求解的过程转化为一个带条件的最优化问题,然后用最小二乘法求解。然而,岭回归可以做到的事其实可以用矩阵非常简单地表达出来。
岭回归在多元线性回归的损失函数上加上了正则项,表达为系数的L2范式(即系数的平方项)乘以正则化系数 α \alpha α。其他教材中的代数推导,正则化系数会写作 λ \lambda λ,用以和Lasso区别,不过在sklearn中由于是两个不同的算法,因此正则项系数都使用 α \alpha α。岭回归的损失函数的完整表达式写作:
m i n ω ∣ ∣ X ω − y ∣ ∣ 2 2 + α ∣ ∣ ω ∣ ∣ 2 2 \large\boldsymbol{\mathop{min}\limits_\omega||X\omega-y||_2\,^2+\alpha||\omega||_2\,^2} ωmin∣∣Xω−y∣∣22+α∣∣ω∣∣22
这个操作看起来简单,其实带来了巨大的变化。在线性回归中,通过在损失函数上对 ω \omega ω求导来求解极值,这里虽然加上了正则项,依然使用最小二乘法来求解。假设特征矩阵结构为(m,n),系数 ω \omega ω的结构是(1,n),则可以有:
∂ ( R S S + α ∣ ∣ ω ∣ ∣ 2 2 ) ∂ ω = ∂ ( ∣ ∣ y − X ω ∣ ∣ 2 2 + α ∣ ∣ ω ∣ ∣ 2 2 ) ∂ ω \large\boldsymbol{\frac{\partial(RSS+\alpha||\omega||_2\,^2)}{\partial{\omega}}=\frac{\partial(||y-X\omega||_2\,^2+\alpha||\omega||_2\,^2)}{\partial{\omega}}} ∂ω∂(RSS+
机器学习:线性模型-多重共线性问题的解决-岭回归
最新推荐文章于 2024-08-05 20:22:54 发布