ニューラルネットワークの感度マップ
人間と同じように,ニューラルネットワークもずるをしたり失敗したりする傾向がある.例えば,動物の画像についてネットワークを訓練したときに,もしすべての「オオカミ」の画像の背景が雪だったら,「雪」もまた「オオカミ」の特徴になる.したがって,ネットワークはショートカットとして雪の特徴を使い,オオカミの外見については何も学んでいないかもしれない.結果として,雪の中にいるシカが間違ってオオカミに分類されるかもしれない.
分類間違いをよりよく理解して分類ネットワークが望んでいる特徴を学んだかどうかを確かめるためには,次の分析が興味深い.
任意の画像を分類して分類確率に注目する.次に,画像の一部を覆って分類確率が上がるか下がるかを見る.確率が下がった場合は覆われた部分に分類を支える特徴が含まれている.確率が上がった場合は,覆われた分野に分類の妨げになるものが含まれている.
画像識別のニューラルネットワークをロードする.
画像の一部を漂白して中間色にする関数を定義する.第2引数はスケールされた座標で漂白する場所を指定し,第3引数は覆うサイズを画像サイズとの割合で決定する.
次に,指定されたニューラルネットワークの分類確率への影響を示すために,画像の一部を体系的に覆う別の関数を定義することができる.結果の感度マップが出力画像の明るさとして表示される.
74%の確率でモルガン(Morgan)種として分類された馬の感度マップを生成する.
さまざまな覆いのサイズを平均することで,スケール非依存の感度マップを作成する.
高確率のオオカミの分類と集中感度マップ.
オオカミのスケール非依存の感度マップ.
次は,台座のために石鹸皿と誤分類された置物のオオカミである.
ネットワークが異なると,像の後ろ(恐竜の背中のように見える)に焦点を当てることによる別の誤分類が生まれる.