glmnet の再紹介

Rで学ぶ caret を使った Machine Learning

Zach Mayer

Data Scientist at DataRobot and co-author of caret

glmnet の復習

  • 変数選択を内蔵した線形モデル
  • 強力なベースライン
  • 長所
    • 学習が速い
    • ノイズ変数を無視
    • 係数が解釈しやすい
Rで学ぶ caret を使った Machine Learning

例: 退会データでの 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 を使った Machine Learning

結果を可視化

plot(model_glmnet)

画像は、混合率 0 と 1 に対する ROC と正則化パラメータの折れ線グラフ。混合率 1 の方が ROC が大幅に高い。

Rで学ぶ caret を使った Machine Learning

係数をプロット

plot(model_glmnet$finalModel)

画像は、係数と L1 ノルムの関係を示す glmnet のカスタムプロット

Rで学ぶ caret を使った Machine Learning

演習に進みましょう!

Rで学ぶ caret を使った Machine Learning

Preparing Video For Download...