説明可能性手法
説明可能性手法
AIの判断理由を説明する技術。LIME、SHAP、Attention可視化、Saliency Map、概念ベース説明。
最終更新:2025年11月
1. 説明可能性の概要
1.1 XAI(Explainable AI)
AIの判断を人間が理解できる形で説明する技術。
- 透明性:モデルの動作を明らかに
- 信頼性:判断根拠の提示
- 規制対応:説明責任の履行
1.2 説明のレベル
| レベル | 対象 | 例 |
|---|---|---|
| 局所的 | 個別予測 | 「この画像が猫と判断された理由」 |
| 大局的 | モデル全体 | 「このモデルが重視する特徴」 |
| 概念的 | 高レベル概念 | 「ふわふわした毛並みが重要」 |
1.3 手法の分類
- モデル非依存:任意のモデルに適用(LIME、SHAP)
- モデル特化:特定アーキテクチャ向け(Attention可視化)
- 事後的:訓練後に適用
- 内在的:モデル設計で透明性確保
2. 局所的説明
2.1 LIME
LIME(Local Interpretable Model-agnostic Explanations)(Ribeiro et al. 2016)
アイデア:
予測の「近傍」で単純なモデル(線形)を学習
手順:
1. 入力の周辺でサンプルを生成
2. 元のモデルで各サンプルを予測
3. 距離で重み付けした線形モデルを学習
4. 線形モデルの係数を説明として使用
2.2 LIMEの適用例
- テキスト:どの単語が予測に影響したか
- 画像:どの領域が重要か
- テーブル:どの特徴量が寄与したか
2.3 SHAP
SHAP(SHapley Additive exPlanations)(Lundberg & Lee 2017)
ゲーム理論のShapley値を特徴量の寄与に適用。
Shapley値:
各特徴量がすべての部分集合に加わった際の
平均的な貢献度
特性:
- 局所正確性:説明の和 = 予測
- 一貫性:特徴の影響が大きければ寄与も大
- 公平な配分:ゲーム理論的に公正
2.4 SHAPのバリエーション
| 手法 | 対象 |
|---|---|
| KernelSHAP | 任意のモデル(近似) |
| TreeSHAP | 決定木・勾配ブースティング |
| DeepSHAP | ニューラルネットワーク |
| PartitionSHAP | 特徴グループ |
2.5 LIME vs SHAP
| 観点 | LIME | SHAP |
|---|---|---|
| 理論的基盤 | 経験的 | ゲーム理論 |
| 一貫性 | 不安定なことも | 理論的保証あり |
| 計算コスト | 比較的軽い | 重い(厳密計算) |
3. 大局的説明
3.1 特徴量重要度
- Permutation Importance:特徴をシャッフルして性能低下を測定
- Mean SHAP:SHAP値の絶対値平均
- モデル固有:Random Forestの不純度減少など
3.2 Partial Dependence Plot (PDP)
特徴量と予測の関係を可視化:
手順:
1. 対象特徴量の値を固定
2. 他の特徴量はデータの分布から
3. 予測値の平均を計算
4. 対象特徴量の各値で繰り返し
→ 特徴量の変化が予測に与える平均的影響
3.3 Individual Conditional Expectation (ICE)
PDPの個別版:各サンプルごとの線を描画。
- 交互作用の存在を視覚化
- PDPでは平均化で隠れる効果を発見
3.4 Global Surrogate
複雑なモデルを単純なモデルで近似:
- 決定木で近似 → ルールを抽出
- 線形モデルで近似 → 係数を解釈
- 近似精度と解釈性のトレードオフ
4. 勾配ベース手法
4.1 Saliency Map
入力に対する出力の勾配を可視化。
Saliency = |∂y/∂x|
y: 予測スコア
x: 入力(画像のピクセル等)
→ どの入力が予測に敏感か
4.2 Integrated Gradients
Sundararajan et al. (2017):ベースラインからの勾配を積分。
IG(x) = (x - x') × ∫ (∂F/∂x) dα
x: 入力
x': ベースライン(例:黒画像)
積分経路:x'からxへの直線
特性:
- 感度:影響があれば非ゼロ
- 実装不変:同じ機能なら同じ帰属
- 完全性:帰属値の和 = 予測差
4.3 GradCAM
Selvaraju et al. (2017):CNNの最終畳み込み層の勾配を使用。
手順:
1. クラスcに対する特徴マップの勾配を計算
2. 勾配をGlobal Average Pooling
3. 特徴マップの重み付き和
4. ReLUで正の寄与のみ
→ 「どこを見て判断したか」のヒートマップ
4.4 手法の比較
| 手法 | 特徴 |
|---|---|
| Vanilla Gradient | シンプル、ノイズが多い |
| SmoothGrad | ノイズ追加で平滑化 |
| Integrated Gradients | 理論的保証あり |
| GradCAM | 解像度低いが直感的 |
5. Attention分析
5.1 Attention可視化
Transformerのattention重みを可視化。
- どのトークンに注目しているか
- 直感的で解釈しやすい
- 各層・各ヘッドで異なるパターン
5.2 注意点
Attention ≠ 説明(Jain & Wallace 2019):
- Attentionは因果関係を示さない
- 同じ予測でも異なるAttentionパターン可能
- 説明として使う際は注意が必要
5.3 BertViz
BERT系モデルのAttention可視化ツール:
- 層ごと・ヘッドごとの表示
- トークン間の接続を可視化
- インタラクティブな探索
5.4 Attention Rollout
複数層のAttentionを統合:
- 単一層では全体像が見えない
- 層を通じたAttentionの伝播を追跡
- より正確な寄与の推定
6. 概念ベース説明
6.1 TCAV
TCAV(Testing with Concept Activation Vectors)(Kim et al. 2018)
人間が理解できる概念での説明。
例: 「この画像がシマウマと判断された理由は?」
TCAV:
- 「縞模様」という概念の方向を学習
- その方向が予測にどう影響するかを測定
→ 「縞模様が予測に強く寄与している」
6.2 Concept Bottleneck Models
Koh et al. (2020):概念を中間表現として強制。
入力 → [概念予測] → 概念ベクトル → [最終予測]
例(鳥の分類):
画像 → [羽の色: 赤, くちばし: 長い, ...] → 種類
利点:
- 概念レベルでの説明が自然
- 概念を修正して介入可能
6.3 自然言語説明
LLMによる説明生成:
- 判断理由を自然言語で出力
- Chain-of-Thought的な説明
- 注意:説明が正確とは限らない(事後合理化の可能性)
6.4 説明の評価
| 観点 | 内容 |
|---|---|
| 忠実性 | 説明がモデルの実際の動作を反映 |
| 理解可能性 | 人間が理解できるか |
| 一貫性 | 類似入力で類似の説明 |
| 有用性 | 意思決定に役立つか |
7. 参考文献
局所的説明
- Ribeiro et al. (2016). "Why Should I Trust You?: Explaining the Predictions of Any Classifier" KDD(LIME)
- Lundberg & Lee (2017). "A Unified Approach to Interpreting Model Predictions" NeurIPS(SHAP)
勾配ベース
- Sundararajan et al. (2017). "Axiomatic Attribution for Deep Networks" ICML(Integrated Gradients)
- Selvaraju et al. (2017). "Grad-CAM: Visual Explanations from Deep Networks" ICCV
概念ベース
- Kim et al. (2018). "Interpretability Beyond Feature Attribution: Quantitative Testing with Concept Activation Vectors" ICML(TCAV)
- Koh et al. (2020). "Concept Bottleneck Models" ICML
Attention
- Jain & Wallace (2019). "Attention is not Explanation" NAACL