機械学習とかコンピュータビジョンとか

CVやMLに関する勉強のメモ書き。

PeerNets: Exploiting Peer Wisdom Against Adversarial Attacksを読んだのでメモ

はじめに

PeerNets: Exploiting Peer Wisdom Against Adversarial Attacksを読んだのでメモ.adversarial attackに強いモデルをgraph convolutionを利用して作ったというもの.

Peer Regularization

データの空間構造を利用した新しいDNNを提案するというもの.それにより摂動(adversarial attack)の影響を減らすことができるというのが主張.

内容としてはpeersと呼ばれるN個の画像の特徴マップ\mathbf{X}^1,\dots,\mathbf{X}^N\in\mathbb{R}^{n\times d}を利用した演算を導入する(nピクセルの数で,dピクセルの持つ特徴量の次元数).処理としては入力のあるピクセルに対して全peer画像のd次元特徴マップの全ピクセルからK近傍を探し,ピクセルの持つ値をその近傍との重み付き平均で置き換えてしまおうというもの.peer画像にはadversarialな画像がないため摂動の影響を減らすことができるというのが主張.

K近傍との重み付き平均はgraph attention network (GAT)を使って計算する.GATは次の計算によってエッジの重みを推定するもの.

\displaystyle
\alpha_{ij_kpq_k}=\frac{\mathrm{LeakyReLU}(\exp(a(\mathbf{x}_p^i,\mathbf{x}_{p_k}^{j_k})))}{\sum_{k'=1}^K\mathrm{LeakyReLU}(\exp(a(\mathbf{x}_p^i,\mathbf{x}_{p_k'}^{j_k'})))}

各添字はiが入力の画像で,j_k\in\{1,\dots,N\}が参照しているpeer画像,p,p_k,q_kは画像のピクセルを表す(peer画像の画素を示す記号がp_kになっているがおそらくq_kの間違い).また,a(\cdot)ニューラルネットによる変換を表す.この重みを使って次のように平均をとることで注目画素の値を変更する.

\displaystyle
\tilde{\mathbf{x}}_p^i=\sum_{k=1}^K\alpha_{ij_kpq_k}\mathbf{x}_{q_k}^{j_k}

この操作はnon-local means denoisingみたいなものとのこと.

実践的なところとしては,K近傍の計算を全ピクセルでやるのはしんどいのでいろいろと近似で行ったとのこと.またpeer画像は学習データ全体からランダムにN枚選択して計算する.

まとめ

ちょっと短いけどこんな感じ.計算に関して目をつむればベースラインとしてadversarial attackに関する頑健性がかなり上がっている.