主要内容

Ridge回归

描述

B.=山脊(yXK.返回系数估计Ridge回归模型预测数据X和回应y。每列B.对应于特定的RIDGE参数K.。默认情况下,功能计算B.居中并缩放预测器以具有平均值0和标准偏差1.因为该模型不包括常数项,请勿添加1S的列X

B.=山脊(yXK.缩小了指定系数估计的缩放B.。什么时候缩小了1(默认),不会将系数恢复到原始数据刻度。什么时候缩小了0.将系数恢复为原始数据的比例。有关更多信息,请参阅系数缩放

例子

全部收缩

对一系列脊参数进行脊回归并观察系数估计变化的变化。

加载乙炔数据集。

加载乙炔

乙炔包含预测变量的观察X1X2,和X3,以及响应变量y

将预测器变量彼此绘制。观察变量之间的任何相关性。

plotmatrix([x1 x2 x3])

例如,注意之间的线性相关性X1X3

在一系列脊参数中计算具有交互术语的多线性模型的系数估计。采用X2FX.创建交互条款和执行ridge回归。

x = [x1 x2 x3];d = x2fx(x,'相互作用');d(:,1)= [];百分比不一年K = 0:1E-5:5E-3;B =脊(Y,D,K);

绘制脊迹线。

图绘图(k,b,'行宽',2)ylim([ -  100 100])网格Xlabel('ridge参数')ylabel('标准化系数')标题('山脊痕迹')传奇('x1''x2''x3''x1x2''x1x3''x2x3'

估计稳定在情节的右侧。注意:系数X2X3互动项在RIDGE参数的值下更改符号 5. * 1 0. - 4.

使用ridge回归预测每加仑(MPG)值的数英里。

加载CARBIG.数据集。

加载CARBIG.x = [加速度重量位移马力];y = mpg;

将数据拆分为培训和测试集。

n =长度(y);RNG('默认'重复性的%c = cvpartition(n,'坚持',0.3);Idxtrain =培训(C,1);iDxtest =〜idxtrain;

找到RIDGE回归模型的系数(带k = 5)。

k = 5;b = ridge(y(idxtrain),x(idxtrain,:),k,0);

预测MPG.使用该模型的测试数据的值。

yhat = b(1)+ x(iDxtest,:) * b(2:结束);

将预测值与使用参考行的每加仑(MPG)值进行比较。

散射(y(iDxtest),yhat)持有绘制(y(iDxtest),y(iDxtest))xlabel('实际MPG')ylabel('预测MPG'抱紧关闭

输入参数

全部收缩

响应数据,指定为一个N-1号数字矢量,在哪里N是观察人数。

数据类型:|

预测数据,指定为一个N-通过-P.数字矩阵。行的行X对应于N观察和列X对应于P.预测器。

数据类型:|

Ridge参数,指定为数字矢量。

例:[0.2 0.3 0.4 0.5]

数据类型:|

缩放标志,用于确定系数估计B.恢复到原始数据的规模,指定为0.要么1。如果缩小了0., 然后执行此额外的转换。在这种情况下,B.包含P.+1每个值的系数K.,第一排B.对应于模型中的常数术语。如果缩小了1,然后软件省略额外的转换,并且B.包含P.没有恒定术语系数的系数。

输出参数

全部收缩

系数估计,作为数字矩阵返回。行的行B.对应于预测器X,以及列B.对应脊参数K.

如果缩小了1, 然后B.是A.P.-通过-m矩阵,其中m是元素的数量K.。如果缩小了0., 然后B.是一个(P.+1)-通过-m矩阵。

更多关于

全部收缩

Ridge回归

Ridge回归是一种估计包括线性相关预测器的线性模型系数的方法。

多元线性回归模型的系数估计依赖于模型术语的独立性。当条款相关时以及设计矩阵的列X具有近似的线性依赖性,矩阵(XT.X-1接近单数。因此,最小二乘估计

β ^ = X T. X - 1 X T. y

对观察到的响应中的随机误差非常敏感y,产生大方差。例如,在没有实验设计的情况下收集数据时,可能会出现这种情况。

Ridge回归通过使用回归系数来解决多色性问题的问题

β ^ = X T. X + K. 一世 - 1 X T. y

哪里K.是山脊参数和一世是身份矩阵。小,正值K.改善问题的调理,降低估计的方差。虽然偏见,脊的降低的差异估计通常在与最小二乘估计相比时导致较小的平均平方误差。

系数缩放

RIDGE回归模型的系数估计的缩放取决于值的值缩小了输入参数。

假设Ridge参数K.等于0.返回的系数, 什么时候缩小了等于1,是估计的B.一世1在多线性模型中

y-μ.y=B.11Z.1+ ...... +B.P.1Z.P.+ε.

哪里Z.一世=(X一世-μ.一世/σ.一世是居中和缩放的预测因子,y-μ.y是中心的回应,和ε.是一个错误术语。您可以将模型重写为

y=B.0.0.+B.10.X1+ ...... +B.P.0.XP.+ε.

B. 0. 0. = μ. y - σ. 一世 = 1 P. B. 一世 1 μ. 一世 σ. 一世 B. 一世 0. = B. 一世 1 σ. 一世 。该B.一世0.术语对应于返回的系数什么时候缩小了等于0.

更一般地,对于任何价值K.,如果是b1 = ridge(y,x,k,1), 然后

m =均值(x);s = std(x,0,1)';b1_caled = b1./s;b0 = [均值(y)-m * b1_caled;b1_caled]

哪里b0 = ridge(y,x,k,0)

提示

  • 对待价值X要么y作为缺失的值。省略与脊回归符合的缺失值的观察。

  • 一般来说,套装缩小了等于1生成在相同刻度上显示系数的曲线。看到Ridge回归出于使用脊迹线图的示例,其中将回归系数显示为脊参数的函数。在制作预测时,设置缩小了等于0.。例如,看到使用ridge回归预测值

替代功能

  • Ridge,套索和弹性净正常化是估计线性模型系数的所有方法,同时惩罚大系数。惩罚的类型取决于该方法(见更多关于更多细节)。执行套索或弹性净正则化,使用套索代替。

  • 如果您有高维全部或稀疏预测器数据,则可以使用Fitrinear.代替。使用时Fitrinear.,指定'正规化','ridge'名称值对参数。设置值'lambda'名称值对您选择的RIDGE参数的向量中的参数。Fitrinear.返回培训的线性模型MDL.。您可以访问存储在中的系数估计bet通过使用模型的属性mdl.beta.

参考资料

[1] Hoerl,A. E.和R. W.Kennard。“山脊回归:非正交问题的偏见估计。”Technometrics.。卷。12,1970年,第1,50页,第55-67页。

[2] HOERL,A. E.和R. W. Kennard。“Ridge回归:应用于非正交问题。”Technometrics.。卷。12,第1,1970号,第69-82页。

[3] Marquardt,D. W.“广义反转,脊回归,偏置线性估计和非线性估计。”Technometrics.。卷。12,1970年,第3,970页,第591-612页。

[4] Marquardt,D. W.和R. D. Snee。“在实践中的山脊回归。”美国统计学家。卷。29,第1,1975号,第3-20页。3-20。

也可以看看

|||

在R2006A之前介绍