Lasso回归及其R语言操作

Lasso回归形式:

确定lamda使得RSS-lamda*sum(Bi)最小,RSS为普通最小二乘估计的回归平方和。

 

作用:

确定哪些变量更重要,lamda从0到1过程中,哪些变量的系数最慢趋于0,则这些变量相对更重要。

 

R语言代码:

library(glmnet)
set.seed(1)
x=matrix(rnorm(100*20),100,20)
y=rnorm(100)
fit1=glmnet(x,y)
plot(fit1,xvar="lamda",label=T)

 

 从结果可以看出,负相关变量中8和13更为重要;正相关变量中2和3更为重要。

 

取lambda为0.01时,对应的系数为

b=coef(fit1,s=0.01)

 未显示的变量系数即可考虑为0,可以考虑保留变量系数较大的变量进行分析。

 

取lambda为0.01和0.005时做预测

predict(fit1,newx=x[1:10,],s=c(0.01,0.005))

 

posted on 2024-04-08 08:30  Dababao  阅读(560)  评论(0)    收藏  举报