原文链接:http://tecdat.cn/?p=22273
如果你理解数据迷信畛域,你可能据说过 LASSO。LASSO 是一个对指标函数中的参数大小进行惩办的模型,试图将不相干的变量从模型中排除
动机
它有两个十分天然的用处,第一个是变量抉择,第二个是预测。因为通常状况下,LASSO 抉择的变量会比一般最小二乘法(OLS)少得多,其预测的方差会小得多,代价是样本中呈现大量的偏差。
LASSO 最重要的特点之一是它能够解决比观测值多得多的变量,我说的是成千上万的变量。这是它最近风行的次要起因之一。
实例
在这个例子中,我应用最风行的 LASSO,glmnet。咱们能够十分疾速地预计 LASSO,并应用穿插验证抉择最佳模型。依据我的教训,在工夫序列的背景下,应用信息准则(如 BIC)来抉择最佳模型会更好。它更快,并防止了工夫序列中穿插验证的一些简单问题。
本文预计 LASSO,并应用信息规范来抉择最佳模型。咱们将应用 LASSO 来预测通货膨胀。
## == 数据分解成样本内和样本外
y.in=y[1:100]; y.out=y[-c(1:100)]
x.in=x[1:100,]; x.out=x[-c(1:100),]
## == LASSO == ##
glmnet(x.in,y.in,crit = "bic")
点击题目查阅往期内容
r 语言中对 LASSO 回归,Ridge 岭回归和弹性网络 Elastic Net 模型实现
左右滑动查看更多
01
02
03
04
plot(lasso)
下面的第一个图显示,当咱们减少 LASSO 指标函数中的惩办时,变量会归零。第二张图显示了 BIC 曲线和选定的模型。当初咱们能够计算预测了。
## == 预测 == ##
predict(lasso,x.out)
adaptive LASSO
LASSO 有一个自适应版本,在变量抉择方面有一些更好的个性。请留神,这并不总是意味着更好的预测。该模型背地的想法是应用一些以前晓得的信息来更无效地抉择变量。一般来说,这些信息是由 LASSO 或其余一些模型预计的系数。
## = adaLASSO = ##
adalasso(x.in,y.in,crit="bic",penalty=factor)
predict(adalasso, x.out)
## = 比拟误差 = ##
sqrt(mean((y.out-pred.ada)^2)
在这种状况下,adaLASSO 产生了一个更准确的预测。一般来说,adaLASSO 比简略的 LASSO 的预测成果更好。然而,这不是一个相对的事实。我见过很多简略 LASSO 做得更好的案例。
参考文献
[1] Bühlmann, Peter, and Sara Van De Geer. Statistics for high-dimensional data: methods, theory and applications. Springer Science & Business Media, 2011.
[2] Jerome Friedman, Trevor Hastie, Robert Tibshirani (2010). Regularization Paths for
Generalized Linear Models via Coordinate Descent. Journal of Statistical Software, 33(1), 1-22. URL http://www.jstatsoft.org/v33/…
[3] Marcio Garcia, Marcelo C. Medeiros , Gabriel F. R. Vasconcelos (2017). Real-time inflation forecasting with high-dimensional models: The case of Brazil. Internationnal Journal of Forecasting, in press.
本文摘选 《 R 语言用 LASSO,adaptive LASSO 预测通货膨胀工夫序列 》,点击“ 浏览原文”获取全文残缺材料。
点击题目查阅往期内容
MATLAB 用 Lasso 回归拟合高维数据和穿插验证
群组变量抉择、组惩办 group lasso 套索模型预测新生儿出世体重危险因素数据和穿插验证、可视化
高维数据惩办回归办法:主成分回归 PCR、岭回归、lasso、弹性网络 elastic net 剖析基因数据
Python 高维变量抉择:SCAD 平滑剪切相对偏差惩办、Lasso 惩办函数比拟
R 应用 LASSO 回归预测股票收益
狭义线性模型 glm 泊松回归的 lasso、弹性网络分类预测学生考试成绩数据和穿插验证
贝叶斯分位数回归、lasso 和自适应 lasso 贝叶斯分位数回归剖析免疫球蛋白、前列腺癌数据
R 语言 RSTAN MCMC:NUTS 采样算法用 LASSO 构建贝叶斯线性回归模型剖析职业声望数据
r 语言中对 LASSO 回归,Ridge 岭回归和弹性网络 Elastic Net 模型实现
R 语言高维数据惩办回归办法:主成分回归 PCR、岭回归、lasso、弹性网络 elastic net 剖析基因数据(含练习题)
狭义线性模型 glm 泊松回归的 lasso、弹性网络分类预测学生考试成绩数据和穿插验证
贝叶斯分位数回归、lasso 和自适应 lasso 贝叶斯分位数回归剖析免疫球蛋白、前列腺癌数据
R 语言 RSTAN MCMC:NUTS 采样算法用 LASSO 构建贝叶斯线性回归模型剖析职业声望数据
r 语言中对 LASSO 回归,Ridge 岭回归和弹性网络 Elastic Net 模型实现
R 语言高维数据惩办回归办法:主成分回归 PCR、岭回归、lasso、弹性网络 elastic net 剖析基因数据(含练习题)
Python 中 LARS 和 Lasso 回归之最小角算法 Lars 剖析波士顿住房数据实例
R 语言自适应 LASSO 多项式回归、二元逻辑回归和岭回归利用剖析
R 语言惩办 logistic 逻辑回归(LASSO, 岭回归)高维变量抉择的分类模型案例
Python 中的 Lasso 回归之最小角算法 LARS
r 语言中对 LASSO 回归,Ridge 岭回归和弹性网络 Elastic Net 模型实现
R 语言实现 LASSO 回归——本人编写 LASSO 回归算法
r 语言中对 LASSO 回归,Ridge 岭回归和 Elastic Net 模型实现
R 应用 LASSO 回归预测股票收益
R 语言如何和何时应用 glmnet 岭回归
R 语言中的岭回归、套索回归、主成分回归:线性模型抉择和正则化
Python 中的 ARIMA 模型、SARIMA 模型和 SARIMAX 模型对工夫序列预测
R 语言 arima,向量自回归(VAR),周期自回归 (PAR) 模型剖析温度工夫序列
【视频】Python 和 R 语言应用指数加权均匀(EWMA),ARIMA 自回归挪动均匀模型预测工夫序列
Python 用 ARIMA 和 SARIMA 模型预测销量工夫序列数据