岭回归是一种专门用于共线性数据分析的有偏估计回归方法,实质上时改良的最小二乘估计法,通过放弃最小二乘法的无偏性(在反复抽样的情况下,样本均值的集合的期望等于总体均值),以损失部分信息、降低精度为代价获得回归系数更为符合实际、更可靠的回归方法,对共线性问题和病态数据的拟合要强于最小二乘法经,常用于多维问题与不适定问题(ill-posed problem)。
岭回归通过引入一个惩罚变量解决了普通最小二乘法的问题。岭回归相关系数是的惩罚残差平方和最小:

是收缩率,既控制模型复杂度的因子。

import numpy as np
import matplotlib.pyplot as plt
from sklearn import linear_model#创建一个希伯特矩阵(高度病态,任何一个元素的点发生变动,整个矩阵的行列式的值和逆矩阵都会发生巨大变化)
#这里的加法运算类似于矩阵相乘
X = 1. / (np.arange(1, 11) + np.arange(0, 10)[:, np.newaxis])
y = np.ones(10)#计算路径
n_alphas = 200
alphas = np.logspace(-10, -2, n_alphas)
clf = linear_model.Ridge(fit_intercept=False)coefs = []
for a in alphas:clf.set_params(alpha=a)clf.fit(X, y)coefs.append(clf.coef_)
#图形展示
#设置刻度
ax = plt.gca()
#设置刻度的映射
ax.plot(alphas, coefs)
#设置x轴的刻度显示方式
ax.set_xscale('log')
#翻转x轴
ax.set_xlim(ax.get_xlim()[::-1])
#设置x、y标签以及标题
plt.xlabel('alpha')
plt.ylabel('weights')
plt.title('Ridge coefficients as a function of the regularization')
#使得坐标轴最大值和最小值与数据保持一致
plt.axis('tight')
plt.show()


上图展示了岭回归模型的解的10个分量随正则化参数Alpha变化而变化的趋势。每一种颜色代表了不同的相关系数向量特征,它随着传入的正则化参数Alpha的变化而变化。由于图像形态,岭回归又称为脊回归。
这个例子展示了岭回归处理病态矩阵( ill-conditioned matrices)的优势。在病态矩阵里每一个目标变量微小的变动都会产生巨大的方差。对于这种情况就需要设置一个比较合适的正则化参数来减少离差(噪声)。
当正则参数Alpha非常大的时候,正则化的影响支配了二乘法函数,相关系数趋近于0。在路径的结尾,当正则参数alpha趋近于0的时候,结果解趋近于了普通最小二乘法,系数表现出了很大的震荡。

设置正则参数
在实践中要不断的调节正则参数Alpha在上述过程中寻求一种平衡。
RidgeCV实现了岭回归的交叉验证,下面是一种高效的交叉验证方式-留一交叉验证(leave-one-out):

>>> from sklearn import linear_model
>>> clf = linear_model.RidgeCV(alphas=[0.1, 1.0, 10.0])
>>> clf.fit([[0, 0], [0, 0], [1, 1]], [0, .1, 1])
RidgeCV(alphas=[0.1, 1.0, 10.0], cv=None, fit_intercept=True, scoring=None,normalize=False)
>>> clf.alpha_
0.1

例子:Classification of text documents using sparse features

Python回归 岭回归(Ridge Regression)相关推荐

  1. 机器学习算法系列(四)- 岭回归算法(Ridge Regression Algorithm)

    阅读本文需要的背景知识点:标准线性回归算法.一丢丢编程知识 一.引言   前面一节我们学习了机器学习算法系列(三)- 标准线性回归算法(Standard Linear Regression Algor ...

  2. R语言使用caret包构建岭回归模型(Ridge Regression )构建回归模型、通过method参数指定算法名称、通过trainControl函数控制训练过程

    R语言使用caret包构建岭回归模型(Ridge Regression )构建回归模型.通过method参数指定算法名称.通过trainControl函数控制训练过程 目录

  3. R构建岭回归模型(Ridge Regression)实战

    R构建岭回归模型(Ridge Regression)实战 目录 R构建岭回归模型(Ridge Regression) 岭回归模型 选择最优λ值 交叉验证

  4. 基于Python的岭回归与LASSO回归模型介绍及实践

    基于Python的岭回归与LASSO回归模型介绍及实践 这是一篇学习的总结笔记 参考自<从零开始学数据分析与挖掘> [中]刘顺祥 著 完整代码及实践所用数据集等资料放置于:Github 岭 ...

  5. 套索回归 岭回归_岭和套索回归简介

    套索回归 岭回归 Recently my class has been covering topics of regression and classification. We are now abl ...

  6. 套索回归 岭回归_使用kydavra套索选择器进行回归特征选择

    套索回归 岭回归 机器学习(Machine Learning) We all know the Occam's Razor: 我们都知道Occam的剃刀: From a set of solution ...

  7. Lasso回归系列二:Lasso回归/岭回归的原理

    Lasso回归/岭回归的原理 在学习L1,L2正则化的作用和区别时,我们总是会看到这样的一副图片: 这幅图片形象化地解释了L1,L2对线性模型产生的不同的约束效果. 我最开始其实是不太理解为什么要这么 ...

  8. 解读正则化 LASSO回归 岭回归

    在机器学习的学习过程中,我们会经常听到正则化这个词,在开始入门学习的时候还经常与标准化混淆.到底什么是正则化呢?本篇我们将由浅入深详细解读什么是正则化,以及LASSO回归和岭回归的介绍. 在正式开始之 ...

  9. python实现岭回归_python实现线性回归之岭回归

    岭回归与多项式回归的最大区别就是损失函数上的区别.岭回归的代价函数如下: 为了方便计算导数,通常也会写成以下形式: 上述式子中w为长度为n的向量,不包括偏置项的系数 θ0,θ是长度为n+1的向量,包括 ...

最新文章

  1. linux远程跳板机超时
  2. 天翼云从业认证(4.11)天翼云物流行业解决方案
  3. 七十、Vue城市页面Ajax动态渲染和兄弟组件数据传递
  4. 【图像处理】——图像特效处理(马赛克、图像融合、毛玻璃等)
  5. 【转】彻底理解cookie,session,token
  6. settimeout(fn(),0)
  7. Unity3D基础22:GUI Texture组件/Sence下显示图片
  8. ecshop商品列表页增加/显示货号SN
  9. 印象笔记编辑html,三个小工具帮你搞定印象笔记模版
  10. java doc 文件转pdf_Java中Word转PDF解决方案
  11. 【论文笔记】Self-paced Contrastive Learning with Hybrid Memory for Domain Adaptive Object Re-ID
  12. 【OpenCV入门教程之十三】OpenCV图像金字塔:高斯金字塔、拉普拉斯金字塔与图片尺寸缩放
  13. 【基于TCP的在线词典】
  14. MATLAB中readtimetable函数用法
  15. EXCEL显示 文件未保存 解决方法
  16. ༺ཌ༈计算机科普༈ད༻
  17. 出现多个虚拟显示器(通用非即插即用监视器)处理办法
  18. JAVA缴税_纳税服务系统【总结】
  19. HP笔记本怎么进入BIOS进行U盘装系统
  20. 学习笔记(2):Python解析器的安装以及通过python绘制玫瑰花和小猪佩奇-创建python文件以及进行运行同时讲解turtle...

热门文章

  1. C++ 什么是伪函数,以及伪函数的使用
  2. 两种方式实现节流函数
  3. linux系统键盘响应时间,怎样提高使用Linux键盘的效率
  4. test函数java,js中test()函数在正则中使用
  5. eclipse maven项目 class类部署不到tomcat下_Springboot介绍以及用Eclipse搭建一个简单的Springboot项目教程
  6. oracle升级12.2,Oracle 11.2.0.4升级到12.2.0.1
  7. java特殊类型_java中如何查找某个特定类型作为形参的方法
  8. 青岛大学计算机科学技术学院官网,田呈亮 - 青岛大学 - 计算机科学技术学院
  9. linux将屏幕输出内容转储到文件,Linux实时将所有输出重定向到文件
  10. linux 执行iso 文件,linux可以加载iso镜像文件到启动项吗