AI資格ドリル
資格を選ぶ

用語比較

Permutation ImportanceとSHAPの違い|特徴量の重要度を測る2つの方法(G検定)

Permutation Importanceは、特徴量の値をランダムに並べ替えてモデルのスコアの悪化を見る方法です。SHAPは、特定の予測に対して各特徴量に重要度の値を割り当てる方法です。

シャッフルしてスコアの下がり方を見るなら前者、1つの予測への寄与をシャープレイ値で出すなら後者と覚えると、G検定の説明可能AI(XAI)の設問で見分けられます。

この記事の根拠と出典

各セクションの見出しの下に、公式資料で確認した内容か編集部の整理かをラベルで示しています。 試験日・料金・申込条件・試験方式は変わることがあるため、申込前に公式サイトで確認してください。

Permutation ImportanceとSHAPの要点

Permutation Importance

値をシャッフルしたときのスコアの悪化で、モデルの依存度を調べる。

SHAP

値は協力ゲーム理論に由来するシャープレイ値で、1件ごとの予測に使う。

共通する点

どちらも、中身が分かりにくいモデルの判断の根拠を、特徴量ごとの重要度として示す。JDLAのシラバス2024は、モデルの解釈性のキーワードとして両方を挙げている。

違いを表で確認

比較軸Permutation ImportanceSHAP
測り方Permutation Importance:特徴量の値をランダムに並べ替え、スコアの悪化を観察するSHAP:各特徴量に重要度の値を割り当てる。値は元のモデルの条件付き期待値関数のシャープレイ値
見る単位Permutation Importance:データセットに対するモデルのスコア。特徴量がモデルの性能にどれだけ寄与するかを測るSHAP:特定の予測。1件の入力に対する各特徴量の寄与
必要なものPermutation Importance:学習済みモデル、データ、スコアを決める評価指標。シャッフルの回数(n_repeats)も決めるSHAP:モデルの予測と、特定の入力
結果の読み方の注意・理論の裏づけPermutation Importance:強く相関する2つの一方を並べ替えても、もう一方から情報を得られ、両方の重要度が低く出る。ホールドアウト集合で計算すれば汎化性能への寄与が分かるSHAP:論文は、局所的な正確さ・欠落性・一貫性の3つの性質を満たす解がシャープレイ値だけだと示す
設問の手がかり語Permutation Importance:シャッフル、並べ替え、スコアの悪化SHAP:シャープレイ値、各特徴量への割り当て、特定の予測

どこで迷っているかを切り分ける

01

XAIの手法を、名前の羅列として覚えている人

JDLAのシラバス2024は、大項目6のモデルの解釈性に、CAM、Grad-CAM、LIME、Permutation Importance、SHAP、説明可能AIを挙げています。画像に使う手法と、特徴量の重要度を示す手法に分けると、整理しやすくなります。Permutation ImportanceとSHAPは後者です。

02

LIMEとSHAPの違いは分かるが、Permutation Importanceが出ると迷う人

LIMEもSHAPも、1つの予測を説明する方法です。Permutation Importanceは、1つの予測ではなく、データセットに対するモデルのスコアの悪化で測ります。見る単位が違う点で区別します。

03

重要度が低い特徴量は、不要な特徴量だと考える人

scikit-learnの公式文書は、Permutation Importanceは特徴量そのものの予測力ではなく、その特徴量が特定のモデルにとってどれだけ重要かを表すと述べます。悪いモデルで重要度が低い特徴量が、良いモデルでは非常に重要なことがあります。

04

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

    何を説明したいかを決める

    モデル全体でどの特徴量に頼っているかか、1件の予測の理由かを決めます。前者はPermutation Importance、後者はSHAPの出番です。

  2. 2

    設問の手がかり語を探す

    シャッフル、並べ替え、スコアの悪化ならPermutation Importance、シャープレイ値、各特徴量への割り当てならSHAPです。

  3. 3

    使うデータを確かめる

    Permutation Importanceでは、訓練集合かホールドアウト集合かで意味が変わります。汎化性能への寄与を見るなら、ホールドアウトを使います。

  4. 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のモデルの解釈性のキーワードを挙げられる

同じ資格で次に知りたいこと

よくある質問

QPermutation ImportanceとSHAPの違いは?

A

Permutation Importanceは特徴量の値をシャッフルしてモデルのスコアの悪化を見る方法で、SHAPは特定の予測に対して各特徴量にシャープレイ値で重要度を割り当てる方法です。

QPermutation Importanceは、どんなモデルにも使えますか?

A

scikit-learnの公式文書は、モデルの予測だけに基づくので、木に基づくモデルに限らず、あらゆるモデルのクラスで使えると述べます。

QSHAPが満たす性質は何ですか?

A

SHAPの論文は、局所的な正確さ、欠落性、一貫性の3つの性質を満たす解がシャープレイ値だけだと示しています。

QPermutation ImportanceとSHAPはG検定で問われますか?

A

JDLAの公式シラバス2024は、大項目6のモデルの解釈性のキーワードに、両方を挙げています。

次に見る比較

執筆: AI資格ドリル編集部(運営者情報を見る)