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))