码迷,mamicode.com
首页 > 编程语言 > 详细

python Ridge 回归(岭回归)的原理及应用

时间:2017-07-20 15:22:28      阅读:326      评论:0      收藏:0      [点我收藏+]

标签:alpha   from   line   用法   sklearn   应用   src   bsp   分析   

岭回归的原理:

首先要了解最小二乘法的回归原理

设有多重线性回归模型   y=Xβ+ε  ,参数β的最小二乘估计为
技术分享

当自变量间存在多重共线性,|XX|≈0时,设想|XX|给加上一个正常数矩阵(k>0)

那么|XX|+kI 接近奇异的程度就会比接近奇异的程度小得多。考虑到变量的量纲问题,

先要对数据标准化,标准化后的设计矩阵仍用X表示,定义称为的岭回归估计,其中,

k称为岭参数。由于假设X已经标准化,所以就是自变量样本相关阵。y可以标准化也可以未标准化,

如果y也经过标准化,那么计算的实际是标准化岭回归估计。技术分享(k)作为β的估计应比最小二乘估计技术分享稳定,当k=0时的岭回归估计就是普通的最小二乘估计.

因为岭参数k不是唯一确定的,所以得到的岭回归估计实际是回归参数的一个估计族。

 则岭回归的参数估计为

技术分享

python中岭回归的代码:

主要使用python中的 scikit-learn 模块

# 岭回归(Ridge 回归)
from sklearn import linear_model
X = [[0, 0], [1, 1], [2, 2]]
y = [0, 1, 2]
clf = linear_model.Ridge(alpha=0.1)  # 设置k值
clf.fit(X, y)  # 参数拟合
print(clf.coef_)  # 系数
print(clf.intercept_)  # 常量
print(clf.predict([[3, 3]]))  # 求预测值
print(clf.decision_function(X))  # 求预测,等同predict
print(clf.score(X, y))  # R^2,拟合优度
print(clf.get_params())  # 获取参数信息
print(clf.set_params(fit_intercept=False))  # 重新设置参数

 后期的详细分析应用可以自己看linear_model的用法



 

python Ridge 回归(岭回归)的原理及应用

标签:alpha   from   line   用法   sklearn   应用   src   bsp   分析   

原文地址:http://www.cnblogs.com/niuchen/p/7211084.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!