機械学習におけるシャプレー値を理解するにはどうすればよいでしょうか?

機械学習におけるシャプレー値を理解するにはどうすればよいでしょうか?

[[282454]]

シャプレー値について初めて聞いたのは、モデルの解釈可能性を勉強していたときでした。機械学習モデルがなぜそのように動作するのかをよりよく理解するためのフレームワークである SHAP について学びました。シャプレー値は以前から存在しており、1953 年にゲーム理論の分野で次のような状況を解決するために最初に生まれました。

  • さまざまなスキルを持つ参加者のグループが、集団的な報酬を得るために互いに協力します。では、グループ内で報酬を公平に分配するにはどうすればよいでしょうか?

「古い」概念が機械学習などの別の分野に適用された場合、それがどのように新しい応用を獲得するかを見るのは非常に興味深いことです。機械学習では、参加者は入力する特徴であり、集合的な支出はモデルの予測です。この場合、Shapley 値を使用して、モデル出力に対する個々の特徴の寄与を計算します。

シャプレー値を計算するにはどうすればよいでしょうか? ほとんどの場合、文献では次の式が見られます。

詳しく見ていきましょう。連合ゲーム (前述のシナリオ) では、N 人のプレイヤーの集合が存在します。また、これらのプレーヤーの任意のサブセットの値を返す関数 v もあります。つまり、S が N のサブセットである場合、v(S) はそのサブセットの値を返します。したがって、共同ゲーム (N, v) の場合、この式を使用してプレーヤー i の貢献、つまり Shapley 値を計算できます。

皆さんはどうか分かりませんが、私が初めてこの方程式に出会ったとき、すぐに次のような反応をしました。

[[282456]]

なぜそのように見えるのか理解するのは難しいです。しばらく時間をかけて調べた後、ようやく少し理解できるようになりました。それでは、始めましょう!

さて、最初にやらなければならないことは、最初の方程式を書き直すことです。

一見、この式は簡単になる気がしませんが、心配しないでください。すぐに、方程式のさまざまな部分を理解できるように分解しますが、すべての部分の抽象度を下げるために使用できる具体的なシナリオを定義することもできます。

レンガを生産する工場を経営しているとします。私たちの制作チームは、アマンダ、ベン、クレア、ドンの 4 人で構成されています (これからは名前の頭文字で呼びます)。彼らは一緒に毎週X個のレンガを生産しようとします。工場の稼働状況が好調なので、チームメンバーにボーナスを支給します。しかし、これを公平に行うためには、各人が週に X 個のレンガの生産にどれだけ貢献しているかを把握する必要があります。

最も難しいのは、チームが生産できるレンガの数に影響を与える要因がいくつかあることです。その 1 つはチームの規模です。チームが大きくなればなるほど、生産されるレンガの数も増えるからです。もう一つは、チームメンバー間の協力のレベルです。問題は、これらの効果を意味のある方法で定量化できないことですが、幸いなことに、シャプレー値を使用することでこの問題を回避できます。

これで、プレイヤー (A、B、C、D) と、彼らがプレイするゲーム (レンガの生産) が定義されました。まず、生産された X 個のレンガのうちどれだけが Don に起因するかを計算すること、つまり D の Shapley 値を計算します。これをシャプレー値の公式のパラメータに関連付けると、次のようになります。

したがって、D はプレーヤー i であり、N グループ全体はプレーヤー A、B、C、D の 4 人全員で構成されます。まず、シャプレー値の式のこの部分を見てみましょう。

つまり、現在注力している人々からチームメンバーを除外する必要があります。次に、すべての可能なサブセットを考慮する必要があります。したがって、グループから D を除外すると、{A、B、C} が残ります。この残りのグループから、次のサブセットを形成できます。

残りのチーム メンバーのサブセットを合計で 8 つ作成できます。サブセットの 1 つは空のセット、つまりメンバーが存在しません。さて、この部分に注目してみましょう。

これは、プレイヤー i をゲームに追加することの限界値である Shapley 値の基本概念の応用です。したがって、任意のサブセットについて、その値をプレーヤー i が含まれる場合の値と比較する必要があります。これを行うことで、プレーヤー i をこのサブセットに追加することの限界値が得られます。

これを例に結び付けて、8 つのサブセットのそれぞれに D を追加した場合に、1 週間に生産されるレンガの数がどのように変化するかを確認します。これらの 8 つのエッジ値は直感的に次のように表すことができます。

それぞれのケースは、D が全体の生産にどの程度貢献しているかを公平に評価するために観察する必要がある異なるシナリオと考えることができます。つまり、誰も作業していない場合(つまり、空のセット)にレンガがいくつ生成されるかを観察し、それを D のみが作業している場合と比較する必要があります。また、AB が生産したレンガの数を観察し、それを AB が生産したレンガの数と、8 セットすべてで D が生産できるレンガの数と比較する必要があります。

さて、これで 8 つの異なるエッジ値を計算する必要があることがわかりました。シャプレー値の方程式は、それらを合計する必要があることを示しています。ただし、それを行う前に、方程式のこの部分からわかるように、各限界値も調整する必要があります。

プレーヤー i を除く残りのチームメンバー全員のサブセットの順列がいくつあるかを計算します。言い換えると、プレイヤーが |N|-1 人いる場合、そのプレイヤーでサイズ |S| のグループをいくつ形成できますか? 次に、この数をプレイヤー i のサイズ |S| のすべてのグループへの限界貢献度で割ります。

このシナリオでは、|N|-1=3、つまり、D の Shapley 値を計算したときに残っているチーム メンバーの数です。私たちの場合、残りのメンバーで構築できるグループ サイズは 0、1、2、3 のみであるため、式のその部分を使用して、サイズ 0、1、2、3 のグループをいくつ形成できるかを計算します。たとえば、|S|=2 の場合、サイズ 2 の 3 つの異なるグループ (AB、BC、CA) を構築できます。つまり、8 つのエッジ値のそれぞれに次のスケーリング係数を適用する必要があります。

なぜこれをするのか考えてみましょう。 D がチームの総出力にどの程度貢献しているかを知りたいのです。これを実現するために、私たちは、編成できるチームの各セットに対する彼の貢献を計算しました。このスケーリング係数を追加することで、他のチームメンバーが各サブセットのサイズに与える影響を平均化します。つまり、サイズ 0、1、2、3 のチームに D を追加すると、これらのチームの平均限界貢献度を把握できることになります。

はい、ほぼ完了です。あとはシャプレー値の式の最後の部分を因数分解するだけですが、これはかなり簡単に理解できるはずです。

合計する前に、これをすべての限界値に適用する必要があります。それらをプレーヤーの総数から分離する必要があります。

なぜこれを行うのでしょうか? ブリックヤードの例を見ると、サブセット サイズごとに他のチーム メンバーの影響を平均化しているため、サイズが 0、1、2、3 のグループに対する D の貢献を計算できます。パズルの最後のピースは、平均グループ サイズの影響です。つまり、D がどの程度貢献するかはグループ サイズとは無関係です。

これで、ようやく D の Shapley 値を計算し、彼がチームのさまざまなサブセットすべてにどれだけ貢献しているかを観察できます。また、チーム構成とチーム規模の影響を平均化し、最終的に次の計算を行うことができました。

数学的表記は数学的説明というよりはグラフィカルな説明です(私はそう想像しています)

ここで、D の Shapley 値が得られます。チームの残りのメンバーに対してこの作業を行うと、毎週生産される X 個のレンガに対する各メンバーの貢献度がわかるので、ボーナスをチームメンバー全員に公平に分配できます。

この時点で、Shapley の価値観をより深く理解していただけたと思います。素晴らしいのは、価値関数 v の内部の仕組みについて何も知る必要がなく、ゲームに参加するプレイヤーのさまざまなサブセットに提供される値を観察するだけでよいことです。

これが、シャプレーの価値観の背後にある真の力と魅力です。しかし、これには代償が伴います。 n 人のプレイヤーがゲームをプレイしている場合、シャプレー値を計算するために 2^n 個のサブセットを分析する必要があります。

計算をより実用的にする方法はいくつかあり、冒頭で SHAP フレームワークについて説明しました。このフレームワークの主な利点は、機械学習に適用すると Shapley 値をより効率的に計算できることです。

この記事はLeiphone.comから転載したものです。転載する場合は、Leiphone.com公式サイトにアクセスして許可を申請してください。

<<:  2019年の中国の人工知能産業と産業配置の分析

>>:  ビッグデータに責任を負わせないでください。スモールデータをうまく活用する方が効果的かもしれません。

ブログ    

推薦する

北本重型トラック、易欧、松山湖材料研究所が「易本デュアルカーボン研究所」設立に向けた戦略協力協定を締結

8月4日、中国北方工業集団公司、北奔重型トラック集団有限公司、渤海、松山湖材料研究所は調印式を開催し...

NvidiaはAIを使用してGPU演算回路を設計します。これは最先端のEDAよりも25%小さく、より高速で効率的です。

膨大な数の演算回路を搭載した NVIDIA GPU により、AI、高性能コンピューティング、コンピュ...

デザイナーがAIについて語る:「デザインは最終的に完全に消滅するだろう」

デザイン界では有名なブランド、フィリップ・スタルク。国際宇宙ステーションの居住モジュールからスティー...

...

教育割引 Github AI インテリジェントコーディングアシスタント Copilot は、コードに不慣れな場合の悩みを解決します

教育機関向けオファー Github AI スマートコーディングアシスタント コパイロットAIプログラ...

史上最大のAI著作権訴訟を徹底分析! OpenAI は失敗する運命にあるのでしょうか、それともニューヨーク・タイムズが勝つ可能性はゼロなのでしょうか?

ニューヨーク・タイムズによるOpenAIとマイクロソフトに対する訴訟は、AI技術の発展に影響を及ぼす...

生物学的ニューラルネットワークから人工ニューラルネットワークへ

今日、人工知能について話すとき、私たちは数学モデルを使用してデータからパターンの表現を抽出することで...

...

デジタル外交はAI外交へと進化している。どのような課題に直面するのだろうか?

外交活動に関して、近年最も議論されている概念は「デジタル外交」であろう。 2010年には、当時米国務...

AI と SEO の組み合わせ: 祝福か呪いか?

検索エンジンは誕生以来、基本的な検索エージェントから人工知能 (AI) と機械学習 (ML) に基づ...

プログラマーはどのようにして人工知能を学ぶのでしょうか? 2019 年の人工知能の給与見通しはどうでしょうか?

2019年の人工知能の給与水準、まずは全体の給与水準の2つの分析グラフを見てみましょう! ***は...

EUが新たなAI規制を導入

欧州委員会は、ヨーロッパを信頼できる人工知能(AI)の世界的な中心にすることを目指して、2021年4...

画像ベースの AI プロジェクト用のデータセットを準備する 7 つのステップ

翻訳者 |陳俊レビュー | Chonglouご存知のとおり、データセットはおそらく機械学習プロジェク...

機械学習の神話を暴く - 機械学習に関する一般的な神話はどこから来たのか?

機械学習について多くの誤解を持っていると、その人のキャリアや評判に悪影響を与える可能性があります。 ...

AIに対する人々の偏見が良いことかもしれない理由

人工知能 (AI) や機械学習は人間よりも優れた能力を発揮するとよく言われますが、実際は AI や機...