R语言弹性网络Elastic Net正则化惩罚回归模型交叉验证可视化

弹性网络正则化同时应用 L1 范数和 L2 范数正则化来惩罚回归模型中的系数。

由Kaizong Ye,Liao Bao撰写

为了在 R 中应用弹性网络正则化。

在 LASSO回归中,我们为 alpha 参数设置一个 ‘1’ 值,并且在 岭回归中,我们将 ‘0’ 值设置为其 alpha 参数。

弹性网络在 0 到 1 的范围内搜索最佳 alpha 参数。在这篇文章中,我们将学习如何在 R 中应用弹性网络正则化。

首先,我们将为本教程创建测试数据集。

df <- data.frame(a,b,c,z)
 
x <- as.matrix(df)\[,-4\]
for (i in 1:length(alpha))  {    bst$mse <- c(bet$mse, min(cg$cm)) }   inx <- which(bst$mse==min(bst$mse)) betlha <- bs$a\[inex\] be_mse <- bst$mse\[inex\]

接下来,我们再次使用最佳 alpha 进行交叉验证以获得 lambda(收缩水平)。

elacv <- cv(x, v)



bestbda <- elacv$lambda.min


视频

Lasso回归、岭回归等正则化回归数学原理及R语言实例

探索见解

去bilibili观看

探索更多视频

现在,我们可以使用函数拟合具有最佳 alpha 和 lambda 值的模型。

coef(elamod)

最后,我们可以使用模型预测测试数据并计算 RMSE、R 平方和 MSE 值。

predict(elasod, x)


cat(" RMSE:", rmse, "\\n", "R-squared:", R2, "\\n", "MSE:", mse)

R语言用加性多元线性回归、随机森林、弹性网络模型预测鲍鱼年龄和可视化

阅读文章



随时关注您喜欢的主题



可下载资源

关于作者

Kaizong Ye拓端研究室(TRL)的研究员。Kaizong Ye拓端研究室(TRL)的研究员。在此对他对本文所作的贡献表示诚挚感谢,他在上海财经大学完成了统计学专业的硕士学位,专注人工智能领域。擅长Python.Matlab仿真、视觉处理、神经网络、数据分析。

本文借鉴了作者最近为《R语言数据分析挖掘必知必会 》课堂做的准备。

​非常感谢您阅读本文,如需帮助请联系我们!

 
QQ在线咨询
售前咨询热线
15121130882
售后咨询热线
0571-63341498

关注有关新文章的微信公众号


永远不要错过任何见解。当新文章发表时,我们会通过微信公众号向您推送。

技术干货

最新洞察

This will close in 0 seconds