模型|拓端tecdat|R语言自适应LASSO 多项式回归、二元逻辑回归和岭回归应用分析( 六 )

文章图片 ##用10折CV进行岭回归 ##类型 。 度量:用于交叉验证的损失 。 type.measure = "deviance", ## K = 10 是默认值 。 nfold = 10, ## 多项式回归 ## ‘alpha = 1’ 是套...


文章图片

  1. ##用10折CV进行岭回归
  2. ##类型 。 度量:用于交叉验证的损失 。
  3. type.measure = "deviance",
  4. ## K = 10 是默认值 。
  5. nfold = 10,
  6. ## 多项式回归
  7. ## ‘alpha = 1’ 是套索惩罚 , 'alpha=0'是岭惩罚 。
  8. alpha = 0)
  9. ## 惩罚vs CV MSE图
模型|拓端tecdat|R语言自适应LASSO 多项式回归、二元逻辑回归和岭回归应用分析
文章图片

## 在误差最小λ处lambda.min
【模型|拓端tecdat|R语言自适应LASSO 多项式回归、二元逻辑回归和岭回归应用分析】## [1] 0.03488898
  1. ## s:需要进行预测的惩罚参数“lambda”的值 。 默认值是用于创建模型的整个序列 。
  2. coef(ridge3_cv, s = lambda.min))
  3. ## 31 x 1 sparse Matrix of class "dgCMatrix"
  4. ## 1
  5. ## (Intercept) 0.1718290283
  6. ## V1 0.1148574142
  7. ## V2 0.5068431000
  8. ## V3 -0.3384649794
  9. ## V4 -0.8634050979
  10. ## V5 -0.3141436782
  11. ## V6 -0.6956355852
  12. ## V7 0.0798900376
  13. ## V8 -0.5167458568
  14. ## V9 0.5193890584
  15. ## V10 -1.0182682093
  16. ## V11 -0.2077506627
  17. ## V12 -0.2218540968
  18. ## V13 -0.1638673635
  19. ## V14 0.1370473811
  20. ## V15 0.0388320169
  21. ## V16 0.3621440665
  22. ## V17 -0.1226309533
  23. ## V18 -0.1492504287
  24. ## V19 -0.0497939458
  25. ## V20 -0.2024006258
  26. ## V21 0.0006531455
  27. ## V22 0.2456970018
  28. ## V23 0.4333057414
  29. ## V24 -0.1769632495
  30. ## V25 0.5320062623
  31. ## V26 -0.3875044960
  32. ## V27 -0.2157079430
  33. ## V28 0.3337625633
  34. ## V29 -0.2659968175
  35. ## V30 0.1601149964
  36. ## 截距估计应该取消 。
  37. (best_ridge_coef3)[-1]
  38. ##执行自适应套索
  39. ## 多项式回归
  40. family = "binomial",
  41. ## “alpha=1”是套索惩罚 , “alpha=0”是岭惩罚 。
  42. alpha = 1,
模型|拓端tecdat|R语言自适应LASSO 多项式回归、二元逻辑回归和岭回归应用分析
文章图片

  1. ## 使用10折CV执行自适应套索
  2. ## 类型 。 度量:用于交叉验证的损失 。
  3. ##惩罚vs CV MSE图
  4. plot(alasso3_cv)
模型|拓端tecdat|R语言自适应LASSO 多项式回归、二元逻辑回归和岭回归应用分析
文章图片

  1. ## 在误差最小λ处提取系数
  2. lambda.min
## [1] 0.5438827
  1. ## s:需要进行预测的惩罚参数“lambda”的值 。 默认值是用于创建模型的整个序列 。
  2. coef(cv, s = lambda.min)
  3. ## 31 x 1 sparse Matrix of class "dgCMatrix"
  4. ## 1
  5. ## (Intercept) 0.19932789
  6. ## V1 .
  7. ## V2 0.69081709
  8. ## V3 -0.48062268
  9. ## V4 -1.21628612
  10. ## V5 .
  11. ## V6 -1.01918155
  12. ## V7 .
  13. ## V8 -0.48394892
  14. ## V9 0.79804285
  15. ## V10 -1.49657785
  16. ## V11 .
  17. ## V12 .
  18. ## V13 .
  19. ## V14 .
  20. ## V15 .
  21. ## V16 0.19759191
  22. ## V17 .
  23. ## V18 .
  24. ## V19 .
  25. ## V20 .
  26. ## V21 .
  27. ## V22 0.04668665
  28. ## V23 0.24445410
  29. ## V24 .
  30. ## V25 0.57951934
  31. ## V26 -0.21844124
  32. ## V27 .
  33. ## V28 0.07144777
  34. ## V29 -0.04682770
  35. ## V30 .
绘制ROC曲线
  1. ## 提取预测概率和观察结果 。
  2. pY <- as.(predict(alasso3, newx = x_bin, s = lambda.min, type = "response"))
  3. ##
  4. ## 用AUC和阈值绘制ROC曲线
  5. plot(roc1)
模型|拓端tecdat|R语言自适应LASSO 多项式回归、二元逻辑回归和岭回归应用分析
文章图片

交叉验证测试集AUC
  1. lapply(unique(foldid), function(id)
  2. ## 拟合排除测试集 (foldid == id)
  3. ## 使用模型拟合最佳lambda测试集Y?hat
  4. y_pred <- (predict(fit, newx = x_bin[foldid == id], s = lambda.min)

    特别声明:本站内容均来自网友提供或互联网,仅供参考,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。