岭回归算法的原理和代码实战
前言
学过吴恩达老师的机器学习入门课程都应该知道,在逻辑回归那一讲,吴老师提到了使用正则化来防止逻辑回归模型过拟合。而岭回归在这里的作用是一样的,同样也是防止模型过拟合。这两者的区别在于,同样在使用差平方作为所损失值后,前者使用梯度下降法进行参数优化,而后者使用最小二乘法计算参数。
岭回归原理
1. 前情回顾
前面咱们写过一篇博客,主要说的是使用最小二乘法解决一般线性回归问题,如果大家没有看过,请看一下。线性回归算法拟合数据原理分析以及源代码解析
不想看没关系,咱们在这里把重要推导公式再写一遍:
直线方程:

损失值函数:

向量书写:

式子展开:

求导:

令导数为零,求出α:

2. 岭回归公式推导
看完一般线性回归推导式后,我们对上面的式子稍微做一些改变。
首先我们在损失函数上添加惩罚项,与文首咱们说的正则化项基本一致。

对于λ,其值越大,对整个损失函数的惩罚就越大,换句话意思就是λ值越大,对α参数的变化就更加敏感。我们假设λ为10的时候,α²有0.1的变化,整理就会产生1的变化。如果λ为10000,α²有0.1的变化,整体就有1000的变化。
接着我们把公式进行向量化:

我们对其进行求导:

我们令其导数为零,可以求出来α,

好了,到这里我们就得出来这个参数α了,其中I是常向量E。
α新式子另一个优势

我们知道这个式子里面X代表数据。
如果我们数据的属性要大于数据量,那么这个X矩阵则是奇异矩阵(

这篇博客详细介绍了岭回归算法的原理,包括损失函数的惩罚项如何防止过拟合,以及在矩阵奇异时避免不可逆的问题。还提供了Python代码实战,通过交叉验证选择合适的λ,并分析了λ变化对模型拟合的影响。
最低0.47元/天 解锁文章
653

被折叠的 条评论
为什么被折叠?



