反思《Towards Evaluating the Robustness of Neural Networks》
最近参加USENIX Security 2022时有人指出,我五年前与导师合作发表的《Towards Evaluating the Robustness of Neural Networks》已迎来五周年,并询问我对该论文的思考。这实际上已是今年第二次被问及此问题(第一次是在IEEE S&P),我认为值得撰文详述。
成功之处
梯度下降是最佳攻击方法
论文最核心且正确的观点是:应使用基于梯度下降的攻击方法来评估神经网络鲁棒性。如今看来这似乎显而易见,但当时学界主流是设计复杂启发式算法,例如构建特殊损失函数并贪婪选择像素修改。虽然这些方法在无防御网络上能生成对抗样本,但难以用于评估防御机制的实际效果。
正如Kernighan所言:“调试难度是编写代码的两倍。因此若以最高技巧编写代码,你注定无法调试它。“攻击带防御的神经网络比攻击无防御模型困难至少两倍,若将全部精力用于设计基础攻击,则无法应对防御模型。而梯度下降作为神经网络训练中的成熟技术,更可能成功攻击防御模型。
约束攻击仍具价值
虽然并非首个明确使用p范数约束对抗样本优化的论文,但本论文确立了这种攻击构建范式。早期研究往往未明确定义"接近"的含义或使用奇怪的距离函数。通过定义可适用于常见距离度量的攻击方法,我们推动了这些距离指标成为标准。
对现有方法的全面评估
此前研究多侧重于提出新方法而缺乏与既往工作的对比评估(部分源于相关研究较少)。我们着力在不同威胁模型下与多种攻击方法进行对比分析,避免了这种不良趋势。
论文可读性良好
我们成功向当时不熟悉机器学习的安全研究者解释了该领域核心概念——这得益于一年前我们自身正是这类研究者,故能准确把握需要解释的内容。论文前三分之一都在阐述现有方法,之后才介绍新攻击。我们还详细说明了容易混淆的技术细节(如处理logits还是概率值,图像取值范围是[0,1]还是[0,255]),这些规范如今虽已标准化,但在当时极具价值。
同行评审插曲
在讨论论文不足前,需提及同行评审的问题。最初我们计划投稿AISec'16研讨会,但因截延延期转而投递Euro S&P。评审结果堪称灾难:一位评审单句评价"这不是计算机安全论文”,另一位直接认定"无趣”。最终论文因"缺乏真正见解"、“未提供系统性评估方法”、“贡献有限"和"动机不明确"被拒。如今回看,这些评价显然有失偏颇。
不足之处
攻击方法过于复杂
为提升攻击性能,我们采用了Adam优化器、默认10,000次梯度下降迭代、20次超参数二分搜索以及复杂的tanh盒约束。虽然每个改动带来约5%提升,但导致攻击速度缓慢且难以理解。实际上,简单梯度下降已足以构成有效攻击,后续研究提出的"投影梯度下降(PGD)“方法因其简洁性更受青睐——这本应是我们的选择。
遗漏大量前期研究
论文隐含地将对抗机器学习起点置于2014年,但早在此前就存在题为《Adversarial Machine Learning》的研究。由于未充分阅读这些文献,我们未能将工作置于更广阔的研究背景中,这对后来以此文为入门读物的研究者而言尤为遗憾。
未命名攻击方法
未给攻击方法命名是明显失误。虽然当时认为"仅使用梯度下降不值得专门命名”,且在伯克利仅称其为"优化攻击”,但具有专属名称确实有助于学术传播(有趣的是我们曾使用"投影梯度下降"称呼某个变体,但未将其作为正式名称)。
局限于范数约束攻击
论文仅关注范数约束攻击(即限制对手对输入进行微小像素扰动),未提及其他攻击类型。我们应明确其他距离度量同样重要,并鼓励寻找更优距离函数的研究——即使五年后这方面进展仍然有限。在安全关键场景中,大幅修改输入或完全构建新输入以欺骗分类器同样有效,约束攻击因其难度更高而具有研究价值,但这一点未得到明确阐述。
数学公式错误
论文中仅有的数学公式章节存在两处错误。虽然可通过常数缩放修正且未实际影响结果(甚至可能因错误阴差阳错获得更好效果),但仍是学术瑕疵。多次被问及为何不修正时,我认为论文应保持发表时的原始状态,除非涉及撤稿级重大错误。
对早期"成功"的哲学思考
意识到最高引论文已成过去是种奇特体验——该文现已成为计算机安全会议历史引用第六的论文,这种成功不可复制。2016年选择对抗机器学习研究方向极具运气成分:该领域已知内容足够产生新想法但尚未形成共识,深度学习热潮方兴未艾,加之我前期积累了攻击论文写作经验。虽然论文成功包含技术因素,但主要归功于时机运气。
这种成功改变了我的研究方式:虽然仍享受自由探索的乐趣,但人们开始期待持续产出"重要"成果,导致我逐渐减少非重点课题的研究。另一方面,这也让我能更从容地承担研究风险。
此外,此经历让我深刻认识到引用量的局限性:本文引用数远超提出差分密码分析、线性密码分析、返回导向编程或数域筛法的开创性论文(这些研究真正改变了密码学和计算机安全的基础范式),而我们的工作并未根本改变计算机构建和使用方式。
无论如何,见证对抗机器学习领域五年来的长足发展令人欣喜。我们从对模型鲁棒性一无所知,到如今至少理解其内涵(尽管完全解决问题仍极困难),很荣幸能参与这一进程。