Ridge Regression岭回归,lasso
2016-03-15 19:16
225 查看
Ridge Regression岭回归
数值计算方法的“稳定性”是指在计算过程中舍入误差是可以控制的。对于有些矩阵,矩阵中某个元素的一个很小的变动,会引起最后计算结果误差很大,这种矩阵称为“病态矩阵”。有些时候不正确的计算方法也会使一个正常的矩阵在运算中表现出病态。对于高斯消去法来说,如果主元(即对角线上的元素)上的元素很小,在计算时就会表现出病态的特征。
回归分析中常用的最小二乘法是一种无偏估计。
当X列满秩时,有
X+表示X的广义逆(或叫伪逆)。
当X不是列满秩,或者某些列之间的线性相关性比较大时,XTX的行列式接近于0,即XTX接近于奇异,计算(XTX)-1时误差会很大。此时传统的最小二乘法缺乏稳定性与可靠性。
岭回归是对最小二乘回归的一种补充,它损失了无偏性,来换取高的数值稳定性,从而得到较高的计算精度。
当XTX的行列式接近于0时,我们将其主对角元素都加上一个数k,可以使矩阵为奇异的风险大降低。于是:
(I是单位矩阵)
随着k的增大,B(k)中各元素bi(k)的绝对值均趋于不断变小,它们相对于正确值bi的偏差也越来越大。k趋于无穷大时,B(k)趋于0。b(k)随k的改变而变化的轨迹,就称为岭迹。实际计算中可选非常多的k值,做出一个岭迹图,看看这个图在取哪个值的时候变稳定了,那就确定k值了。
X不满足列满秩,换句话就是说样本向量之间具有高度的相关性(如果每一列是一个向量的话)。遇到列向量相关的情形,岭回归是一种处理方法,也可以用主成分分析PCA来进行降维。
原文来自:博客园(华夏35度)http://www.cnblogs.com/zhangchaoyang 作者:Orisun
LASSO
使用数理统计模型从海量数据中有效挖掘信息越来越受到业界关注。在建立模型之初,为了尽量减小因缺少重要自变量而出现的模型偏差,通常会选择尽可能多的自变量。然而,建模过程需要寻找对因变量最具有强解释力的自变量集合,也就是通过自变量选择(指标选择、字段选择)来提高模型的解释性和预测精度。指标选择在统计建模过程中是极其重要的问题。Lasso算法则是一种能够实现指标集合精简的估计方法。
Tibshirani(1996)提出了Lasso(The Least Absolute Shrinkage and Selectionator operator)算法。这种算法通过构造一个惩罚函数获得一个精炼的模型;通过最终确定一些指标的系数为零,LASSO算法实现了指标集合精简的目的。这是一种处理具有复共线性数据的有偏估计。Lasso的基本思想是在回归系数的绝对值之和小于一个常数的约束条件下,使残差平方和最小化,从而能够产生某些严格等于0的回归系数,得到解释力较强的模型。R统计软件的Lars算法的软件包提供了Lasso算法。根据模型改进的需要,数据挖掘工作者可以借助于Lasso算法,利用AIC准则和BIC准则精炼简化统计模型的变量集合,达到降维的目的。因此,Lasso算法是可以应用到数据挖掘中的实用算法。
相关文章推荐
- zjnu1725 COCI (类似二维树状数组模拟)
- shell入门指南
- 第二周项目二就拿胖子说事
- Add user to sudoers - 润物无声 - 博客频道 - CSDN.NET
- 简明python教程 --C++程序员的视角(二):函数及作用域
- LeetCode 82. Remove Duplicates from Sorted List II
- BZOJ1570Blue Mary的旅行
- 红包分配算法(年后写的)
- Apache Stratos探究:4.1.x Application Resource Definition(应用程序资源定义)
- 版本管理工具 - SVN
- 阅后即焚的产品价值
- Bloom Filter
- HDU 1030.Delta-wave【找规律、最短路】【3月15】
- 解决Myeclipse开发jsp卡的问题
- Android中振动器(Vibrator)的使用
- 简明python教程 --C++程序员的视角(一):数值类型、字符串、运算符和控制流
- PyCharm快捷键
- 160315
- PostgreSQL pg_hba.conf 文件解析以及忘记密码的处理方法
- Android中的Apk的加固(加壳)原理解析和实现(转)