AI Platform の AI Explanations の概要

AI Explanations は、特徴アトリビューションを AI Platform Prediction に統合します。このページでは、AI Platform Prediction で使用可能な特徴アトリビューション方式の概念的な概要を簡単に説明します。技術的な詳細については、AI Explanations に関するホワイトペーパーをご覧ください。

AI Explanations は、分類タスクや回帰タスクのモデル出力を理解するのに役立ちます。AI Platform で予測をリクエストするたびに、AI Explanations は、データ内の各特徴が予測結果に及ぼした影響の度合いを説明します。この情報を使用して、モデルが期待どおりに動作していることを確認し、モデルのバイアスを認識して、モデルやトレーニング データの改善方法を確認できます。

特徴アトリビューション

特徴アトリビューションは、モデル内の各特徴が各インスタンスの予測にどの程度影響を及ぼしたかを示します。予測をリクエストすると、モデルに適した予測値を得られます。説明をリクエストすると、予測に加えて、特徴アトリビューションの情報を得られます。

特徴アトリビューションは表形式のデータで機能します。また、画像データ用の組み込み表示機能が含まれています。以下の例を考えてみましょう。

  • 気象データと以前の共有データに基づいて、自転車の走行時間が予測されるようにトレーニングされているディープ ニューラル ネットワークがあるとします。このモデルについて予測のみをリクエストすると、自転車の予測走行時間を分単位で返されます。説明をリクエストすると、自転車の予測走行時間に加えて、説明のリクエストに基づき、特徴ごとのアトリビューション スコアが返されます。アトリビューション スコアは、指定したベースライン値と比較して、その特徴が予測値の変化にどの程度影響を及ぼしたかを示します。モデルに適した有意義なベースラインを選択します。この場合は、自転車の平均走行時間を選択します。特徴アトリビューション スコアをプロットして、予測結果に最も影響を及ぼした特徴を確認できます。

    予測自転車走行時間の特徴アトリビューションの図

  • 指定された画像にイヌとネコのどちらが含まれているかを予測するようにトレーニングされている画像分類モデルがあるとします。新しい画像セットでこのモデルから予測をリクエストすると、画像ごとに予測(「dog」または「cat」)を受け取ります。説明をリクエストすると、予測されたクラスに加えて、予測結果に最も強く影響を及ぼした画像内の部分を示す画像のオーバーレイが返されます。

    特徴アトリビューション オーバーレイを含むネコの写真
    特徴アトリビューション オーバーレイを含むネコの写真
    特徴アトリビューション オーバーレイを含むイヌの写真
    特徴アトリビューション オーバーレイを含むイヌの写真

メリットとユースケース

特定のインスタンスを調べて、トレーニング データセット全体で特徴アトリビューションを集計することで、モデルの仕組みをより詳しく分析できます。次のメリットとユースケースを検討します。

  • モデルのデバッグ: 特徴アトリビューションは、標準的なモデル評価技法では見落としてしまうことが多いデータ内の問題を検出するのに役立ちます。たとえば、胸部 X 線画像のテスト データセットにおいて、画像病理モデルによって得られた結果の信頼性があまり高くない場合があります。特徴アトリビューションにより、モデルの精度の高さが、放射線科医が画像内に記したマークによって左右されることが明らかになりました。
  • モデルの最適化: 重要度の低い特徴を特定して削除し、より効率的なモデルを作成できます。

概念上の制限

特徴アトリビューションには、次の制限があります。

  • アトリビューションは、個々の予測に固有のものです。個々の予測のアトリビューションを調べることで詳細な洞察を得ることができますが、それらの個々のインスタンスのクラス全体やモデル全体にその洞察を当てはめることができない場合があります。より一般的な洞察を得るには、データセット全体、またはデータセットのサブセット全体にわたり、アトリビューションを集計します。
  • 特徴アトリビューションはモデルのデバッグに役立ちますが、ある問題が特定のモデルから発生しているのか、モデルをトレーニングしたデータから発生しているのかを必ずしも明確に示すものではありません。最良の判断を下し、共通のデータ問題を診断することで、原因を特定してください。
  • 複雑なモデルでは、特徴アトリビューションは予測と類似する敵対的攻撃を受けます。

制限の詳細については、制限の概要リストAI Explainability に関するホワイトペーパーをご覧ください。

サービスの制限

AI Platform Prediction の AI Explanations 特徴アトリビューションには、次の制限があります。

  • Explanations のサービスでは現在、TensorFlow 1.x でトレーニングされたモデルのみがサポートされています。
  • Keras を使用している場合は、tf.saved_model.save を使用してモデルを保存しないでください。代わりに、tf.keras.estimator.model_to_estimator を使用してください。

詳細については、モデルの保存方法を示すサンプルコードを参照し、サンプル Notebook を試してみてください。

特徴アトリビューション方式の比較

AI Explanations では、サンプリングされた Shapleye と統合勾配という 2 つの方式を特徴アトリビューションに使用できます。

方式 基本的な説明 推奨モデルタイプ サンプル ユースケース
統合勾配 Shapley 値と同じ公理プロパティを使用して、特徴アトリビューションを効率的に計算する勾配ベースの方式。 微分可能なモデル(ニューラル ネットワークなど)。特に、特徴スペースが大きいモデルにおすすめします。
  • 表データの分類と回帰
  • 画像データの分類
サンプリングされた Shapley 各特徴に結果のクレジットを割り当て、特徴のさまざまな置換を検討します。この方式では、正確な Shapley 値のサンプリング近似が提供されます。 微分不可能なモデル(ツリーとニュートラル ネットワークの集合体など)1
  • 表データの分類と回帰

特徴アトリビューション方式について

どちらの特徴アトリビューション方式も、特定の結果に対してゲーム内の各プレーヤーにクレジットを割り当てる協力ゲーム理論アルゴリズムである Shapley 値に基づいています。機械学習モデルに適用すると、各モデルの特徴はゲーム内の「プレーヤー」として扱われ、AI Explanations は特定の予測結果を得るために、各特徴に比例クレジットを割り当てます。

AI Explanations では、説明リクエストの正確な特徴を選択することで、プレーヤーを選択できます。

統合勾配方式では、予測結果の勾配が、入力値の特徴に対して積分経路に沿って計算されます。

  1. 勾配は、スケーリング パラメータのさまざまな間隔で計算されます(画像データでは、このスケーリング パラメータは画像内のすべてのピクセルを黒にスケーリングする「スライダ」であると仮定されます)。
  2. 勾配は「統合」されます。
    1. 勾配は平均化されます。
    2. 平均勾配と元の入力値の要素別の積が計算されます。

画像に適用されるこのプロセスのわかりやすい説明については、ブログ投稿 Attributing a deep network's prediction to its input features をご覧ください。統合された勾配に関する元の論文(Axiomatic Attribution for Deep Networks)の著者は、以前のブログ投稿で、プロセスの各ステップで画像がどのように見えるかを示しています。

微分可能モデルと微分不可能モデル

微分可能モデルでは、TensorFlow グラフのすべての演算の導関数を計算できます。このプロパティは、そのようなモデルで誤差逆伝播を行えるようにするのに役立ちます。たとえば、ニューラル ネットワークは微分可能です。微分可能なモデルの特徴アトリビューションを取得するには、統合勾配方式を使用します。

微分不可能モデルには、デコードや丸め処理を実行するオペレーションなど、TensorFlow グラフでの微分不可能オペレーションが含まれます。たとえば、ツリーとニューラル ネットワークの集合体として構築されたモデルは微分不可能です。微分不可能なモデルの特徴アトリビューションを取得するには、サンプリングされた Shapley 方式を使用します。サンプリングされた Shapley は微分可能なモデルにも対応していますが、その場合、必要以上に計算コストがかかります。

参照

サンプリングされた Shapley と統合勾配の実装は、それぞれ次のリファレンスに基づいています。

AI Explanations の実装について詳しくは、AI Explainability に関するホワイトペーパーをご覧ください。

教育リソース

次のリソースから、さらに役立つ教材を得ることができます。

次のステップ