0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

AssistiveSignalsを加えたデータで学習したDNNはどうなるか

Last updated at Posted at 2021-12-14

概要

敵対的攻撃を応用し、モデルの精度を向上させるAssistive Signalsという摂動を提案。

Physical world assistive signals for deep neural network classifiers -- neither defense nor attack

敵対的攻撃

DNNは敵対的摂動と呼ばれる小さなノイズによって簡単に騙されることがわかっています。

adv_sample.png

敵対的攻撃は、具体的には、以下のような最適化問題を解くことで敵対的摂動を生成します。

$$\underset{\delta\in S}{max}\ L(\theta,x+\delta,y)$$

$\delta$が求めるノイズ、$x$が入力データ、$y$が入力データに対応する正解ラベル、$L$が損失関数。

攻撃者は正しいラベルに分類した時に損失が大きくなるような$\delta$(ノイズ)を求めます。

Assistive Signals

では逆に、次のような最適化問題を解くとどうなるか。

$$\underset{\delta\in S}{min}\ L(\theta,x+\delta,y)$$

この最適化問題の意味としては、「正解ラベル$y$に対する損失関数$L$の値が最小になるような$\delta$を求める」となります。すなわち、モデルが正しく分類しやすくなるような$\delta$(ノイズ)を求める事になります。この$\delta$をAssistive Signalsと呼びます。

注意点

Assistive Signalsは、入力データが正しく分類されるようなノイズを乗せるため、分類前からその入力データの正しいクラスが分かっている必要があります。そのため、未知のデータというものを用意することができません。

利用場面

物体検出をしたい時、その物体全体に対してノイズを張り巡らせることは現実的ではありません。そこで著者らは、パッチと呼ばれる小領域に対してのみノイズを加えることを提案しています。このようにすることで、シールのようなものでノイズを再現することができます。

実験

気になった点があったので、実験(検証)してみました。

疑問点「Assistive Signalsで学習したモデルはどう変わるのか」

方法

標的型攻撃としてのFGSMを利用して、各入力画像に対して、それぞれの正解ラベルに対する損失を小さくするような摂動を生成しました。この摂動をAssistive Signalsとします。また、クリーン画像のみで学習したモデルを基にAssistive Signalsを生成しました。

画像データセット:Fashion MNIST

eps = 0.10

各trainデータは60000枚、各testデータは10000枚。

ソースコード

Google Colaboratory

結果

「クリーン画像のみで学習したモデル」をモデルA

「Assistive Signals入りの画像のみで学習したモデル」をモデルB

「Assistive Signals入り画像とクリーン画像を5:5で学習したモデル」をモデルC

とします。

以下の表の数値は各Accuracyの値です。

Input imgs モデルA モデルB モデルC
assisitive train N/A 0.9935 0.9930
clean test 0.8765 0.4291 0.8626
assistive test 0.9447 0.8995 0.9943
attacked test 0.1588 0.303 0.1412

Assitive Signals入りの画像で学習させると精度が下がりました

また、確かにAssistive Signalsを含む画像に対するaccuracyはcleanに比べて高かったです

ちなみに、今回Assistive Signalsを生成するのにartのFGSMを使いましたが、仕様上Classifierの精度が高いことを前提として摂動を生成しているので、モデルBの攻撃成功率が低いのは当然です。

追加実験

Assistive Signals入りの画像は「正解ラベルに誘導するようなノイズの入った画像」と言えます。つまり、そのノイズ自体に画像を識別するような特徴量が含まれていると考えられます。

そこで、「Assistive Signals入りの画像が識別に必要な特徴量を含んでいるなら、少数のデータでも十分な精度を得られるのではないか」と考えました。

方法

いざ実験です。trainデータを上の実験の半分である30000枚にします。そして、clean trainだけで学習したモデル(A')と、assistive trainだけで学習したモデル(B')を比較してみます。

ソースコード

Google Colaboratory(上と同じ)

結果

以下の表の数値は各Accuracyの値です。

Input imgs モデルA' モデルB'
train 0.8345 0.9762
clean test 0.8182 0.4441

そう上手くはいきませんでした。むしろ下がってしまいました。ただ、trainに対してはすごい精度です。

この結果と上の実験のモデルB・Cの結果から、Assistive Signals入り画像を教師データとした学習はよろしくないことがわかりました。おそらく、モデルが獲得する特徴量が限定的になってしまうのがAccuracyの低下につながっているのではないかと考えます。過学習にもなりやすそうですね。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?