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

原文链接:http://tecdat.cn/?p=26158

原文出处:拓端数据部落公众号

弹性网络正则化同时应用 L1 范数和 L2 范数正则化来惩罚回归模型中的系数。为了在 R 中应用弹性网络正则化。在 LASSO回归中,我们为 alpha 参数设置一个 '1' 值,并且在 岭回归中,我们将 '0' 值设置为其 alpha 参数。弹性网络在 0 到 1 的范围内搜索最佳 alpha 参数。在这篇文章中,我们将学习如何在 R 中应用弹性网络正则化。

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

  1.  
     
  2.  
    df <- data.frame(a,b,c,z)
  3.  
     
  4.  
    x <- as.matrix(df)[,-4]

  1.  
     
  2.  
    for (i in 1:length(alpha))
  3.  
    {
  4.  
     
  5.  
    bst$mse <- c(bet$mse, min(cg$cm))
  6.  
    }
  7.  
     
  8.  
    inx <- which(bst$mse==min(bst$mse))
  9.  
    betlha <- bs$a[inex]
  10.  
    be_mse <- bst$mse[inex]


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

  1.  
    elacv <- cv(x, v)
  2.  
     
  3.  
     
  4.  
     
  5.  
    bestbda <- elacv$lambda.min

 


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

  1.  
     
  2.  
    coef(elamod)
  3.  
     


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

 

  1.  
    predict(elasod, x)
  2.  
     
  3.  
     
  4.  
    cat(" RMSE:", rmse, "\n", "R-squared:", R2, "\n", "MSE:", mse)
  5.  
     


最受欢迎的见解

1.R语言多元Logistic逻辑回归 应用案例

2.面板平滑转移回归(PSTR)分析案例实现

3.matlab中的偏最小二乘回归(PLSR)和主成分回归(PCR)

4.R语言泊松Poisson回归模型分析案例

5.R语言回归中的Hosmer-Lemeshow拟合优度检验

6.r语言中对LASSO回归,Ridge岭回归和Elastic Net模型实现

7.在R语言中实现Logistic逻辑回归

8.python用线性回归预测股票价格

9.R语言如何在生存分析与Cox回归中计算IDI,NRI指标

posted @ 2022-04-10 10:15  拓端tecdat  阅读(387)  评论(0)    收藏  举报