Universal adversarial perturbationsを読んだのでメモ
はじめに
Universal adversarial perturbationsを読んだのでメモ.
気持ち
従来のadversarial perturbationsは画像ごとに計算されているのに対し,この論文ではある単一の摂動を用いて画像に関係なくdeep neural networks(DNN)を騙すことが可能かということを調査し,その生成方法を提案した.このような摂動を論文ではuniversal perturbationsという.
このuniversal perturbationsは画像に対して一般化されているだけでなく,従来のperturbation同様に異なるモデルに対しても一般化された摂動となっている.論文ではuniversal perturbationの存在がDNNの識別境界のトポロジーに新たな知見を与えるとしている.
Universal perturbations
を空間における入力データの分布とし,を識別関数,すなわち画像に対してそのラベルを予測する関数.ここでの目標はから生成されるほぼ全てのデータに対し識別器を騙す(予測ラベルを変える)ような摂動を見つけることとなる.すなわち
をみつける.基本的にこのは一意ではないため,以下の制約のもとで摂動を求める.
はの強度をコントロールするパラメータで,は識別器をどの程度騙せているかを定量化したもの.
Algorithm
をからサンプリングされた画像の集合とする.この集合に含まれる多くデータ点において識別器の出力を変化させるuniversalな摂動を求める事を目標とする.
主なuniversal perturbationの導出方法は以下の最小化問題を解いてを更新していく.
を満たすために,以下の射影作用素を用いて半径の球上に射影する.
すなわちとして摂動を更新していく.摂動の更新の終了は以下のfooling rateによって制御される.
は指示関数で下付きの条件を満たす時に1,それ以外は0を返す.すなわち,における騙せたデータ点の割合が閾値を超えた際に摂動の更新を終了する.ここでデータ点数は必ずしもモデルの学習に用いたデータ数と等しい必要はなく,実験においては学習に用いた数よりも少ないデータ数で計算を行ったとのこと.
ちなみにを導出するための最適化問題はDNNの識別器を用いた際には非凸であるため計算が困難である.そのためこの論文ではDeepFoolで使用された近似方法を用いたとのこと.そのため厳密に最小ノルムのuniversal perturbationを見つけることはできないが,基本的に十分小さなノルムを持つ摂動を上記アルゴリズムで計算できるとのこと.
Universal perturbations for deep nets
ここでは前述の方法で計算されたuniversal perturbationsがどれだけ有効に働いているかをImageNetで学習されたいくつかのモデルを使って評価したとのこと.universal perturbationはノルムを用いた場合の2パターンで評価を行った.論文中のTable 1にfooling ratioが報告されており,だいたい80~90%程度のfooling ratioを達成している.universal perturbationは当然一意に求まる訳ではなく,を変える(内でデータの順番を変える)と違うパターンの摂動が作られる.
またに含まれるデータ点の数を変化させた場合の実験も行っており,500画像程度でもvalidation set全体の30%程度は騙せるとのこと.
Cross-model universality
あるモデルで計算されたuniversal perturbationが別なモデルでも有効に働くかを検証.論文中のTable 2に結果が乗っており,低くても40%程度は騙せるようで,モデルの構成が似ている(例えばVGG-16で生成した摂動でVGG-19を騙す)場合はfooling ratioが元のモデルと遜色ない値となっている.
Visualization of the effect of universal perturbations
universal perturbationの効果を可視化するために摂動を与えた際にどのクラスからどのクラスに移ったかを有向グラフとして表現する.すなわち各クラスをノードとし,番目のクラスから番目のクラスに変化した際にというエッジを作る.GoogLeNetを使って構成したグラフが論文中のFigure 7にある.
可視化の結果エッジが集中するノード(dominant label)が存在することが確認され,そこから画像空間においてそのようなdominant labelとして分類される領域は広いのではという仮説を立てている.
Explaining the vulnerability to universal pertrubations
各画像毎にadversarial perturbation vector を計算する.基本的には識別境界の法線ベクトルの方向を向いており識別境界の周りの局所的な幾何構造を記述している.ここでは領域間の関係を見るために次の行列を定義する.
2値分類を考えればこの行列のランクは1になる.より一般的な状態を考えるためにの特異値を計算する.特異値を見ると,その値が急激に小さくなっており,法線ベクトルに強い相関と冗長性があることがわかる.さらに言えばこの事実は低次元の部分空間の存在を示唆しており,これがuniversal perturbationsの存在を示すひとつの理由として仮説付けられる.すなわち,法線ベクトルの多くはは部分空間内に含まれており,データ点を法線ベクトル方向,すなわち内で動かすことによりadversarial examplesが作られている.そのために含まれるベクトルをうまく選択することで元々内に法線ベクトルを持つようなデータ点を騙すことができるuniversal perturbationsが計算できる.そのため論文中のFigure 10にあるように,多くの識別境界は向かい合うような形になっていることが考えられる.
まとめ
可視化できる2次元や3次元では非直感的な現象ではあるが,多くの場合において高次元空間での性質が非直感的であるのでこういうもんかなという印象.