AIの判断を公平に評価!SHAPが教える「貢献度」の秘密

こんにちは。ゆうせいです。

前回の記事では、特定のデータの周辺だけを調べるLIMEについてお話ししましたね。でも、読者の皆さんの中には「特定の場所だけじゃなくて、もっと公平で、理論的にしっかりとした説明が欲しい!」と感じた方もいるのではないでしょうか。

そんな欲張りな(笑)あなたにぴったりなのが、今回ご紹介するSHAP(SHapley Additive exPlanations)です。

AIが「この人は住宅ローンを承認すべきだ」と判断したとき、年収がどれくらい効いたのか、勤続年数はどうだったのか。その「貢献度」を、まるでお給料を分配するようにきれいに計算してくれる技術、それがSHAPです。

今回も、難しい数式は抜きにして、直感的に理解できるように解説していきますね。準備はいいですか?


SHAPの根っこにある考え方「協力ゲーム理論」

SHAPという名前の由来にもなっている「シャープレイ値」という言葉があります。これはもともと、AIの技術ではなく「ゲーム理論」という経済学の分野で生まれた言葉なんです。

想像してみてください。あなたは3人の仲間と一緒に、文化祭でたこ焼き屋を出店しました。

  • Aくんは、たこ焼きを焼くのが天才的にうまい。
  • Bさんは、接客がプロ級でどんどんお客さんを呼んでくる。
  • Cくんは、材料をどこよりも安く仕入れてくる。

その結果、10万円の利益が出たとしましょう。この10万円を3人で分けるとき、どう分けるのが一番「公平」だと思いますか?「みんなで頑張ったから3等分!」というのも一つの手ですが、それだと「俺は1000個も焼いたのに!」という不満が出るかもしれません。

ここで登場するのがシャープレイ値です。

「もしAくんがいなかったら、利益はいくらだったか?」「Bさんがいなかったら?」といったあらゆるパターン(組み合わせ)を計算し、それぞれのメンバーが「利益をどれだけ押し上げたか」という貢献度を算出します。

AIの世界に当てはめると、このメンバーたちが「年収」や「年齢」といったデータの項目(特徴量)にあたります。AIの予測結果という利益を、それぞれの項目に公平に分配する仕組み、それがSHAPなのです!


専門用語を高校生でもわかる例えで解説

SHAPを学ぶ上で避けて通れない用語を、噛み砕いて説明しますね。

  • 特徴量(とくちょうりょう):AIが判断材料にする項目のことです。例えるなら、料理の「材料」です。カレーを作るときに、隠し味のチョコレートがどれくらい味を深めたのか。そのチョコやジャガイモの一つひとつが特徴量です。
  • 貢献度(こうけんど):それぞれの特徴量が、AIの予測値をどれくらいプラス(またはマイナス)に動かしたかという数値です。「年収」という材料が、ローンの合格率を + 20 % 押し上げたなら、それがその項目の貢献度になります。
  • 加法性(かほうせい):これは「足し算ができる」という意味です。SHAPのすごいところは、それぞれの項目の貢献度を全部足すと、最終的なAIの予測値と一致することです。基準となる値 + 項目1の貢献度 + 項目2の貢献度 + \dots = 最終的な予測値 このように、根拠が綺麗に足し算で説明できるので、人間にとって非常に納得感が高いのです!

SHAPを使うメリットとデメリット

SHAPは現在、実務の現場で非常に高く評価されています。なぜこれほどまでに注目されているのでしょうか。

メリット

  • 理論的な安心感:経済学の権威ある理論に基づいているため、説明に「ズル」や「矛盾」がありません。
  • プラスとマイナスの可視化:どの項目が判断を後押しし、どの項目がブレーキになったかが一目でわかります。
  • グローバルとローカルの両立:LIMEは「ある一点」の説明が得意でしたが、SHAPは「モデル全体としてどの項目を重視しているか」も分析できる、まさに二刀流の技術です。

デメリット

  • 計算がめちゃくちゃ大変!:あらゆる組み合わせを計算するため、データの項目が増えると計算量が爆発的に増えてしまいます。皆さんも、100人のメンバーの貢献度を一人ずつ計算しろと言われたら、気が遠くなりますよね?
  • 解釈に注意が必要:SHAPはあくまで「そのモデルがどう判断したか」を教えるものであり、「現実世界の因果関係」とは異なる場合があります。

まとめと今後の学習指針

いかがでしたでしょうか。SHAPは、AIというブラックボックスの中に「公平な分配」という光を当てる、非常に誠実な技術だと思いませんか?

LIMEが「近くで見れば直線に見える」という直感的なアプローチだったのに対し、SHAPは「みんなの貢献度を厳密に計算しよう」という理論的なアプローチです。どちらが良い悪いではなく、用途に合わせて使い分けるのがプロの技です。

これからさらに学びたい方は、以下のステップに挑戦してみてください。

  1. Pythonのライブラリを使ってみる:実はSHAPは、プログラミングを使えば数行でグラフ化できます。実際に自分の目で「赤い矢印(プラスの影響)」と「青い矢印(マイナスの影響)」を見てみると、感動しますよ!
  2. 「SHAP値」の性質を調べる:今回は省きましたが、シャープレイ値には「ダミー性」や「対称性」といった、公平性を保証するための4つの性質があります。これを知ると、さらにSHAPの虜になるはずです。

「AIの判断に納得がいかない!」そんな声に応えられる技術を、ぜひあなたの武器にしてください。

セイ・コンサルティング・グループでは新人エンジニア研修のアシスタント講師を募集しています。

投稿者プロフィール

山崎講師
山崎講師代表取締役
セイ・コンサルティング・グループ株式会社代表取締役。
岐阜県出身。
2000年創業、2004年会社設立。
IT企業向け人材育成研修歴業界歴20年以上。
すべての無駄を省いた費用対効果の高い「筋肉質」な研修を提供します!
この記事に間違い等ありましたらぜひお知らせください。

学生時代は趣味と実益を兼ねてリゾートバイトにいそしむ。長野県白馬村に始まり、志賀高原でのスキーインストラクター、沖縄石垣島、北海道トマム。高じてオーストラリアのゴールドコーストでツアーガイドなど。現在は野菜作りにはまっている。