关注:决策智能与机器学习,深耕AI脱水干货
作者 | 任奎
报道 | 中国人工智能学会
随着计算机产业发展带来的计算性能与处理能力的大幅提高,人工智能在音视频识别、自然语言处理和博弈论等领域得到了广泛应用。在此背景下,确保人工智能的核心——深度学习算法具有可靠的安全性和鲁棒性至关重要。
然而,近年来研究者发现,深度学习模型存在着易受对抗样本攻击的安全隐患。攻击者可以通过向良性数据中添加特定的扰动,生成对抗样本。附加轻微扰动的对抗样本不会影响人类的判断,却会使深度学习模型产生错误结果。同时,对抗攻击在自动驾驶等场景中的成功实施更加表明了对抗攻击在现实世界中的可行性。因此 有关对抗攻击和对抗防御技术的研究,引起了机器学习和安全领域研究者越来越多的关注。
本文将围绕深度学习对抗攻击和对抗防御领域中最前沿的研究成果,探讨对抗攻击和防御技术的理论基础、经典算法,以及在工业领域的实际部署等研究与应用前沿。
根据攻击者可获得的信息不同,可将威胁模型划分成白盒、灰盒和黑盒攻击三类(见图1)。白盒攻击下,攻击者可以获得目标模型的全部信息;灰盒攻击下,攻击者仅可获取模型的结构信息但无法获得模型参数,有模型的查询权限;黑盒攻击下,攻击者仅拥有模型的查询权限。多数攻击算法都是为白盒模型设计的,但是由于对抗样本在模型之间具有一定的传递性,它们同样适用于灰盒模型和黑盒模型。
图 1 对抗攻击的爆发
上述提到的攻击算法中,攻击者要为每个样本分别生成其对应的对抗扰动,该对抗扰动不会在良性样本之间传递。那么是否存在一种通用的扰动,使附加该扰动的良性样本都可以欺骗某一特定神经网络?通用对抗攻击算法通过使用所有良性样本对全局扰动进行迭代更新,从而生成对大多样本有效的统一扰动。在每次迭代中,对于附加了当前扰动无法欺骗模型的良性样本,将会为其求解一个类似于L-BFGS的优化问题,以找到该样本得以欺骗模型所需的最小附加扰动。这一附加扰动将被添加到当前全局扰动中,对全局扰动进行一次更新。最终,附加该全局扰动的大多数良性样本均可欺骗神经网络。实验表明,这种简单的迭代算法可以有效地攻击深度神经网络,例如CaffeNet、GoogleNet、VGG和ResNet等。出乎意料的是,这种可在不同样本中传递的扰动同时可以应用到其他不同模型中,例如在VGG上 制作的通用扰动在其他模型上也可以达到53%以 上的攻击成功率。
尽管PGD和C&W等对抗攻击算法在数字领域非常有效,但将其扩展到物理世界仍然需要克服两个关键问题。第一个问题是,环境噪声和自然变化将破坏数字空间中计算出的对抗性扰动。例如模糊、噪声和JPEG编码等会对对抗性攻击的破坏率超过80%。第二个问题是,在现实世界中,攻击者仅能在特定物体上添加扰动,而无法对整个环境中的背景添加扰动。Athalye等提出了EoT算法来解决第一个问题。EoT算法不直接使用理想数字域中计算出的梯度用于生成对抗扰动,而 是在样本上添加了一组随机噪声,然后对加入这些噪声的样本计算梯度,用这些梯度的平均值生成对抗扰动。在基于梯度的攻击算法(如FGSM和PGD)中采用这种平均梯度,可以提高生成的对抗样本的鲁棒性。Eykholt等提出了一种掩模变换来分离背景和目标,从而可以将对抗性扰动限制在目标区域内,解决了第二个问题。该方法成功地在现实世界的交通标志上生成了可打印的对抗性扰动,其总体攻击成功率达到80%以上。
除了图片分类任务,如图1所示图像分割、3D识别、音频识别和强化学习等工业领域也会受到对抗攻击的影响。
在3D识别领域,PointNet、PointNet++和 DGCNN等基于点云的分类分割模型已被证明易收到对抗攻击的影响。Zheng等提出了基于丢弃点云中关键点的攻击方法。该方法通过将点移动到点云的质心,近似计算每个点对分类结果的贡献,然后通过丢弃具有较大贡献的点来欺骗神经网络。随着一定数量的高贡献点被丢弃,PointNet、PointNet++和DGCNN的分类精度显著降低。
在音频识别领域,Carlini和Wagner通过对C&W损耗函数的优化,成功地构建了高质量的音频对抗性样本。对于任何音频信号,只要在DeepSpeech上对音频信号的1%进行对抗性干扰,即可在其对应的文本翻译中最多影响50个单词。
在文本识别领域,Liang等提出了针对文本 分类任务的攻击策略。攻击者首先确定影响分类结果最重要的文本项,然后对这些重要文本项采用插入、删除、交换、字符替换和单词替换等扰动措施。实验表明,这种攻击可以成功地欺骗一 些基于DNN的文本分类器。
对抗防御可以分为启发式防御和可证明式防御两类。启发式防御算法由研究者通过实验获得,它们在实践中可以做到对一些特定的对抗攻击算 法具有良好的防御性能,但没有对防御性能给出理论性保障;可证明式防御通过理论证明,可以计算出在特定对抗攻击算法攻击下模型的最低准确度。
对抗训练试图通过将对抗样本纳入训练阶段来提高模型的鲁棒性,是目前为止性能最好的启发式防御算法。Goodfellow等首先提出对抗训练,他们使用良性样本和通过FGSM算法生成的对抗样本一起训练神经网络,用于增强神经网络的鲁棒性;接着,提出了使用由PGD算法生成的对抗样本进行对抗训练的方法。根据实验结果,PGD对抗训练可在MNIST、CIFAR-10和ImageNet等多个数据集上,在各种L∞攻击下获得最高的准确 度。但是,由于生成PGD对抗样本需要大量计算成本,因此PGD对抗训练不是一种有效率的防御措施。FGSM算法可以和随机启动结合,这样能高效地生成更多对抗样本用于对抗训练,从而提高模型鲁棒性。为了解决模型易受到黑盒攻击问题,提出了集成对抗训练方法。该方法首先训练多个具有不同网络结构模型,然后同时针对这些不同的模型生成对抗样本,并将其用于对抗训练。这种方法增加了用于对抗训练的对抗样本的多样 性,从而增强了针对从其他模型转移过来的对抗样本的鲁棒性。Lee等提出使用生成对抗网络进行对抗训练,其中生成器用于生成对抗样本,这些生成器生成的对抗样本将与良性样本一起用于训练鲁棒分类器。虽然没有给出理论证明,但研究表明对抗训练在现阶段是对抗攻击最有效的防御手段之一。
随机化也是启发式防御的一种,它通过在模型训练或使用阶段加入随机操作,从而减轻对抗性扰动对模型性能的影响。Xie等在图像输入神经网络前先对图像进行随机变换,从而减轻对抗扰动的效果。这种方法在黑盒攻击下获得了卓越性能,但在白盒攻击中可被EoT算法成功攻击。
去噪属于启发式防御,它的主要目的是减轻或去除对抗扰动,从而降低对抗扰动的功能。去噪防御根据降噪目标不同,可以分为输入降噪和特征降噪两类。输入降噪试图从输入中部分或完全消除对抗扰动。Xu等采用减少色彩深度和模糊图像的方法对图像进行压缩,降低图片自由度,从而消除对抗扰动。通过比较模型对于原始图片与压缩后的图片预测结果的差异,来判断原始输 入是否是对抗样本。Shen等使用生成对抗网络对输入数据进行去噪。该方法将训练一个用于去噪的生成器,其输入是良性样本或对抗样本,其输出是经去噪后的样本。Meng等使用自动编码器技术对输入数据进行去噪。
以上所有介绍的防御都是启发式防御,这意味着这些防御的有效性只在实验上得到验证,而没有在理论上得到证明,如果无法计算理论上的错误率,这些启发式防御可能会被未来的新攻击所打破。因此许多研究者致力于探索可证明的防御方法,在一类定义明确的攻击下,这些方法始终能保持一定的准确性。目前有代表性的可证明式算法有基于半正定规划的可证明式防御、基于对偶方法的可证明式防御、分布稳健性证明、稀疏权重DNN、基于KNN的防御,以及基于贝叶斯模型的防御等。然而根据现有的实验结果,可证明式防御措施的实际性能仍然比对抗训练的性能差很多。
在对抗攻击与对抗防御的研究领域中,仍有许多尚未解决的挑战。
首先,对抗样本背后的因果关系这一问题并未得到回答。早期对这一问题的研究将对抗样本的出现归因于模型结构和学习方法,研究者认为适当的策略和网络结构将显著提高对抗样本的鲁棒性。研究者沿着这种思路尝试过一些探索,特别是与模糊梯度相关的研究,然而实际上这可能是一种不太合理的研究方向。相反,最近的研究发现,对抗样本的出现更可能是数据维度较高和 训练数据不足导致的。
最后,是否存在稳健又高效率的对抗防御算法?我们仍然没有发现一种防御技术能够很好地平衡防御效果和运算效率。在有效性方面,对抗性训练表现出最好的性能,但计算成本很高。在效率方面,许多基于随机和去噪的防御系统的配置只需几秒钟。然而,最近的许多论文表明这些防御方法并没有他们声称的那样有效。可证明防御理论上为实现对抗防御指明了一条道路,但其 准确性和有效性都远远不能满足实际要求。
对于该领域的未来发展,我们认为对抗攻击的研究趋势主要包括两个方向。第一个是设计更有效、更强大的攻击用来评估新兴的防御系统,这个方向的重要性很直观,我们希望在潜在攻击者之前评估所有的风险。第二个是实现物理世界中的对抗攻击。以前对该研究主题的主要疑问是那些对抗性攻击是否会对物理世界形成真正 威胁。一些研究人员怀疑由于某些环境因素的影响,最初在数字空间中设计的对抗性攻击将无效。Athalye等首先向良性样本中添加随机的噪音模拟物理世界的环境因素,并计算这些噪音样本上产 生的梯度期望,进而实现物理世界的对抗攻击。Eykholt等进一步考虑了掩膜和制造误差从而实现了交通标志的对抗性扰动,这些都验证了物理对抗样本的存在。
在防御方面,由于大多数启发式防御都无法防御自适应白盒攻击,因此研究者开始关注可证明的防御,这种防御是指无论攻击者采用哪种攻击方式,可证明防御都可以在一定程度下保证防御性能。但是到目前为止,可扩展性是目前大多数可证明防御所普遍具有的问题。例如区间界分析是最近流行的证明式防御方法,但是它不能扩展到非常深的神经网络和大型数据集。这主要是因为,攻击算法只要针对某一类防御生效即可, 然而一个有效的防御算法则需要去防御所有可能的攻击手段。
近两年来,针对深度学习算法的对抗攻击和防御技术迅速发展。然而,对于对抗样本的成因、一般鲁棒边界的存在等理论问题还没有找到答案,需要深入研究。不仅如此,在实际安全应用中,还没有一套有效且通用的对抗防御技术框架与方法,目前的对抗性训练防御技术,在实际部署中计算成本仍然太高。许多启发式防御仍缺乏进一步验证,还不能抵御自适应性白盒攻击者的攻击。简而言之,要达到有效防御目标,不仅需要深度 学习算法安全性理论的突破,还需要将系统框架、安全测试、环境适配等多个方面的安全技术相结合,才能推动深度学习对抗性安全的跨越式发展。(参考文献略)
作者简介:任奎,浙江大学网络空间安全学院和计算机学院副院长、求是讲席教授,IEEE Fellow,ACM杰出科学家。主要研究领域为数据安全与隐私保护、人工智能安全、物联网安全和生物认证技术。