Reliable evaluation of adversarial robustness with an ensemble of diverse parameter-free attacks
阅读原文时间:2023年07月10日阅读:2

目录

Croce F. & Hein M. Reliable evaluation of adversarial robustness with an ensemble of diverse parameter-free attacks. In International Conference on Machine Learning (ICML), 2020.

作者改进了PGD攻击方法, 并糅合了不同种类的攻击方法于一体, 使得AA的估计更为有效可靠. 特别是不需要调参.

Auto-PGD

Auto-PGD, 其最大的改进的地方就是不需要调节参数(其实作者自己调得比较好啦). 普通的PGD:

\[x^{(k+1)} = P_S (x^{(k)} + \eta^{(k)}\nabla f(x^{(k)})),
\]

其中\(P\)是投影算子, \(\eta\) 是学习率, \(f\)是损失函数.

Momentum

\[z^{(k+1)} = P_S (x^{(k)}+\eta^{(k)}\nabla f(x^{(k)})) \\
x^{(k+1)} = P_S(x^{(k)}+\alpha \cdot (z^{(k+1)}-x^{(k)})+(1-\alpha) \cdot (x^{(k)}-x^{(k-1)})).
\]

注: 作者选择 \(\alpha=0.75\)

Step Size

首先确定总的迭代次数\(N_{iter}\), 然后确定一些检查的结点\(w_0=0, w_1, \cdots, w_n\), 在每一个检查结点检查如下条件

  1. \(\sum_{i={w_{i-1}}}^{w_{i}-1} 1_{f(x^{(i+1)}> f(x^{(i)}))}< \rho \cdot (w_j - w_{j-1})\);

  2. \(\eta^{w_{j-1}}\equiv \eta^{w_j}\) and \(f_{max}^{(w_{j-1})}\equiv f_{max}^{(w_j)}.\)

其中\(f_{max}^{(k)}\)是前\(k\)个结点前的最高的函数值, 若其中条件之一满足, 则对之后的迭代的学习率减半, 即

\[\eta^{(k)}:= \eta^{(w_j)} /2, \forall k=w_j+1, \ldots w_{j+1}.
\]

注: 学习率\(\eta^{(0)}=2\epsilon\).

  1. 条件1是为了检查这一阶段的迭代是否有效(即损失是否升高的次数), 这里作者选择\(\rho=0.75\);
  2. 条件二如果成立了, 说明这一阶段相较于之前的阶段并没有提升, 所以需要减半学习率.

注: 一旦学习率减半了, 作者会令\(x^{(w_j+1)}:=x_{max}\), 从最好的结果处restart.

剩下一个问题是, 如何选择\(w_i\), 作者采取如下方案

\[w_j = [p_jN_{iter}] \le N_{iter} \\
p_{j+1} = p_j + \max \{p_j - p_{j-1} - 0.03, 0.06\}, p_0=0, p_1=0.22.
\]

损失函数

一般来说, 大家用的是交叉熵, 即

\[\mathrm{CE}(x, y) = -\log p_y = -z_y + \log (\sum_{j=1}^K e_{z_j}),
\]

其梯度为

\[\nabla_x \mathrm{CE}(x, y) = (-1 + p_y) \nabla_x z_y + \nabla_{i\not=y} p_i \nabla_xz_i,
\]

若\(p_y\)比较接近于\(1\), 也就是说分类的置信度比较高, 则会导致梯度消失, 而置信度可以单纯通过\(h=\alpha g\)来提高, 即这个损失对scale是敏感的. 替代的损失使用DLR损失

\[\mathrm{DLR} (x, y) = -\frac{z_y -\max_{i \not=y}z_i}{z_{\pi_1}-z_{\pi_3}},
\]

其中\(\pi_i\)是按照从大到小的一个序. 这个损失就能避免scale的影响, 同时还有一个target版本

\[\mathrm{Targeted-DLR}(x, y) = - \frac{z_y-z_t}{z_{\pi_1}- (z_{\pi_3}+z_{\pi_4})/2}.
\]

AutoAttack

AutoAttack糅合了不同的攻击方法:

  • \(\mathrm{APGD_{CE}}\)
  • \(\mathrm{APGD_{DLR}}\)
  • \(\mathrm{FAB}\)
  • \(\mathrm{Square \: Attack}\): black-box