説明可能なAI③(SHAPの可視化)

summary_plot(bar)

summary_plotを使うと、どの説明変数が大きく影響していたかを可視化することができます。

大局的に結果を確認する場合に便利です。

[Google Colaboratory]

1
2
3
4
shap.summary_plot(shap_values=shap_values,
features=X_test,
plot_type="bar",
max_display=5)

plot_type“bar”を指定することで、各説明変数を貢献度順に確認することができます。(3行目)

max_displayは上位項目の表示数で、今回は上位5項目まで表示しています。(4行目)

[実行結果]

横軸は平均SHAP値、縦軸は説明変数の項目になります。

縦軸の上位項目ほどモデルへの貢献度が高いことを表しており、今回のモデルではRM、LSTATの貢献度が高いことが確認できます。

summary_plot(dot)

次に、plot_type“dot”を指定して実行してみます。(3行目)

[Google Colaboratory]

1
2
3
4
shap.summary_plot(shap_values=shap_values,
features=X_test,
plot_type="dot",
max_display=5)

[実行結果]

各点がデータで、横軸にSHAP値、縦軸に説明変数の項目、色は説明変数の大小を表しています。

RMが高くなるほど予測値も高くなり、RMが低くなるほど予測値も低くなる傾向があります。

一方、LSTATが高ければ予測値は低くなり、LSTATが低ければ予測値は高くなるという傾向を視覚的に確認することができます。