原文链接:http://tecdat.cn/?p=25741

此示例显示如何 lasso 辨认和舍弃不必要的预测变量。

应用各种办法从指数分布生成 200 个五维数据 X 样本。

rng(3,'twister') %    实现可重复性for i = 1:5        X(:,i) = exprndend

生成因变量数据 Y =  X *  r +  eps ,其中 r 只有两个非零重量,噪声 eps 正态分布,标准差为 0.1。

用 拟合穿插验证的模型序列 lasso ,并绘制后果。

Plot(ffo);

Lambda 该图显示了正则化参数的各种值的回归中的非零系数 。较大的值 Lambda 呈现在图的左侧,意味着更多的正则化,导致更少的非零回归系数。

虚线代表最小均方误差的Lambda值(在左边),以及最小均方误差加一个标准差的Lambda值。后者是Lambda的一个举荐设置。这些线条只在你进行穿插验证时呈现。通过设置'CV'名-值对参数来进行穿插验证。这个例子应用了10折的穿插验证。
 

图的上半局部显示了自由度(df),即回归中非零系数的数量,是Lambda的一个函数。在右边,Lambda的大值导致除一个系数外的所有系数都是0。在左边,所有五个系数都是非零的,只管该图只分明显示了两个。其余三个系数十分小,简直等于0。

对于较小的 Lambda 值(在图中向右),系数值靠近最小二乘预计。

求 Lambda 最小穿插验证均方误差加上一个标准差的值。查看 MSE 和拟合的系数 Lambda 。

MSE(lm)

b(:,lam)

lasso 很好地找到了系数向量 r 。

为了比拟,求  r的最小二乘预计 。

rhat

预计 b(:,lam) 的均方误差略大于 rhat 的均方误差 。

res; % 计算残差MSEmin

但 b(:,lam) 只有两个非零重量,因而能够对新数据提供更好的预测预计。


最受欢迎的见解

1.R语言多元Logistic逻辑回归 利用案例

2.面板平滑转移回归(PSTR)剖析案例实现剖析案例实现")

3.matlab中的偏最小二乘回归(PLSR)和主成分回归(PCR)

4.R语言泊松Poisson回归模型剖析案例

5.R语言回归中的Hosmer-Lemeshow拟合优度测验

6.r语言中对LASSO回归,Ridge岭回归和Elastic Net模型实现

7.在R语言中实现Logistic逻辑回归

8.python用线性回归预测股票价格

9.R语言如何在生存剖析与Cox回归中计算IDI,NRI指标