全文链接:https://tecdat.cn/?p=33462
原文出处:拓端数据部落公众号
本文将关注 R 语言中的 LASSO(Least Absolute Shrinkage and Selection Operator)惩办稠密加法模型(Sparse Additive Model,简称 SPAM)。SPAM 是一种用于拟合非线性数据的弱小工具,它能够通过预计非线性函数的加法组件来捕获输出变量与响应变量之间的简单关系。
通过本文,咱们将展现如何帮忙客户在 R 语言中应用 LASSO 惩办稠密加法模型(SPAM)来拟合非线性数据,并进行相应的可视化剖析。
本文提供了一个代码来设置、拟合和可视化加法模型。数值特色会主动应用样条基函数进行扩大。这个根本思维最早是由 Ravikumar 等人在 2009 年提出的,他们称之为 SPAM,即稠密加法模型。最后的提议波及到组套索 lasso 惩办,但 grpreg 的任何惩办函数都能够代替。根本用法如下所示。
非线性数据:
dim(Data$X)
# [1] 1000 16
矩阵蕴含 16 个数字特色。
生成的对象是一个列表,其中蕴含扩大矩阵和分组调配,以及一些外部函数所需的元数据。应用具备三个自由度的天然三次样条曲线。
当初能够将扩大后的矩阵传递给 :grpreg()
fit <- grpreg
请留神,在这种状况下不用传递分组信息,因为分组信息蕴含在对象中。
plot_spline(fit,
偏残差也可蕴含在这些图中:
plot_splinpartial=TRUE)
默认状况下,这些图的居中值为 x(的平均值(其中 x 示意正在绘制的特色)的平均值为零时,y 值为零。另一种状况是,如果指定了 plot_spline()x,则将绘制一幅纵轴代表模型预测值的曲线图,所有其余特色都固定为平均值:
plot_spline(fit, "V02, type='conditional')
在比拟这两幅图时,请留神总体轮廓是雷同的,惟一不同的是纵轴的值。上面是前 9 个系数的曲线图:
for (i in 1:9) ploline(fit
在生成模型中,变量 3 和 4 与后果呈线性关系,变量 1、2、5 和 6 呈非线性关系,而所有其余变量均不相干。稠密加法模型很好地捕捉到了这一点。
进行穿插验证(默认状况下会绘制出使穿插验证误差最小的拟合后果):
cvfit <- cv.grp
plot_line
最初,这些工具还可用于生存模型和 glm 模型。在这里,所有绘图都以线性预测尺度返回,残差为偏差残差。
最受欢迎的见解
1.[](https://tecdat.cn/r%e8%af%ad%e8%a8%80%e7%bb%98%e5%88%b6%e7%94…)数据类岗位需要的数据面
2.[](https://tecdat.cn/r%e8%af%ad%e8%a8%80%e7%94%9f%e5%ad%98%e5%88…)探析大数据期刊文章钻研热点
3.[](https://tecdat.cn/r%e8%af%ad%e8%a8%80%e5%a6%82%e4%bd%95%e5%9c…)机器学习助推快时尚精准销售预测
4.[](https://tecdat.cn/r%e8%af%ad%e8%a8%80%e4%b8%ad%e4%bd%bf%e7%94…)用机器学习辨认一直变动的股市情况—隐马尔科夫模型 (HMM) 的利用
5.[](https://tecdat.cn/r%e8%af%ad%e8%a8%80%e7%94%9f%e5%ad%98%e5%88…)[](https://tecdat.cn/%e6%95%b0%e6%8d%ae%e7%9b%98%e7%82%b9%ef%bc%…)数据凝听人民网留言板的那些“网事”
6.[](https://tecdat.cn/r%e8%af%ad%e8%a8%80ggplot2%e8%af%af%e5%b7%a…)在 r 语言中应用 GAM(狭义相加模型)进行电力负荷工夫序列剖析
7.[](https://tecdat.cn/r-%e8%af%ad%e8%a8%80%e7%bb%98%e5%88%b6%e5%8…)[](https://tecdat.cn/%e6%95%b0%e6%8d%ae%e5%8a%a9%e5%8a%9b%e4%bd%…)用数据解读体育决策:开掘体育赛事新价值
8.[](https://tecdat.cn/r%e8%af%ad%e8%a8%80%e5%a6%82%e4%bd%95%e6%89…)把握出租车行驶的数据脉搏
9.[](https://tecdat.cn/r%e8%af%ad%e8%a8%80%e4%b8%ad%e7%9a%84%e7%94…)智能门锁“剁手”数据攻略