画像データの説明の可視化

AI Explanations には、画像データの可視化機能が組み込まれています。可視化が構成されている画像分類モデルの説明をリクエストすると、予測クラスと、予測に貢献したピクセルまたは領域を示す画像オーバーレイが表示されます。

下の画像は、ハスキー犬の画像の可視化です。左側の可視化では統合勾配方式を使用し、正のアトリビューション領域がハイライト表示されています。右側の可視化では XRAI 方式を使用し、正の予測に影響力が小さい領域(青色)と大きい領域(黄色)がカラー グラデーションで表示されています。

統合勾配方式を使用したハスキー犬の特徴アトリビューションの可視化
XRAI を使用したハスキー犬の特徴アトリビューションの可視化

扱うデータの種類によって、説明の可視化に統合勾配方式を使用するか、XRAI 方式を使用するかが変ります。

  • XRAI は自然な画像の処理を得意とする傾向があり、正のアトリビューションは犬の顔の形に関連するなど、優れた上位レベルの分析情報の概要を提示します。
  • 統合勾配(IG)は、ピクセルレベルの詳細を提供する傾向があるので、より粒度が細かいアトリビューションの検出に効果を発揮します。

AI Explanations のアトリビューション方式の詳細については、概要ページをご覧ください。

はじめに

可視化は、説明メタデータ ファイルの一部としてモデルごとに構成されます。

モデルの新しい可視化を追加するには、可視化する inputs オブジェクト内に visualization オブジェクトを含めます。visualization オブジェクトには、使用するオーバーレイのタイプ、ハイライト表示するアトリビューション、色などのオプションを指定できます。すべての設定は省略可能です。

同じモデルの可視化をもう 1 つ作成するには、explanation_metadata.json ファイルの設定を更新し、モデルを再デプロイします。

可視化オプション

デフォルト設定と推奨設定は、アトリビューション方式(統合勾配または XRAI)によって異なります。下の表に、構成オプションとその使用方法を示します。オプション値の完全なリストについては、API リファレンスをご覧ください。

  • type: 使用する可視化の種類。統合勾配の場合、デフォルトで Outlines が設定され、アトリビューションの領域が表示されます。Pixels はピクセルレベルのアトリビューションを示します。XRAI の場合、Pixels がデフォルトの設定で、アトリビューションのエリアが表示されます。XRAI では Outlines は推奨されません。
  • polarity: ハイライト表示されるアトリビューションの方向性。デフォルトで positive が設定されており、最も高い正のアトリビューションの領域がハイライト表示されます。これは、モデルの正の予測に最も影響を与えたピクセルをハイライト表示することを意味します。polarity を negative に設定すると、モデルに陽性クラスの予測を行わせなかった領域がハイライト表示されます。負の polarity を使用すると、偽陰性領域を特定してモデルをデバッグできます。また、正と負のアトリビューションを表示する both に設定することもできます。
  • clip_above_percentile: 指定したパーセンタイルを超えるアトリビューションをハイライト表示される領域から除外します。クリップ パラメータを一緒に使用することで、不要な情報を取り除き、アトリビューションの強い領域が見やすくなります。
  • clip_below_percentile: 指定したパーセンタイル未満のアトリビューションをハイライト表示される領域から除外します。
  • color_map: ハイライト表示される領域の配色。統合勾配では、pink_green がデフォルト値です。正のアトリビューションが緑、負のアトリビューションがピンクで表示されます。XRAI の可視化の場合、カラーマップはグラデーションです。XRAI のデフォルトは viridis で、最も影響力の大きい部分が黄色、最も影響力の小さい部分が青でハイライト表示されます。
  • overlay_type: 可視化で元の画像がどのように表示されるか。元の画像によって可視化が見づらくなった場合、オーバーレイを調整すると、明瞭さが向上します。

構成例

以下は、開始点として使用できるサンプル visualization オブジェクトと、多様な設定が適用された画像です。

統合勾配

統合勾配では、アトリビューション エリアに不要な情報が多い場合に、クリップ値を調整する必要が生じることがあります。

visualization: {
"type": "Outlines", # Can also use "Pixels"
"polarity": "positive",
"clip_below_percentile": 70,
"clip_above_percentile": 99.9,
"color_map": "pink_green",
"overlay_type": "grayscale"
}

以下は、OutlinesPixels タイプの両方を使用する 2 つの可視化です。「高予測のみ」、「概ねの予測」、「ほぼすべて」とラベル付けされた列は、可視化をフォーカスするための異なるレベルのクリッピングの例です。

IG アトリビューションのアウトラインを示す特徴アトリビューションの可視化

IG アトリビューションのピクセルを示す特徴アトリビューションの可視化

XRAI

XRAI の可視化の場合、最初は XRAI のクリップ値を使用しないことをおすすめします。オーバーレイはグラデーションを使用してアトリビューションの高い部分と低い部分を表示するからです。

visualization: {
"type": "Pixels", # Only valid option for XRAI
"polarity": "positive",
"clip_below_percentile": 0,
"clip_above_percentile": 100,
"color_map": "viridis",
"overlay_type": "grayscale"
}

下の画像は、デフォルトの viridis カラーマップとさまざまなオーバーレイ タイプを使用した XRAI の可視化です。黄色の領域は、正の予測に最も影響力のある部分を示しています。

XRAI アトリビューションの特徴アトリビューションの可視化

次のステップ

What-If ツールを使用して説明を可視化することもできます。詳細については、サンプル ノートブックをご覧ください。