始める無料で始める

さらにモデルを縮約できますか?

変数 loan_amnt を削除すると、AUC は 0.6548 までさらに改善しました。得られたモデルは次のとおりです。

log_4_remove_amnt <- glm(loan_status ~ grade + annual_inc + emp_cat, family = binomial, data = training_set) 

ロジスティック回帰モデルを、AUC を下げずに2変数だけにまで縮約できるでしょうか?この演習で確かめてみましょう。

この演習はコースの一部です

R で学ぶクレジットリスク・モデリング

コースを見る

演習の手順

  • 再度、モデル log_4_remove_amnt から1つずつ変数を削除してください。リンク関数はデフォルト(logit)を使います。
  • 作成した各モデルについて、predict() でデフォルト確率の予測を行います。
  • 3つの各モデルについて、test_set$loan_status を第1引数、各モデルの予測を第2引数として AUC を算出します。
  • ワークスペース内で、AUC が最も高いモデルについて ROC 曲線を plot(roc()) で描画します。roc() の引数は、AUC が最大だったときに auc() に渡したものと同一にしてください。なお、log_4_remove_amnt より AUC をこれ以上下げられない(= これが最良)場合もあります。その場合の予測値は pred_4_remove_amnt としてワークスペースに読み込まれています。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

# Build three models each time deleting one variable in log_4_remove_amnt
log_5_remove_grade <- glm(loan_status ~ annual_inc + emp_cat, family = binomial, data = training_set) 
log_5_remove_inc <- 
log_5_remove_emp <- 

# Make PD-predictions for each of the models
pred_5_remove_grade <- predict(log_5_remove_grade, newdata = test_set, type = "response")
pred_5_remove_inc <-
pred_5_remove_emp <-

# Compute the AUCs



# Plot the ROC-curve for the best model here
コードを編集して実行