1 背景と歴史
1.1 Shapley値の起源(協力ゲーム理論)
1.1.1 ゲーム理論における公平な分配
Shapley値は、1953年にロイド・シャープレイが協力ゲーム理論の枠組みで提案した解概念である。複数のプレイヤーが協力して報酬を得る状況において、各プレイヤーの貢献度を公平に評価する方法として定義された。各プレイヤーがすべての可能な提携に参加した際の限界貢献の平均を計算し、その総和が全体の報酬と一致するという性質を持つ。この値は、対称性、加法性、無効プレイヤーのゼロ寄与、効率性といった公理を満たす唯一の解であることが知られている。
1.1.2 機械学習への導入(Lundberg & Lee, 2017)
2017年、スコット・ランドバーグとスーイン・リーは、機械学習モデルの予測解釈にShapley値を応用する統一フレームワーク「SHAP」を提案した。従来の解釈手法が個別のモデルやタスクに特化していたのに対し、SHAPはモデルに依存しない汎用的な手法として、加法性特徴量貢献度の理論的基盤を提供した。この論文は機械学習の解釈可能性研究に大きな影響を与え、多くのライブラリや実務で採用されるに至った。
1.2 機械学習解釈手法の潮流
1.2.1 ホワイトボックス vs ブラックボックス
機械学習モデルの解釈手法は、モデル内部の構造が理解可能なホワイトボックスモデル(線形回帰、決定木など)と、内部構造が複雑で直接解釈が困難なブラックボックスモデル(ニューラルネットワーク、アンサンブルなど)に大別される。SHAPはブラックボックスモデルを対象としたポストホック解釈手法に分類され、モデルの訓練後に予測結果の説明を提供する。
1.2.2 グローバル解釈とローカル解釈
モデルの解釈は、データ全体に対してモデルの振る舞いを説明するグローバル解釈と、個々の予測に対してその根拠を説明するローカル解釈に分けられる。SHAPは主にローカル解釈に焦点を当て、各特徴量が特定の予測にどの程度貢献したかを定量化する。しかし、全データ点のSHAP値を集約することでグローバルな特徴量重要度を得ることも可能である。
2 理論的基礎
2.1 加法性モデルとSHAPの定義
2.1.1 線形モデルとの関係
線形回帰モデルでは、各特徴量の係数が予測への貢献度を直接示す。SHAPはこれを一般化し、非線形モデルや複雑な相互作用を含むモデルにおいても、各特徴量の貢献を加法的に分解できるようにした。SHAP値の総和は、予測値から平均予測値を引いた偏差と一致する。
2.1.2 SHAP値の数式表現
SHAP値は、以下の式で定義される。
\[
| \phi_i(f,x) = \sum_{S \subseteq N \setminus \{i\}} \frac{ | S | ! ( | N | - | S | -1)!}{ | N | !} \left[ f_x(S \cup \{i\}) - f_x(S) \right] |
|---|
\]
ここで、\(N\)は全特徴量の集合、\(S\)は特徴量の部分集合、\(f_x(S)\)は特徴量集合\(S\)が与えられたときのモデルの期待予測値である。この式は、すべての可能な部分集合における特徴量\(i\)の限界貢献の重み付き平均を計算する。
2.2 Shapley値の計算
2.2.1 厳密計算の計算量
厳密なShapley値の計算には、すべての特徴量部分集合に対する期待値計算が必要であり、特徴量の数\(M\)に対して\(O(2^M)\)の指数関数的な計算量となる。実用的な特徴量数(数十から数百)では直接計算が不可能であるため、近似手法が不可欠である。
2.2.2 近似手法の必要性
SHAPの実用性を高めるために、計算量を削減する様々な近似アルゴリズムが開発された。代表的なものとして、KernelSHAP、TreeSHAP、DeepSHAPなどがあり、それぞれモデルの種類や計算リソースに応じて選択される。近似による誤差は理論的に評価可能であり、許容範囲内であれば実務で十分活用できる。
2.3 望ましい性質
SHAP値は以下の三つの望ましい性質を満たすように設計されている。
2.3.1 局所的精度(Local Accuracy)
予測値は、全特徴量のSHAP値の総和とベース値(平均予測値)の和として正確に表される。つまり、\(f(x) = \phi_0 + \sum_{i=1}^M \phi_i(f,x)\)が成り立つ。これにより、個々の予測の説明が完全に加法的であることが保証される。
2.3.2 欠落(Missingness)
特徴量が欠損している場合、その特徴量のSHAP値は0となる。これは、観測されていない特徴量は予測に貢献しないという自然な要請である。この性質により、欠損データを含む状況でも一貫した解釈が可能となる。
2.3.3 一貫性(Consistency)
モデルが変更され、ある特徴量の限界貢献がすべての部分集合で増加した場合、その特徴量のSHAP値も減少しない。この単調性は、特徴量の重要度がモデルの振る舞いと整合的に変化することを保証する。多くの他の重要度指標はこの性質を持たない。
3 主要なアルゴリズム
3.1 KernelSHAP
3.1.1 LIMEとの関係
KernelSHAPはLIME(Local Interpretable Model-agnostic Explanations)の枠組みを拡張したものである。LIMEは局所的に線形モデルを当てはめることで解釈を提供するが、その重み付けの仕方によってShapley値の近似とならない場合がある。KernelSHAPはLIMEの損失関数と重みを適切に設計することで、理論的にShapley値と等価な結果を導く。
3.1.2 カーネル重みの設計
| KernelSHAPでは、部分集合\(S\)に対する重みとして、Shapley値の式に現れる係数\(\frac{ | S | ! (M- | S | -1)!}{M!}\)を採用する。また、モデルの予測を部分集合に基づいて推定する際に、欠損特徴量を周辺分布からサンプリングする手法が用いられる。これにより、任意のブラックボックスモデルに対してSHAP値を近似計算できる。 |
|---|
3.2 TreeSHAP
3.2.1 決定木向け高速化
TreeSHAPは、決定木やランダムフォレスト、勾配ブースティング木などの木ベースモデルに特化したアルゴリズムである。木構造を活用することで、部分集合に対する期待値を効率的に計算し、特徴量数に対して多項式時間での計算を実現する。具体的には、木のノードをたどりながら、各特徴量の限界貢献を動的計画法により集計する。
3.2.2 特徴量依存性への対処
TreeSHAPでは、特徴量間の相関を考慮するために、木のパスに沿って条件付き期待値を計算する。これにより、単純に周辺分布を用いるよりも現実的な解釈が得られる。ただし、特徴量が強く相関している場合には、解釈が不安定になる可能性があることが指摘されている。
3.3 DeepSHAP
3.3.1 深層学習モデルへの応用
DeepSHAPは、ニューラルネットワークのような深層学習モデルに特化した近似手法である。各層の線形変換と非線形活性化関数に対して、SHAP値を近似的に伝搬させることで、最終的な出力に対する各入力特徴量の貢献度を計算する。
3.3.2 DeepLIFTとの接続
DeepSHAPは、DeepLIFT(Deep Learning Important FeaTures)と呼ばれる既存の特徴量重要度手法と密接に関連している。DeepLIFTは基準値との差分を伝搬する手法であり、特定の条件下でDeepSHAPと等価になる。この接続により、深層学習モデルに対する効率的な近似が可能となった。
3.4 その他の近似手法
3.4.1 PartitionSHAP
PartitionSHAPは、特徴量をクラスタリングしてグループ化し、グループ単位でShapley値を計算することで近似精度を保ちつつ計算量を削減する手法である。相関の高い特徴量をまとめることで、特徴量依存性に対処しやすくなる利点がある。
3.4.2 SamplingSHAP
SamplingSHAPは、部分集合をランダムにサンプリングし、その結果からShapley値をモンテカルロ推定する手法である。計算コストがサンプル数に比例するため、精度と速度のトレードオフを調整しやすい。適切なサンプル数を設定することで、実用的な近似が可能となる。
4 応用と実践
4.1 特徴量重要度の可視化
4.1.1 要約プロット(Summary Plot)
要約プロットは、全データ点における各特徴量のSHAP値を一覧表示するグラフである。縦軸に特徴量、横軸にSHAP値をとり、各点の色で特徴量の値を示す。これにより、どの特徴量が予測に強く影響し、その影響が正負どちらに働くかを俯瞰できる。
4.1.2 依存プロット(Dependence Plot)
依存プロットは、特定の特徴量の値とそのSHAP値の関係をプロットしたものである。横軸に特徴量の値、縦軸にSHAP値をとり、点の色で他の特徴量の値を示すことで、特徴量間の相互作用を視覚的に確認できる。
4.1.3 フォースプロット(Force Plot)
フォースプロットは、個々の予測における各特徴量の貢献度を力のバランスのように表現する可視化手法である。ベース値から予測値に向けて、正の貢献(予測値を押し上げる)と負の貢献(予測値を押し下げる)が矢印で示される。直感的な理解に優れており、実務での説明責任に役立つ。
4.2 モデルのデバッグとバイアス検出
4.2.1 異常な予測の原因特定
モデルが予期しない予測を出力した場合、SHAP値を調べることでどの特徴量が異常に寄与しているかを特定できる。例えば、学習データに存在しない値の組み合わせに対して大きなSHAP値が割り当てられている場合、モデルが過学習やバイアスを持っている可能性がある。
4.2.2 データ分布の歪みの発見
SHAP値の分布を分析することで、データの偏りやモデルのバイアスを発見できる。特定のグループ(性別、年齢層など)に対して一貫して大きなSHAP値が割り当てられている場合、モデルが不公平な予測をしている兆候となる。SHAPはこのようなバイアスの可視化に有用である。
4.3 ドメイン別応用例
4.3.1 医療診断(リスク因子の特定)
医療分野では、患者の病状予測モデルに対してSHAPを適用し、各検査値や症状が予測に与える影響を解釈する。例えば、糖尿病リスク予測において、年齢やBMI(体格指数)が大きな正の貢献を示す一方、特定の血液検査値が負の貢献を示すことが分かる。これにより、臨床医はモデルの判断根拠を理解しやすくなる。
4.3.2 金融(信用スコアリングの説明)
信用スコアリングモデルでは、顧客のローン審査結果に対してSHAPを用いて説明を提供する。収入、借入額、過去の返済履歴などの特徴量がどの程度審査結果に影響したかを示すことで、拒否理由の透明性が向上する。規制当局への説明責任を果たすためにも利用される。
4.3.3 自然言語処理(テキスト分類の根拠)
テキスト分類モデルに対してSHAPを適用する場合、各単語やトークンが予測クラスに対してどの程度貢献したかを可視化できる。例えば、スパムメール検出において「無料」「緊急」といった単語がスパム判定に強く寄与していることが明らかになる。これにより、モデルの振る舞いを直感的に解釈できる。
5 限界と注意点
5.1 計算コスト
5.1.1 特徴量数に対するスケーラビリティ
SHAP値の計算は特徴量数に対して指数的または多項式的な計算量を必要とするため、特徴量が数百以上になると現実的な時間内での計算が困難になる。特にKernelSHAPは特徴量数が増えると近似精度が低下しやすく、実用的な制約となる。
5.1.2 近似誤差のトレードオフ
近似手法を使用する場合、計算時間と精度の間にトレードオフが存在する。サンプル数や部分集合の数を増やすことで精度は向上するが、計算時間も増加する。実務では、許容できる誤差の範囲内で効率的な近似パラメータを選択する必要がある。
5.2 特徴量独立性の仮定
5.2.1 相関する特徴量への影響
SHAPの計算では、欠損特徴量を他の特徴量から条件付き独立にサンプリングするか、または条件付き期待値を用いる。しかし、特徴量間に強い相関がある場合、この仮定が現実と乖離し、非現実的な対実仮定(counterfactual)に基づいたSHAP値が算出される可能性がある。結果として、解釈が誤解を招くことがある。
5.2.2 条件付き期待値の解釈
条件付き期待値を用いるTreeSHAPなどは、欠損特徴量を観測済み特徴量に依存させて計算するため、相関のある特徴量に対してより現実的な値を与える。しかし、この方法は因果的解釈ではなく、予測モデルの条件付き分布に基づくものである。そのため、因果関係を直接示すものではないことに注意が必要である。
5.3 モデル前提への依存
5.3.1 線形性の仮定からの逸脱
SHAPは加法性を前提としているが、モデルが強い非線形性や高次の相互作用を持つ場合、個々のSHAP値だけではモデルの振る舞いを十分に説明できないことがある。相互作用項を明示的に扱う拡張も提案されているが、一般的な加法性モデルの限界として認識すべきである。
5.3.2 対実仮定の妥当性
SHAP値は「特徴量の一部が欠損した場合、予測値はどのように変化するか」という対実仮定に基づいている。この仮定は観測データの分布から外れた組み合わせを考慮するため、必ずしも現実に起こり得る状況を反映していない。そのため、解釈結果はモデルの予測メカニズムを「記述する」ものであり、因果関係を「証明する」ものではない。
6 関連手法との比較
6.1 LIME(Local Interpretable Model-agnostic Explanations)
6.1.1 理論的整合性の違い
LIMEは局所的に線形モデルを近似する手法であり、その重み付けはShapley値の公理を満たさない。一方、SHAPはLIMEの枠組みを修正することで理論的整合性を達成している。特に、SHAPは局所精度、欠落、一貫性を同時に満たす唯一の加法性説明である点で優れる。
6.1.2 実用的な違い
LIMEは実装が簡単で計算が高速であるが、重みの設定やサンプリング戦略によって結果が不安定になることがある。SHAPは理論的に安定した結果を提供するが、計算コストが高い。実務では、解釈の再現性が重要な場合にSHAPが好まれ、迅速なプロトタイピングにはLIMEが使われることが多い。
6.2 パーミュテーション重要度
6.2.1 グローバル vs ローカル
パーミュテーション重要度は、データ全体における特徴量の重要度を評価するグローバル手法である。一方、SHAPは個々の予測に対するローカルな貢献度を提供する。両者は目的が異なり、相互補完的に使用される。
6.2.2 モデル再学習の有無
パーミュテーション重要度は、特徴量の値をシャッフルしたときの予測精度の低下を測るため、モデルの再学習は不要である。SHAPは再学習を必要としないポストホック手法であり、両者ともモデルを再訓練せずに重要度を計算できる点で共通する。ただし、パーミュテーション重要度は特徴量間の相関に強く影響されるため、解釈には注意が必要である。
6.3 部分依存プロット(PDP)と個人条件付き期待値(ICE)
6.3.1 相互作用の捉え方
PDPは一つの特徴量と予測値の平均的な関係を示すが、他の特徴量との相互作用を平均化してしまう。ICEは個々のデータ点ごとにその関係を示し、相互作用の存在を視覚化できる。SHAPの依存プロットは、相互作用を色で表現できる点でICEに類似するが、より直接的に貢献度を定量化する。
6.3.2 高次元データでの限界
PDPとICEは特徴量数が増えると可視化が困難になる。SHAPも特徴量数が多い場合には要約プロットやフォースプロットで代表的な特徴量に絞る必要がある。高次元データでは、いずれの手法も次元の呪いの影響を受け、解釈の困難さが増す。