概
本文認為普通的對抗訓練會導致不必要的adversarial margin從而犧牲過多的精度.
於是提出一種Helper-based adversarial training (HAT)來幫助網絡學習.
主要內容
作者認為, 一個樣本\(\bm{x}\)沿着一個方向\(\hat{\bm{r}}\)的margin可以按照如下方式定義:
\[\mu(\bm{x}, \hat{\bm{r}}) = \arg\min_{\alpha} |\alpha | \quad \mathrm{s.t.} \: F(\bm{x} + \alpha \hat{\bm{r}}) \not = F(\bm{x}), \]
其中\(F(\bm{x}) = \arg\max_{k} f_k(\bm{x})\)為預測類別.
\(\bm{x}\)的對抗方向, 可以定義為:
\[\bm{r}_i = \frac{\delta}{\|\delta\|}, \: \delta = \max_{\|\delta\|\le \epsilon} \ell(y_i, f_{\theta} (\bm{x}_i + \delta)). \]
某種意義上就是最短路徑.
作者通過實驗發現, 對抗訓練會使得樣本的對抗方向\(\bm{r}_i\)變得不必要得大, 這會導致自然精度的嚴重下降.
如下圖所示, 其實藍色的決策邊界已經足夠保證魯棒性, 而對抗訓練會使得決策邊際變成紅色. 所以作者通過\(\bm{x} + 2\bm{r}\)喂入普通網絡得到一個預測標簽\(\tilde{y}\), 利用這個來告訴對抗訓練的網絡, 其實這個margin不必這么大. 這相當於前后各限制了一個條件.
最后的算法如下: