利用超球嵌入來(lái)增強(qiáng)對(duì)抗訓(xùn)練

利用超球嵌入來(lái)增強(qiáng)對(duì)抗訓(xùn)練

這次介紹一篇NeurIPS2020的工作,"Boosting Adversarial Training with Hypersphere Embedding",一作是清華的Tianyu Pang。

該工作主要是引入了一種技術(shù),稱之為Hypersphere Embedding,本文將其稱作超球嵌入。

該方法和現(xiàn)有的一些對(duì)抗訓(xùn)練的變種是正交的,即可以互相融合提升效果。

這里指的對(duì)抗訓(xùn)練的變種有 ALP, TRADE 等

對(duì)抗訓(xùn)練框架

首先,如下圖所示,我們列出來(lái)AT以及其變種,用粉色標(biāo)識(shí)出來(lái)其訓(xùn)練目標(biāo)的差異

對(duì)抗訓(xùn)練框架

其中,x^* 是對(duì)抗樣本,右邊的對(duì)抗目標(biāo)可以理解為用于生成對(duì)抗樣本的誤差函數(shù)。

我們可以簡(jiǎn)單地看出來(lái)這些變種的設(shè)計(jì):

  • ALP是加上了正常樣本的交叉熵誤差,并引入了一個(gè)正則化項(xiàng),z 其實(shí)就是f(x)
  • TRADES則是在引入正常樣本的交叉熵誤差之后,將原本的對(duì)抗樣本的誤差做了修改,即,從原本的標(biāo)簽 y 改為正常樣本的輸出 f(x)

HE的修改部分主要有兩塊:

  • 在模型 f 上面
  • 在交叉熵誤差 \mathcal{L}_{CE} 上面

方法介紹

記號(hào)描述

這里首先給出一些基礎(chǔ)的記號(hào),方便后面的描述

我們考慮分類任務(wù),記標(biāo)簽數(shù)量為 L, 記模型為:
f(x) = \mathbb{S}(\mathbf{W}^\top z+b)
其中,z = z(x;\omega) 代表著基于模型參數(shù) \omega 抽取出來(lái)的特征,矩陣 \mathbf{W} = (W_1,...,W_L) 以及偏置 b 可以理解為最后的線性層,函數(shù) \mathbb{S}(\cdot) 是softmax函數(shù)。

我們記交叉熵誤差為:
\mathcal{L}_{CE}(f(x),y)=-1^\top_y \log f(x)
其中,1_y 就是標(biāo)簽 y 的 one-hot 編碼,也就是在 y 位置上為1,其余都是0。

我們使用 \angle(u,v) 表示向量 uv 之間的夾角

融合HE的對(duì)抗訓(xùn)練框架

首先,大多數(shù)的對(duì)抗訓(xùn)練可以寫成如下的二階段框架:
\min_{\omega,\mathbf{W}}\mathbb{E}[\mathcal {L}_T(\omega,\mathbf {W}|x,x^*,y)], \text{where } x^*=\arg\max_{x'\in\mathbf{B}(x)} \mathcal {L}_A(x'|x,y,\omega,\mathbf {W})
其實(shí)就是,先生成對(duì)抗樣本,然后優(yōu)化訓(xùn)練目標(biāo)。

在多次迭代之后,\mathbf{W} 以及 \omega 就會(huì)逐漸收斂,為了提高這種對(duì)抗訓(xùn)練的性能,有一些工作將metric learning引入進(jìn)對(duì)抗學(xué)習(xí)之中,不過(guò)這些工作的計(jì)算代價(jià)比較高昂,會(huì)導(dǎo)致一些類別偏向,在更強(qiáng)的對(duì)抗攻擊之下仍然也是脆弱的。

相關(guān)材料:

其實(shí)這里的motivation并不充分,給的理由仍然不夠有力

接下來(lái),直接給出HE的形式,其實(shí)就是對(duì)特征 z 以及權(quán)重 \mathbf{W} 進(jìn)行標(biāo)準(zhǔn)化
\mathbf {W}^\top z=(W_1^\top z, W_2^\top z,...,W_L^\top z)
其中 W_i^\top z=\Vert W_i\Vert\Vert z\Vert \cos\theta_i,\theta_i = \angle(W_i,z)

我們令
\widetilde { W_i } = \frac{ W_i }{ \Vert W_i \Vert }, \widetilde {z}=\frac{z}{ \Vert z \Vert}
從而有
\widetilde{f}(x) = \mathbb {S}(\widetilde{\mathbf{W}}^\top \widetilde{z}) = \cos\theta\\ \theta = (\cos\theta_1,\cos\theta_2,...,\cos\theta_L)
計(jì)算交叉熵函數(shù)的時(shí)候,引入一個(gè)變量 m,記:
\mathcal{L}_{CE}^{m}(\widetilde{f}(x),y)=-1^\top_y\log(\mathbb{S}(s\cdot(\cos\theta-m\cdot 1_y)))
其中 s > 0 是一個(gè)系數(shù),用于提高訓(xùn)練時(shí)候的數(shù)值的穩(wěn)定性

這個(gè) m 的引入是參考了CVPR2018的一篇文章,Cosface: Large margin cosine loss for deep face recognition

理論分析

首先我們定義一個(gè)向量函數(shù) \mathbb{U}_p
\mathbb{U}_p(u)=\arg\max_{\Vert v\Vert_p\leq 1}u^\top v,\text{where } u^\top\mathbb{U}_p(u)=\Vert u\Vert_q
其中 \frac{1}{p}+\frac{1}{q}=1

引理1:給定一個(gè)對(duì)抗目標(biāo)誤差函數(shù) \mathcal{L}_A,令 \mathbf{B}(x)=\{x'|\Vert x-x'\Vert_p\leq\varepsilon\},利用一階泰勒展開,可得 \max_{x'\in \mathbf {B}(x)}\mathcal {L}_A(x') 的解為 x^*=x+\varepsilon \mathbb{U}_p(\nabla_x\mathcal{L}_A)。進(jìn)一步的,\mathcal{L}_A(x^*) = \mathcal{L}_A(x) + \varepsilon \Vert \nabla_x\mathcal{L}_A(x) \Vert_q

證明:

不妨令 x'=x+\varepsilon v,其中 \Vert v\Vert_p\leq1

從而,\mathcal {L}_A(x')=\mathcal {L}_A(x + \varepsilon v)

x = x - \varepsilon v 處進(jìn)行泰勒展開,得到 \mathcal{L}_A(x+\varepsilon v) \approx \mathcal{L}_A(x) + \varepsilon v^\top (\nabla_x\mathcal{L}_A)

\max_{x'\in \mathbf {B}(x)}\mathcal {L}_A(x') = \mathcal{L}_A(x) + \varepsilon \max_{\Vert v\Vert_p\leq 1} v^\top\nabla_x \mathcal{L}_A(x)

這里需要用到ICML2019 First-order Adversarial Vulnerability of Neural Networks and Input Dimension的一個(gè)結(jié) 論, 即 \max_{\delta:\Vert \delta\Vert_p\leq\epsilon} |\partial_x\mathcal {L}\cdot \delta| = \epsilon\Vert\partial_x\mathcal{L} \Vert_q,\frac{1}{p}+\frac{1}{q}=1

通過(guò)引理1,我們獲得了對(duì)抗樣本 x' 對(duì)于損失函數(shù) \mathcal{L}_A 的影響,同時(shí)給出了 x 對(duì) x' 的方向。

引理2:令 W_{ij} = W_i-W_j 為兩個(gè)權(quán)重的差值,z' = z(x';\omega)x' 的特征向量,便有
\nabla_{x'}\mathcal{L}_{CE}(f(x'),f(x)) = -\sum_{i\neq j}f(x)_if(x')_j\nabla_{x'}(W_{ij}^\top z')
證明:

\begin{aligned} -\nabla_{x'}\mathcal {L}_{CE}(f(x'),f(x))&=\nabla_{x'}(f(x)^\top\log f(x'))\\ &=\sum_{i\in [L]} f(x)_i\nabla_{x'}(\log f(x')_i)\\ &=\sum_{i\in [L]}f(x)_i\nabla_{x'}(\log [\frac{\exp(W_i^\top z')}{\sum_{j\in [L]}\exp(W_j^\top z')}])\\ &=\sum_{i\in [L]}f(x)_i\nabla_{x'}(W_i^\top z' - \log(\sum_{j\in [L]}\exp(W_j^\top z')))\\ &=\sum_{i\in [L]}f(x)_i(\nabla_{x'}W_i^\top z' - \nabla_{x'}\log(\sum_{j\in [L]}\exp(W_j^\top z')))\\ &=\sum_{i\in [L]}f(x)_i(\nabla_{x'}W_i^\top z' - \frac{1}{\sum_{j\in [L]}\exp(W_j^\top z')}\nabla_{x'}(\sum_{j\in [L]}\exp(W_j^\top z')))\\ &=\sum_{i\in [L]}f(x)_i(\nabla_{x'}W_i^\top z' - \frac{1}{\sum_{j\in [L]}\exp(W_j^\top z')}(\sum_{j\in [L]}\exp(W_j^\top z')\nabla_{x'}(W_j^\top z')))\\ &=\sum_{i\in [L]}f(x)_i(\nabla_{x'}W_i^\top z' - \sum_{j\in [L]}f(x')_j\nabla_{x'}(W_j^\top z'))\\ &=\sum_{i\in [L]}f(x)_i((1-f(x')_i)\nabla_{x'}W_i^\top z' - \sum_{j\neq i}f(x')_j\nabla_{x'}(W_j^\top z'))\\ &=\sum_{i\in [L]}f(x)_i((\frac{\sum_{i\neq j}\exp(W_j^\top z')}{\sum_{t\in [L]}\exp(W_t^\top z')})\nabla_{x'}W_i^\top z' - \sum_{j\neq i}f(x')_j\nabla_{x'}(W_j^\top z'))\\ &=\sum_{i\in [L]}f(x)_i((\frac{\sum_{i\neq j}\exp(W_j^\top z')}{\sum_{t\in [L]}\exp(W_t^\top z')})\nabla_{x'}W_i^\top z' - \sum_{j\neq i}\frac{\exp(W_j^\top z')}{\sum_{t\in [L]}\exp(W_t^\top z')}\nabla_{x'}(W_j^\top z'))\\ &=\sum_{i\in [L]}f(x)_i(\sum_{i\neq j}f(x')_j\nabla_{x'}(W_{ij}^\top z'))\\ &=\sum_{i\neq j}f(x)_if(x')_j\nabla_{x'}(W_{ij}^\top z') \end{aligned}

在引理2之上,記 y^* 是對(duì)抗樣本 x^* 的預(yù)測(cè)輸出,其中 y\neq y^*

基于一些先驗(yàn)的觀測(cè),通常預(yù)測(cè)輸出標(biāo)簽的概率值(Top1 的概率)要遠(yuǎn)大于其他標(biāo)簽的概率值

于是有
\nabla_{x'}\mathcal {L}_{CE}(f(x'),f(x)) \approx -f(x)_yf(x')_{y^*}\nabla_{x'}(W_{yy^*}^\top z')
其中 W_{yy^*}=W_y-W_{y^*}

\theta_{yy^*}'=\angle(W_{y y^*},z'),W_{y y^*}^\top z'=\Vert W_{y y^*}\Vert\Vert z'\Vert \cos(\theta_{y y^*}') 并且 W_{y y^*} 不依賴于 x'

從而,每次攻擊的迭代下, x 的增量為
\mathbb{U}_p[\nabla_{x'}\mathcal{L}_{CE}(f(x'),f(x))]\approx-\mathbb{U}_p[\nabla_{x'}(\Vert z'\Vert \cos(\theta_{y y^*}'))]
而先前介紹的方法,會(huì)使得 \Vert z'\Vert = 1,進(jìn)而使得攻擊的樣本更貼近分類邊界

insight

如上圖所示,\Vert z'\Vert 會(huì)影響下降的方向,導(dǎo)致生成的對(duì)抗樣本產(chǎn)生的作用比較差,進(jìn)而抑制了對(duì)抗訓(xùn)練的效率

實(shí)驗(yàn)分析

首先是CIFAR-10上的白盒攻擊測(cè)試

cifar10-whitebox

可以看到,加了HE之后防御效果會(huì)有一定的提升,少數(shù)情況下會(huì)下降

然后是ImageNet上的測(cè)試

imagenet

相比FreeAT,防御效果會(huì)比較明顯

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容