始める無料で始める

変数の重要度

バギング木は、決定木の分散の大きさという問題を克服するアンサンブルモデルであることは、すでにご存じですね。さらにランダムフォレストでは、各木で特徴量のランダムなサブセットだけを使うことで、これを改良します。これによりアンサンブル間の相関がさらに下がり、予測性能が向上します。

この演習では、ランダムフォレストを自分で構築し、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)
コードを編集して実行