Kaggle(26) - 重要度の表示 - LightGBM編3

LightGBMでは、学習済みモデルのfeature_importanceメソッドを使うと特徴の重要度を表示することができます。

重要度の表示

前回記事で学習したモデルについての重要度を表示します。

[ソース]

1
gbm.feature_importance()

[出力]

feature_importanceメソッドは、デフォルトの引数としてimportance_type=’split’が指定されており、重要度としては「特徴が使用された回数」が表示されます。

引数にimportance_type=’gain’を指定した場合は、「その特徴によりどれくらいトレーニングデータの損失を小さくできたか」を表示します。

[ソース]

1
gbm.feature_importance(importance_type='gain')

[出力]


2種類の重要度を比較しやすいように、1つのデータフレームにして表示します。

トレーニングデータの損失(gain)の方は、intに丸めてみました。

[ソース]

1
2
3
pd.DataFrame({'特徴':x_titanic.columns,
'重要度(split)':gbm.feature_importance(),
'重要度(gain)':gbm.feature_importance(importance_type='gain').astype(int)})

[出力]

重要度(split)では年齢(Age)の比重が大きく、重要度(gain)では性別(Sex)が最重要であることが把握できます。