用語比較
Permutation ImportanceとSHAPの違い|特徴量の重要度を測る2つの方法(G検定)
Permutation Importanceは、特徴量の値をランダムに並べ替えてモデルのスコアの悪化を見る方法です。SHAPは、特定の予測に対して各特徴量に重要度の値を割り当てる方法です。
シャッフルしてスコアの下がり方を見るなら前者、1つの予測への寄与をシャープレイ値で出すなら後者と覚えると、G検定の説明可能AI(XAI)の設問で見分けられます。
この記事の目次
この記事の根拠と出典
各セクションの見出しの下に、公式資料で確認した内容か編集部の整理かをラベルで示しています。 試験日・料金・申込条件・試験方式は変わることがあるため、申込前に公式サイトで確認してください。
Permutation ImportanceとSHAPの要点
Permutation Importance
値をシャッフルしたときのスコアの悪化で、モデルの依存度を調べる。
SHAP
値は協力ゲーム理論に由来するシャープレイ値で、1件ごとの予測に使う。
共通する点
どちらも、中身が分かりにくいモデルの判断の根拠を、特徴量ごとの重要度として示す。JDLAのシラバス2024は、モデルの解釈性のキーワードとして両方を挙げている。
違いを表で確認
| 比較軸 | Permutation Importance | SHAP |
|---|---|---|
| 測り方 | Permutation Importance:特徴量の値をランダムに並べ替え、スコアの悪化を観察する | SHAP:各特徴量に重要度の値を割り当てる。値は元のモデルの条件付き期待値関数のシャープレイ値 |
| 見る単位 | Permutation Importance:データセットに対するモデルのスコア。特徴量がモデルの性能にどれだけ寄与するかを測る | SHAP:特定の予測。1件の入力に対する各特徴量の寄与 |
| 必要なもの | Permutation Importance:学習済みモデル、データ、スコアを決める評価指標。シャッフルの回数(n_repeats)も決める | SHAP:モデルの予測と、特定の入力 |
| 結果の読み方の注意・理論の裏づけ | Permutation Importance:強く相関する2つの一方を並べ替えても、もう一方から情報を得られ、両方の重要度が低く出る。ホールドアウト集合で計算すれば汎化性能への寄与が分かる | SHAP:論文は、局所的な正確さ・欠落性・一貫性の3つの性質を満たす解がシャープレイ値だけだと示す |
| 設問の手がかり語 | Permutation Importance:シャッフル、並べ替え、スコアの悪化 | SHAP:シャープレイ値、各特徴量への割り当て、特定の予測 |
G検定の学習に使う書籍(Amazon)
PRどこで迷っているかを切り分ける
XAIの手法を、名前の羅列として覚えている人
JDLAのシラバス2024は、大項目6のモデルの解釈性に、CAM、Grad-CAM、LIME、Permutation Importance、SHAP、説明可能AIを挙げています。画像に使う手法と、特徴量の重要度を示す手法に分けると、整理しやすくなります。Permutation ImportanceとSHAPは後者です。
LIMEとSHAPの違いは分かるが、Permutation Importanceが出ると迷う人
LIMEもSHAPも、1つの予測を説明する方法です。Permutation Importanceは、1つの予測ではなく、データセットに対するモデルのスコアの悪化で測ります。見る単位が違う点で区別します。
重要度が低い特徴量は、不要な特徴量だと考える人
scikit-learnの公式文書は、Permutation Importanceは特徴量そのものの予測力ではなく、その特徴量が特定のモデルにとってどれだけ重要かを表すと述べます。悪いモデルで重要度が低い特徴量が、良いモデルでは非常に重要なことがあります。
SHAPがなぜ「シャープレイ値」と呼ばれるのか知りたい人
SHAPの論文は、SHAP値を元のモデルの条件付き期待値関数のシャープレイ値と定義します。シャープレイ値は協力ゲーム理論に由来する値で、特徴量を協力するプレイヤーに見立てて寄与を割り当てます。
具体例で使い分ける
例 1
モデル全体でどの特徴量が効いているか調べる場合
学習済みの予測モデルがあり、どの特徴量にモデルが頼っているかを一覧にしたい。
- 特徴量を1つずつシャッフルして、スコアがどれだけ下がるかを比べます。
- ホールドアウト集合で計算すれば、汎化性能への寄与が大きい特徴量が分かります。
- 訓練集合で重要でホールドアウトで重要でない特徴量は、過学習の原因になりうると公式文書は述べます。
結論: モデル全体のスコアに対する依存を見たいので、Permutation Importanceの場面です。
例 2
1件の予測の理由を説明する場合
ある1人の入力に対する予測値について、どの特徴量がどれだけ押し上げたかを示したい。
- 特定の予測に対して各特徴量に重要度の値を割り当てるのは、SHAPの役割です。
- 局所的な正確さにより、説明モデルの出力はその入力での元のモデルの出力と一致します。
- 一貫性により、モデルが変わって寄与が増えたのに、その特徴量の割り当てが減ることはありません。
結論: 1件の予測の根拠を示したいので、SHAPの場面です。
例 3
シャッフルで重要度が下がって見える場合(架空の数値)
相関の強い2つの特徴量AとBを持つモデルで、Aだけを並べ替えると、スコアは0.80から0.79にしか下がりません。
- Aを並べ替えても、モデルはAに近い情報をBから得られます。
- そのため、AもBも重要度が低く報告されることがあります。
- 公式文書は、対処の一つとして、相関する特徴量をクラスタに分けて各クラスタから1つだけ残す方法を挙げます。
結論: 重要度が小さいことは、重要でないことを意味しません。数値は説明用の架空のものです。
問題文から答えを選ぶ手順
- 1
何を説明したいかを決める
モデル全体でどの特徴量に頼っているかか、1件の予測の理由かを決めます。前者はPermutation Importance、後者はSHAPの出番です。
- 2
設問の手がかり語を探す
シャッフル、並べ替え、スコアの悪化ならPermutation Importance、シャープレイ値、各特徴量への割り当てならSHAPです。
- 3
使うデータを確かめる
Permutation Importanceでは、訓練集合かホールドアウト集合かで意味が変わります。汎化性能への寄与を見るなら、ホールドアウトを使います。
- 4
相関する特徴量に注意する
強く相関する特徴量があると、Permutation Importanceは重要度を小さく報告することがあります。結果を読む前に相関を確認します。
試験での見分け方
- 1Permutation Importanceは、1つの特徴量の値をランダムにシャッフルし、モデルのスコアの悪化を観察して、モデルがその特徴量にどれだけ依存しているかを調べる方法である。
- 2SHAPは、特定の予測に対して各特徴量に重要度の値を割り当てる方法で、値は元のモデルの条件付き期待値関数のシャープレイ値である。
- 3Permutation Importanceは、特徴量そのものの予測力ではなく、特定のモデルにとっての重要度を表す。
- 4Permutation Importanceは、予測だけに基づくので、木に基づくモデルに限らずあらゆるモデルのクラスに使える。
- 5強く相関する特徴量があると、Permutation Importanceは両方の重要度を低く報告することがある。
誤答しやすい選択肢
Permutation Importanceを、1つの予測を説明する方法と考える
修正: 特徴量をシャッフルしてモデルのスコアの悪化を見る方法で、データセットに対するモデルの性能への寄与を測ります。特定の予測の説明は、SHAPやLIMEの役割です。
重要度が低い特徴量は、予測に役立たないと決める
修正: 重要度は特定のモデルにとっての値です。悪いモデルで低い特徴量が、良いモデルでは非常に重要なことがあります。重要度を計算する前に、ホールドアウト集合などでモデルの性能を確かめます。
相関する特徴量があっても重要度をそのまま読む
修正: 強く相関する特徴量の一方をシャッフルしても、モデルはもう一方から情報を得られるため、両方の重要度が小さく出ます。公式文書は、相関する特徴量をクラスタに分けて1つだけ残す方法を挙げます。
訓練集合で計算した重要度を、汎化性能への寄与と読む
修正: 訓練集合で重要でも、ホールドアウト集合で重要でない特徴量は、過学習の原因になりうると公式文書は述べます。汎化性能への寄与は、ホールドアウト集合で見ます。
確認問題
Q1特徴量の値をランダムに並べ替え、モデルのスコアの悪化を観察する方法は?
答え: Permutation Importance
並べ替えて特徴量とターゲットの関係を壊し、モデルがその特徴量にどれだけ依存しているかを調べます。
Q2特定の予測に対して各特徴量に重要度の値を割り当て、その値がシャープレイ値である方法は?
答え: SHAP
シャープレイ値は協力ゲーム理論に由来する値です。
Q3強く相関する特徴量があると、Permutation Importanceの結果はどうなりますか?
答え: 両方の重要度が低く報告され、実際には重要でも重要でないように見えることがある
一方を並べ替えても、モデルはもう一方から情報を得られるためです。
Q4Permutation Importanceで、モデルの汎化性能への寄与を見るには、どのデータで計算しますか?
答え: ホールドアウトの検証・テスト集合
訓練集合で重要でホールドアウトで重要でない特徴量は、過学習の原因になりうるためです。
到達チェック
- Permutation ImportanceとSHAPの測り方を、一言ずつで言える
- 見る単位(データセットに対するスコアか、1つの予測か)の違いを説明できる
- 相関する特徴量があるときの注意を挙げられる
- シラバス2024のモデルの解釈性のキーワードを挙げられる
関連ページで確認する
同じ資格で次に知りたいこと
- DPOとRLHFの違い|報酬モデルと強化学習を使うかで見分ける(G検定)
DPO(Direct Preference Optimization)とRLHFの違いを、報酬モデルの有無、強化学習の使用、学習中のサンプリング、学習手順の複雑さで比較。どちらも人間の好みに言語モデルを合わせる方法です。G検定のRLHFの理解に役立つ見分け方と確認問題を、DPO原論文で照合して整理します。
- 自己教師あり学習と教師なし学習の違い|予測対象と学習目的で見分ける(G検定)
自己教師あり学習と教師なし学習の違いを、人手ラベル、予測対象の作り方、学習目的、BERTのマスク予測、クラスタリング・次元削減の5点で比較。G検定での見分け方と確認問題まで整理します。
- 訓練誤差と汎化誤差の違い|テスト誤差との関係とi.i.d.の仮定(G検定)
訓練誤差は訓練データでの誤差、汎化誤差は新しいデータでの誤差の期待値で、テストデータで推定します。次数の異なる3つのモデルの誤差を並べ、差の大きさから未学習と過学習を見分ける手順を、Deep Learning(Goodfellowら)の説明で確認。
よくある質問
QPermutation ImportanceとSHAPの違いは?
Permutation Importanceは特徴量の値をシャッフルしてモデルのスコアの悪化を見る方法で、SHAPは特定の予測に対して各特徴量にシャープレイ値で重要度を割り当てる方法です。
QPermutation Importanceは、どんなモデルにも使えますか?
scikit-learnの公式文書は、モデルの予測だけに基づくので、木に基づくモデルに限らず、あらゆるモデルのクラスで使えると述べます。
QSHAPが満たす性質は何ですか?
SHAPの論文は、局所的な正確さ、欠落性、一貫性の3つの性質を満たす解がシャープレイ値だけだと示しています。
QPermutation ImportanceとSHAPはG検定で問われますか?
JDLAの公式シラバス2024は、大項目6のモデルの解釈性のキーワードに、両方を挙げています。
次に見る比較
- G検定・DS検定・統計検定2級で重なる用語10語の比較
同じ名前の用語の定義と収録章を、資格ごとに並べます。
- ベイズの定理と条件付き確率の違い(統計検定2級の式と計算例)
求める確率の向きの違いと、陽性になる確率の計算例を確かめます。
- 紛らわしい用語ペア早見表
混同しやすい用語の違いと判定の手掛かりを、資格別の一覧で確かめます。
執筆: AI資格ドリル編集部(運営者情報を見る)
