メインコンテンツに移動

SHAPとLIMEの違いとは?機械学習モデルの説明可能性を高める手法を理解する

機械学習モデルの精度が高くなるほど、その判断理由は人間にとって理解しにくくなります。線形回帰や浅い決定木のようなシンプルなモデルであれば、どの特徴量がどのように予測に影響しているかを比較的説明しやすいです。しかし、ランダムフォレスト、勾配ブースティング、ニューラルネットワーク、深層学習モデルのように構造が複雑になると、モデルが高い精度を出していても、「なぜこの人は審査に落ちたのか」「なぜこの顧客は解約リスクが高いと判断されたのか」「なぜこの画像が異常と分類されたのか」を直感的に説明することが難しくなります。

この問題に対応するために使われるのが、説明可能AI、つまりExplainable AIやXAIと呼ばれる考え方です。XAIでは、モデルの予測結果を人間が理解しやすい形で説明し、判断の透明性や信頼性を高めることを目指します。特に、金融、医療、教育、人事、保険、AIプロダクトなどでは、単にモデルのスコアが高いだけでは不十分です。モデルがどの特徴量を重視し、どのような理由で判断したのかを説明できなければ、利用者や現場担当者が安心して使うことは難しくなります。

SHAPとLIMEは、この説明可能AIを代表する手法です。どちらも「モデルがなぜその予測をしたのか」を説明するために使われますが、仕組みや考え方は大きく異なります。SHAPはゲーム理論に基づいて特徴量の貢献度を一貫した形で計算する手法であり、モデル全体の傾向分析にも個別予測の説明にも使いやすい特徴があります。一方、LIMEは特定の予測の周辺だけをシンプルなモデルで近似し、その場で分かりやすい説明を作る手法です。この記事では、SHAPとLIMEの違いを、仕組み、特徴、メリット、注意点、実務での使い分けまで整理して解説します。

1. SHAPとLIMEの基本的な違い

SHAPとLIMEは、どちらもブラックボックス化しやすい機械学習モデルを説明するための手法です。ここでいうブラックボックスとは、入力から出力までの関係は確認できるものの、内部でどの特徴量がどのように判断へ影響したのかが分かりにくいモデルを指します。たとえば、勾配ブースティングや深層学習モデルは高い予測性能を出しやすい一方で、人間が判断過程をそのまま読むことは難しくなります。

SHAPとLIMEの大きな違いは、説明を作る考え方にあります。SHAPは、各特徴量が予測結果にどれだけ貢献したかを、ゲーム理論の考え方に基づいて計算します。そのため、説明の一貫性や理論的な整合性を重視する場面に向いています。一方、LIMEは、ある1つの予測結果の近くにあるデータだけを使い、複雑なモデルの動きをシンプルなモデルで局所的に近似します。そのため、個別ケースの説明を素早く作りたい場面に向いています。

SHAPとLIMEの違いを整理すると、次のようになります。

項目SHAPLIME
基本思想ゲーム理論ベース局所近似モデル
説明範囲グローバル分析とローカル説明の両方に使いやすい主にローカル説明に向いている
安定性比較的高く、一貫した説明を得やすいサンプリングや近似条件によって変動しやすい
計算コスト高くなりやすい比較的軽く使いやすい
解釈の一貫性高いケースごとに変わりやすい
主な用途モデル全体の理解、特徴量重要度分析、個別説明個別予測の理由説明、簡易なブラックボックス説明

このように、SHAPは「一貫性のある説明」を重視し、LIMEは「その場で分かりやすく説明すること」を重視する手法だと考えると理解しやすくなります。どちらが常に優れているというよりも、モデル全体を分析したいのか、個別の予測理由を素早く確認したいのか、説明の安定性を重視するのか、計算コストを抑えたいのかによって使い分けることが重要です。

2. SHAPの考え方

SHAPは、Shapley Additive Explanationsの略で、ゲーム理論のシャープレイ値に基づいたモデル説明手法です。シャープレイ値は、複数の参加者が協力して得た成果を、それぞれの貢献度に応じて公平に分配する考え方です。これを機械学習に置き換えると、各特徴量がモデルの予測結果にどれだけ貢献したのかを公平に分配するという考え方になります。

たとえば、住宅価格予測モデルで、面積、駅からの距離、築年数、地域、階数などの特徴量があるとします。モデルがある物件の価格を高く予測した場合、SHAPは「面積が大きいことがどれだけ価格を上げたのか」「駅から近いことがどれだけ価格を上げたのか」「築年数が古いことがどれだけ価格を下げたのか」を数値として示します。これにより、単に予測値を見るだけでなく、どの特徴量が予測を押し上げ、どの特徴量が押し下げたのかを理解できます。

2-1. SHAPの仕組み

SHAPでは、ある予測値を「平均的な予測値」と「各特徴量の貢献度」の合計として説明します。平均的な予測値はBase Valueと呼ばれ、そこから各特徴量のSHAP Valueが足し引きされ、最終的な予測値になります。この構造によって、モデルの予測を分解して理解できるようになります。

SHAPを理解するうえで重要な用語を整理します。

用語説明
Shapley Value各特徴量の貢献度を公平に分配するための値です。特徴量がある場合とない場合の予測差を、さまざまな組み合わせで考慮します。
Contribution予測に対する影響度です。特徴量が予測値を上げたのか、下げたのかを確認できます。
Base Valueモデルの平均的な予測値です。個別予測を説明するときの出発点になります。
SHAP Value各特徴量がBase Valueから最終予測をどれだけ動かしたかを表す値です。正の値なら予測を押し上げ、負の値なら押し下げます。

SHAPの特徴は、個別予測を説明できるだけでなく、全データに対するSHAP Valueを集計することで、モデル全体の特徴量重要度を分析できる点です。たとえば、全体としてどの特徴量がモデルの判断に大きく影響しているのか、ある特徴量の値が大きくなると予測が上がりやすいのか下がりやすいのかを確認できます。そのため、モデルのデバッグ、特徴量の見直し、説明資料の作成、リスク確認などに使いやすい手法です。

2-2. SHAPの特徴

SHAPの大きな強みは、理論的に一貫した説明を得やすいことです。特徴量の貢献度を公平に分配するという考え方に基づいているため、同じモデルと同じデータに対して、比較的安定した説明を得やすくなります。また、個別データの説明だけでなく、モデル全体の傾向を分析できるため、実務でのモデル理解にも向いています。

一方で、SHAPには計算コストが高くなりやすいという注意点があります。特徴量の組み合わせを考慮する性質があるため、特徴量数が多い場合やデータ量が大きい場合には、厳密な計算が重くなります。そのため、実務ではTree SHAPのように木系モデル向けに高速化された方法や、近似計算を使うことが多くなります。

SHAPの特徴を整理すると、次のようになります。

観点内容
強み理論的に整っており、一貫した特徴量貢献度を出しやすい
向いている分析モデル全体の傾向把握、特徴量重要度、個別予測の説明
注意点特徴量数やデータ量が多いと計算コストが高くなりやすい
実務での使い方モデル監査、説明資料作成、特徴量改善、リスク分析に使いやすい

SHAPを使うと、モデルがどの特徴量を重視しているかを比較的体系的に確認できます。ただし、SHAP Valueは「モデルがどのように判断したか」を示すものであり、「その特徴量が現実世界で原因である」ことを示すものではありません。たとえば、ある特徴量のSHAP Valueが大きくても、それが結果の原因であるとは限らず、他の特徴量との相関やデータの偏りによって重要に見えている可能性もあります。この点は、SHAPを実務で使う際に必ず注意すべきポイントです。

3. LIMEの考え方

LIMEは、Local Interpretable Model-agnostic Explanationsの略で、ある1つの予測に注目し、その周辺だけをシンプルなモデルで近似して説明する手法です。LIMEは、複雑なモデルを直接解析するのではなく、説明したいデータの近くでモデルがどのように振る舞っているかを局所的に調べます。そのため、個別ケースの説明に特に向いています。

たとえば、ある顧客が「解約リスクが高い」と予測された場合、LIMEはその顧客データを少しずつ変化させた人工的なデータを作り、それらに対して元の複雑なモデルがどのような予測をするかを確認します。そして、その周辺の予測結果を、線形モデルなどの単純なモデルで近似します。この単純なモデルの係数を見ることで、「この顧客では利用頻度の低下が解約リスクを上げている」「サポート問い合わせ回数が予測に影響している」といった説明を得ることができます。

3-1. LIMEの仕組み

LIMEでは、説明したい1つのデータを中心に、その周辺のデータを人工的に生成します。この人工的に生成されたデータはPerturbationと呼ばれます。次に、元データに近いものほど大きな重みを与え、遠いものほど小さな重みを与えます。そのうえで、元のブラックボックスモデルの予測結果を、単純なモデルで近似します。

LIMEの仕組みを理解するための用語を整理します。

用語説明
Local Model対象データの周辺だけを説明するために作る簡単なモデルです。線形モデルや決定木など、理解しやすいモデルが使われます。
Perturbation入力データを少しずつ変化させて、周辺データを人工的に作る処理です。
Weighting元データに近いサンプルほど大きく、遠いサンプルほど小さく重み付けする処理です。
Explanation局所近似モデルの結果をもとに作られる説明です。どの特徴量がその予測に効いたかを示します。

LIMEの考え方は、複雑な地形全体を完全に理解するのではなく、足元の周辺だけを平らな面として近似するようなものです。モデル全体の構造は複雑でも、ある1つのデータの近くでは、単純なモデルでおおよその動きを説明できる場合があります。この局所的な分かりやすさが、LIMEの大きな特徴です。

3-2. LIMEの特徴

LIMEの強みは、モデルに依存しにくいことです。LIMEは、元のモデルの内部構造を直接使うのではなく、入力を少し変えたときに出力がどう変わるかを見て説明を作ります。そのため、ランダムフォレスト、勾配ブースティング、ニューラルネットワーク、テキスト分類モデル、画像分類モデルなど、さまざまなブラックボックスモデルに適用しやすい特徴があります。

一方で、LIMEの説明は局所的な近似に依存するため、データの作り方、サンプリング、重み付け、ランダム性によって結果が変わる可能性があります。同じデータを説明していても、条件を変えると重要とされる特徴量が変わることがあります。そのため、LIMEは柔軟で使いやすい反面、説明の安定性には注意が必要です。

LIMEの特徴を整理すると、次のようになります。

観点内容
強みモデルに依存せず、個別予測を比較的軽く説明できる
向いている分析1件ごとの予測理由確認、デバッグ、簡易なブラックボックス説明
注意点サンプリングや近似条件によって説明が変動することがある
実務での使い方個別ケースの確認、顧客説明、異常予測の理由確認に使いやすい

LIMEは、特定の予測について「このケースでは何が効いていそうか」を素早く把握するのに便利です。ただし、その説明をモデル全体の一般的な傾向として扱うのは危険です。LIMEはあくまでローカルな説明であり、ある個別データの近くでの近似結果です。そのため、モデル全体の特徴量重要度や一貫した説明が必要な場合には、SHAPなど別の手法と組み合わせて確認する方が安全です。

4. SHAPとLIMEの使い分け

SHAPとLIMEはどちらも有用ですが、目的によって適した場面が異なります。モデル全体の傾向を理解したい場合や、特徴量重要度を安定して比較したい場合にはSHAPが向いています。一方で、特定の1件について素早く説明したい場合や、モデル内部にアクセスしづらいブラックボックスモデルを局所的に説明したい場合にはLIMEが使いやすいです。

実務では、SHAPとLIMEを対立する手法として考えるよりも、補完的に使う方が効果的です。たとえば、まずSHAPでモデル全体がどの特徴量を重視しているかを把握し、その後、気になる個別ケースについてLIMEで局所的な説明を確認することができます。逆に、LIMEで見つけた不自然な個別説明をきっかけに、SHAPで全体傾向を確認することもできます。

用途ごとの使い分けを整理すると、次のようになります。

シーン適した手法理由
モデル全体の理解SHAP一貫した特徴量重要度分析がしやすい
個別予測の説明LIME軽量で柔軟に個別ケースを説明しやすい
特徴量重要度の比較SHAPグローバル分析に強く、全体傾向を見やすい
デバッグ用途両方SHAPで全体傾向、LIMEで局所的な説明を確認できる
リアルタイム説明LIMESHAPより計算コストを抑えやすい場合がある
モデル監査SHAP説明の一貫性が重要な場面で使いやすい

使い分けで重要なのは、説明の目的を明確にすることです。社内でモデルの傾向を分析したいのか、個別ユーザーに説明したいのか、規制や監査に備えて説明可能性を高めたいのか、モデル改善のために特徴量の影響を見たいのかによって、適した手法は変わります。説明可能性は、単にグラフを出すことではなく、誰に対して、何を、どの深さで説明するかを設計することが重要です。

5. よくある誤解

SHAPとLIMEは便利な手法ですが、使い方を誤ると説明を過信してしまう危険があります。どちらもモデルの判断を理解するための補助であり、現実世界の因果関係を直接証明するものではありません。また、説明結果はデータ、モデル、前処理、特徴量設計、近似方法に影響されます。そのため、説明結果をそのまま絶対的な真実として扱うのではなく、モデルの挙動を確認するための手がかりとして使う必要があります。

特に実務では、説明結果が分かりやすいほど信頼されやすくなります。しかし、分かりやすい説明が必ず正確であるとは限りません。説明可能性の手法は、モデルの透明性を高めるために役立ちますが、データの偏り、特徴量の相関、モデルの限界、評価指標のズレまで自動的に解決してくれるわけではありません。

5-1. SHAPが常に正しいわけではない

SHAPは理論的に整った手法ですが、常に現実世界の正しい理由を示すわけではありません。SHAPが説明するのは、あくまで「モデルがどの特徴量を使って予測を動かしたか」です。たとえば、ある特徴量のSHAP Valueが大きい場合、その特徴量がモデルの判断に強く影響したことは分かります。しかし、それが現実の原因であるとは限りません。特徴量同士に強い相関がある場合、どちらの特徴量に貢献度が割り当てられるかは、データや計算方法に影響されることがあります。

また、大規模データや複雑なモデルでは、SHAPの厳密計算が重くなるため、近似手法を使うことがあります。この場合、近似方法によって結果が多少変わる可能性があります。SHAPは強力な説明手法ですが、出力された値をそのまま因果関係や業務判断の絶対的根拠として扱うのではなく、モデルの挙動を理解するための分析結果として読むことが重要です。

5-2. LIMEは不正確というわけではない

LIMEは局所近似に基づくため、説明が変動する可能性があります。そのため、SHAPに比べて不安定だと言われることがあります。しかし、それはLIMEが役に立たないという意味ではありません。LIMEは、複雑なモデルを局所的に分かりやすい形で説明できる柔軟な手法です。特定の予測について、どの特徴量が影響していそうかを素早く把握したい場面では非常に有用です。

ただし、LIMEの説明は、対象データの周辺をどのように作るか、どの範囲を近いとみなすか、どの単純モデルで近似するかによって変わります。そのため、重要な意思決定に使う場合は、同じ条件で複数回確認したり、SHAPなど別の手法と比較したりすることが望ましいです。LIMEは不正確というよりも、局所的で柔軟な説明を作る手法であり、その性質を理解して使うことが重要です。

6. 実務での活用ポイント

SHAPとLIMEを実務で使うときは、技術的に説明を出すだけでは不十分です。説明結果を誰が読み、何の意思決定に使い、どの程度の詳しさが必要なのかを考える必要があります。データサイエンティストが見る説明、現場担当者が見る説明、ユーザーに見せる説明、監査やレビューで使う説明は、それぞれ求められる粒度が異なります。

たとえば、開発者向けにはSHAPの詳細な特徴量貢献度や依存関係プロットが役立つかもしれません。一方、一般ユーザーに対しては、「利用履歴が少ないためおすすめ度が下がりました」「入力された収入情報と返済履歴が審査に影響しました」のように、分かりやすい文章へ変換する必要があります。説明可能性は、モデルの内部をそのまま見せることではなく、相手が理解し、納得し、次の行動を取れる形に変換することが重要です。

実務での活用ポイントを整理すると、次のようになります。

観点ポイント
モデル理解SHAPで全体傾向を確認し、モデルがどの特徴量を重視しているかを見る
個別説明LIMEやSHAPで個別ケースの予測理由を確認する
UX技術的な数値をユーザーに分かる説明文へ変換する
リスク管理誤判定の理由や偏った特徴量利用を確認する
改善重要特徴量や不自然な説明をもとに、データや特徴量設計を見直す

実務では、説明可能性をモデル改善にも活用できます。たとえば、SHAPで本来使ってほしくない特徴量が強く効いていることが分かれば、特徴量設計やデータ収集を見直すきっかけになります。LIMEで個別ケースの説明が不自然に見える場合、そのケースのデータ品質、前処理、ラベル、特徴量の意味を確認できます。説明可能性は、単なる説明資料を作るためだけでなく、モデルの品質管理や改善サイクルにも役立ちます。

まとめ

SHAPとLIMEは、どちらも機械学習モデルの「なぜ」を理解するための重要な手法です。SHAPはゲーム理論に基づいて特徴量の貢献度を一貫して計算し、モデル全体の傾向分析や特徴量重要度の把握に向いています。個別予測の説明にも使えるため、モデル監査やリスク分析、特徴量改善にも活用しやすい手法です。一方、LIMEは特定の予測の周辺だけをシンプルなモデルで近似し、個別ケースを柔軟に説明することに強みがあります。

重要なのは、SHAPとLIMEのどちらが優れているかを単純に決めることではありません。モデル全体を安定して理解したい場合はSHAP、個別予測を素早く説明したい場合はLIME、より慎重に検証したい場合は両方を組み合わせるというように、目的に応じて使い分けることが大切です。また、どちらの手法も因果関係を直接示すものではなく、あくまでモデルの判断を説明するための手段である点に注意する必要があります。

機械学習モデルを実務で使う場合、精度だけでなく説明可能性も重要になります。モデルが高精度でも、判断理由を説明できなければ、現場担当者やユーザーが安心して使えないことがあります。SHAPとLIMEを適切に活用することで、モデルの透明性を高め、誤判定の理由を分析し、特徴量やデータを改善し、AIシステムへの信頼性を高めることができます。説明可能性は、モデルを理解するための補助ではなく、実務でAIを安全に使うための重要な設計要素です。

LINE Chat