重新介绍 glmnet

在 R 中使用 caret 的机器学习

Zach Mayer

Data Scientist at DataRobot and co-author of caret

glmnet 回顾

  • 线性模型,自带特征选择
  • 很好的基线模型
  • 优点
    • 拟合快速
    • 忽略噪声特征
    • 系数可解释
在 R 中使用 caret 的机器学习

示例:在流失数据上使用 glmnet

set.seed(42)
model_glmnet <- train(
  churn ~ ., 
  churnTrain,
  metric = "ROC",
  method = "glmnet",
  tuneGrid = expand.grid(
    alpha = 0:1, 
    lambda = 0:10 / 10
  ),
  trControl = myControl
)
在 R 中使用 caret 的机器学习

可视化结果

plot(model_glmnet)

图:两条曲线显示 ROC 随正则化参数变化,在混合比例为 0 和 1 时对比。混合比例为 1 时 ROC 明显更高。

在 R 中使用 caret 的机器学习

绘制系数图

plot(model_glmnet$finalModel)

图:自定义 glmnet 图,系数随 L1 范数变化

在 R 中使用 caret 的机器学习

开始练习!

在 R 中使用 caret 的机器学习

Preparing Video For Download...