在实际的数据处理场景中,常常会遇到数据的特征数比样本数多的情况,此时矩阵并非列满秩矩阵,那么公式就是不可逆矩阵,这种情况下便无法直接使用正规方程求解回归系数。为突破这一困境,研究人员对普通线性回归的最小二乘法进行了优化,由此诞生了岭回归算法。
简单来讲,岭回归的核心思路是在矩阵公式加上一个λI(其中,λ 为正则化系数或惩罚系数,I 为单位矩阵),这一操作使得矩阵变为非奇异矩阵,进而能够对
求逆,成功解决了回归系数的求解难题。
范数(Norm)是对距离概念的一种强化。简单理解,范数可以看作是一种特殊的距离度量方式。
对于一个向量,其范数的计算方式会根据不同的定义而有所区别。以常见的 L1 范数和 L2 范数为例。
岭回归的损失函数中包含 L2 正则化项,其中 λ 作为正则化系数或惩罚系数,对模型的复杂度起到关键的调节作用。
在求解过程中,需要对损失函数关于回归系数求偏导数。
当公式偏导数为零时,意味着此时模型的误差达到最小,预测结果的概率最大。
最终的求解过程涉及到单位矩阵,单位矩阵公式本身是满秩矩阵,与 λ 相乘后依然保持满秩特性,这为回归系数的准确求解奠定了坚实基础。
import numpy as np
defridge(X, y, lambdas=0.1):
return np.linalg.inv(X.T.dot(X) + lambdas * np.eye(X.shape[1])).dot(X.T).dot(y)
# 示例数据
X = np.array([[1, 2], [3, 4], [5, 6]])
y = np.array([7, 8, 9])
# 调用 ridge 函数
coefficients = ridge(X, y, lambdas=0.1)
print("岭回归系数:", coefficients)
返回搜狐,查看更多