SHAP とモデル固有手法の比較
Kernel Explainer から得られる SHAP 値の説明力を、同じく所得データセットで学習したロジスティック回帰の係数と比較します。スクリプトの最後で呼び出される補助関数 plot_importances() は、同じ図上に重要度を描画します。
特徴量を含む X、ラベルを含む y、およびロジスティック回帰の model はすでに読み込まれています。matplotlib.pyplot は plt としてインポート済みです。
この演習はコースの一部です
Pythonで学ぶExplainable AI
演習の手順
- ロジスティック回帰
modelの係数を計算します。 - ロジスティック回帰
modelと、Xからの 10 サンプルによる k-means サマリーを用いて Kernel Explainer を作成し、shap_valuesを計算します。 - 各特徴量の影響度を見積もるため、SHAP 値の絶対値の平均を計算します。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
import shap
# Extract model coefficients
coefficients = ____
# Compute SHAP values
explainer = ____
shap_values = explainer.shap_values(X)
# Calculate mean absolute SHAP values
mean_abs_shap = ____
plot_importances(coefficients, mean_abs_shap)