岭回归是一种改良的最小二乘估计法,它通过引入L2范数惩罚项来处理多重共线性问题,并提高模型的稳定性和泛化能力。
在机器学习和统计学中,回归分析是研究变量间关系的重要方法。当自变量之间存在高度相关性时,普通最小二乘法可能导致系数估计值不稳定,影响模型的泛化能力。为了解决这个问题,岭回归被提出。它在最小二乘法的基础上,对系数向量添加了一个L2范数惩罚项,这个惩罚项等于所有回归系数平方和的λ倍(λ为惩罚系数)。这样做的目的是约束模型的复杂度,避免过拟合,同时保持模型的解释力。
🏘️🏘️个人主页:以山河作礼。
🎖️🎖️:Python领域新星创作者,CSDN实力新星认证,CSDN内容合伙人,阿里云社区专家博主,新星计划导师,在职数据分析师。
💕💕悲索之人烈焰加身,堕落者不可饶恕。永恒燃烧的羽翼,带我脱离凡间的沉沦。
类型 | 专栏 |
---|---|
Python基础 | Python基础入门—详解版 |
Python进阶 | Python基础入门—模块版 |
Python高级 | Python网络爬虫从入门到精通🔥🔥🔥 |
Web全栈开发 | Django基础入门 |
Web全栈开发 | HTML与CSS基础入门 |
Web全栈开发 | JavaScript基础入门 |
Python数据分析 | Python数据分析项目🔥🔥 |
机器学习 | 机器学习算法🔥🔥 |
人工智能 | 人工智能 |
岭回归是一种改良的最小二乘估计法,它通过引入L2范数惩罚项来处理多重共线性问题,并提高模型的稳定性和泛化能力。
在机器学习和统计学中,回归分析是研究变量间关系的重要方法。当自变量之间存在高度相关性时,普通最小二乘法可能导致系数估计值不稳定,影响模型的泛化能力。为了解决这个问题,岭回归被提出。它在最小二乘法的基础上,对系数向量添加了一个L2范数惩罚项,这个惩罚项等于所有回归系数平方和的λ倍(λ为惩罚系数)。这样做的目的是约束模型的复杂度,避免过拟合,同时保持模型的解释力。
普通线性回归采用最小二乘法,损失函数为误差平方和,使其最小化,可以使用正规方程求回归系数,但是,必须保证 是一个可逆的矩阵。
import numpy as np
def ridge(X, y, lambdas=0.1):
"""
岭回归
args:
X - 训练数据集
y - 目标标签值
lambdas - 惩罚项系数
return:
w - 权重系数
"""
return np.linalg.inv(X.T.dot(X) + lambdas * np.eye(X.shape[1])).dot(X.T).dot(y)
from sklearn.linear_model import Ridge
# 初始化岭回归器
reg = Ridge(alpha=0.1, fit_intercept=False)
# 拟合线性模型
reg.fit(X, y)
# 权重系数
w = reg.coef_