変数の重要度
バギング木は、決定木の分散の大きさという問題を克服するアンサンブルモデルであることは、すでにご存じですね。さらにランダムフォレストでは、各木で特徴量のランダムなサブセットだけを使うことで、これを改良します。これによりアンサンブル間の相関がさらに下がり、予測性能が向上します。
この演習では、ランダムフォレストを自分で構築し、vip パッケージを使って予測変数の重要度を可視化します。学習用データ customers_train はワークスペースに読み込まれています。
この演習はコースの一部です
Rで学ぶTree-Based ModelsによるMachine Learning
演習の手順
"ranger"エンジンと"impurity"型の変数重要度を用いるランダムフォレスト分類モデルの仕様specを作成します。- ティブル
customers_trainに対して、目的変数をstill_customer、それ以外の列を説明変数として、specを当てはめてmodelを作成します。 - 変数重要度を、(事前読み込みされていない)
vipパッケージのvip()関数でプロットします。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Specify a random forest
spec <- ___ %>%
set_mode("classification") %>%
set_engine(___, importance = ___)
# Train the forest
model <- spec %>%
fit(___,
___)
# Plot the variable importance
vip::___(model)