Adversarial examplesという、入力画像に意図的に妨害するノイズを入れることにより、DNNの認識を失敗させる方法が研究されている。
- Explaining and Harnessing Adversarial Examples, Goodfellow et al., arxiv2015
入力画像に、DNNのロス関数のに関する勾配をsign関数をとったものを足すだけで以下のように、パンダをテナガザル(gibbon)と高い信頼度で間違えるようになる。ちなみに、以下のように画像の見た目はほとんど変わっていない。ここで、はDNNのパラメータ、は分類ラベルである。
具体的には、以下のノイズを入力画像に付加する。この方法はFGSM(Fast Gradient Sign Method)と呼ばれている。
なぜ、こんな単純なノイズ付加で失敗するのか?DNNの各レイヤーにて線形和を計算してからactivationしているからだと説明されている。単純な1階層の線形モデルを考えた場合、入力画像にノイズを加えることは、以下のように、を足していることに対応する。
ここで、となるので、ノイズ項は、の絶対値和に対応し、max normの制約(最大値が以下)のもとでは最大の値をとることができる。例えば、だとすると、となり、となる。特に、の次元が高い場合、は次元数に比例した大きな値をとり、インパクトのあるノイズを加えることが出来る。つまり、線形和でノイズを積算してしまっている。