K_DM Book
用語集
対象者 標準
対象者別の入口 →

対象者の設定はこのブラウザの中にだけ保存されます。

言語 JA

モデル解釈性

02.9

モデル解釈性

まとめ
モデル解釈性の章では、深さ 4 の木を 100 本積んだ XGBoost のように内部を読めないモデルに対して、「なぜその予測になったか」を特徴量ごとの数値や曲線で説明する手法を学びます。SHAP は 1 件の予測を「基準値 + 各特徴量の貢献」に分解し、30 個の値を足すと予測値に一致する加法性を持つので、個別予測の根拠(ローカル解釈)と全件を重ねた傾向(グローバル解釈)の両方に使えます。PDP / ICE は注目する 1 列だけを動かして予測の変化を曲線にする手法で、所得が増えると住宅価格がどう変わるかのような「効き方の形」を見せます。どちらも scikit-learn や shap ライブラリの関数 1 つで描け、この章ではその読み方と落とし穴を扱います。

直感 #

高精度なモデルほど内部は複雑になり、XGBoost の木 100 本をたどって「なぜこの患者を悪性と予測したか」を人が読むことはできません。解釈性手法はモデルを開く代わりに、入力を少し変えたときの出力の変化を観察して中身を推定します。SHAP は「この特徴量を知らなかったら予測はいくら変わるか」を全順序で平均し、PDP は「この列の値を 50 段階に書き換えたら予測の平均はどう動くか」をなぞります。どちらも特徴量ごとの貢献度や予測の根拠を図にする技術で、feature_importances_ の「どれが重要か」の一歩先、「どう効いているか」に答えます。

この章の構成 #

このチャプターで学べること #

  • SHAP — ゲーム理論の Shapley 値で予測を分解する手法。beeswarm でグローバル、waterfall でローカルの解釈ができる
  • PDP / ICE — 1 列を動かしたときの予測の平均(PDP)とサンプルごとの曲線(ICE)で、特徴量の効き方の形と交互作用を可視化する手法

これがわかるとできること #

  • 「この患者をなぜ悪性と予測したか」のような個別予測の根拠を、SHAP の waterfall で特徴量ごとの数値として説明できる
  • 特徴量の重要度だけでなく「所得が 5 を超えると価格の伸びが鈍る」のような方向性と非線形性を PDP で把握できる
  • 「築年数が古いほど高い」のような直感に反する曲線から、モデルのバグやデータの偏りを発見できる

学習の進め方 #

まず SHAP で、乳がんデータに当てた XGBClassifier を TreeExplainer で分解し、beeswarm・waterfall・scatter の 3 つの図でローカルとグローバルの解釈を押さえます。次に PDP / ICE で、カリフォルニア住宅価格のモデルを PartialDependenceDisplay で可視化し、1 列の効果の形と ICE の帯の割れ方から交互作用を読む方法に進みます。最後に、どちらもモデルの振る舞いであって因果ではないという注意点を、HouseAge の曲線を例に確認します。