查看原文
其他

浅谈文本对抗攻击与防御方法(下篇)

马瑜汝 大象无形 中国保密协会科学技术分会 2022-10-02

一、前言

对抗攻击,也称作对抗样本生成,是由于模型判断边界与真实系统边界的不一致而导致的。对抗样本指的是一类通过对原始样本数据添加针对性的微小扰动而恶意构建的样本,其不会影响人类的感知判断,但会使深度学习模型产生错误的判断。顾名思义,文本对抗攻击即指针对文本数据展开的对抗攻击研究。本文分为上下两篇,简述文本对抗领域的攻击方法与防御方法。在上篇中我们介绍了文本对抗攻击的主流方法,本篇为下篇,将为大家介绍针对文本对抗攻击的防御方法。对抗攻击,也称作对抗样本生成,是由于模型判断边界与真实系统边界的不一致而导致的。对抗样本指的是一类通过对原始样本数据添加针对性的微小扰动而恶意构建的样本,其不会影响人类的感知判断,但会使深度学习模型产生错误的判断。顾名思义,文本对抗攻击即指针对文本数据展开的对抗攻击研究。本文分为上下两篇,简述文本对抗领域的攻击方法与防御方法。在上篇中我们介绍了文本对抗攻击的主流方法,本篇为下篇,将为大家介绍针对文本对抗攻击的防御方法。

二、概述

对抗攻击和防御之间持续的拉力赛迅速使得落后的方法失效。随着高级的对抗攻击不断发展,亟需有效的防御方法来对抗这种威胁。如图1所示,针对文本对抗攻击的防御方法主要分为对抗样本检测和模型增强两大类,前者直接检测对抗扰动,后者旨在增强模型的鲁棒性 [1]。 

图1 对抗攻击的防御方法

三、检测对抗样本

对于防御,一种自然的想法是考虑根据对抗样本和合法文本的差异直接进行识别。在字符级攻击中,大多数被扰动后的文本都存在拼写错误。类似地,在词级攻击中,扰动后的文本中可能会产生一些未知词。因此,可以通过检查拼写错误和未知词来检测对抗样本。未知词是预训练模型词汇表中的低频词或模型未见过的词。拼写错误词也可以视为未知词,因为其不在词汇表中。

Pruthi等人 [2]在下游分类器之前建立了一个单词识别模型,以区分字符级的对抗样本,模型架构如图2所示。识别模型将拼写错误的单词视为未知词,并使用三种反馈机制来进行处理。(1)不管它是否是对抗性的,模型都允许其通过。(2) 使用中性词如“a”或“the”进行替换。(3)使用更大的、不太专业的语料库重新训练单词识别模型。此外,Li等人 [3]使用基于上下文感知的拼写检查服务来检测拼写错误。但实验结果表明,这种检测方法仅对字符级攻击和部分单词级攻击有效。拼写检查方法并不适合基于其他语言(如中文)的对抗样本。

此外,Zhou等人 [4]向模型中引入了三个组件,即鉴别器、估计器和恢复器,用于区分字符级扰动和单词级扰动,组件在训练阶段使用原始语料库进行训练。当新文本被馈送到检测器时,鉴别器根据扰动与否对每个标记token进行分类。如果一个token被标记为对抗性的,则估计器就生成一个近似的嵌入向量来替换token用于恢复。这种检测器高度依赖于原始语料库,导致来自其他语料库的对抗样本失效。同时,基于相邻token来对token是否受到扰动进行分类的理论依据尚不清楚。 

图2 单词识别模型

四、模型增强

当面对一些不存在未知词的词级攻击和句子级攻击时,直接检测的方法会失效。因此,有学者提出了通过增强模型的安全性来抵御对抗性攻击,主流的模型增强方法包括对抗训练、函数增强以及鲁棒性验证,通过改变模型架构或更新模型参数来增强模型。

1.对抗训练

对抗训练指的是将对抗样本与原始样本混合进行再训练,以提高模型对对抗样本的容忍度。Wang等人 [5]使用数据增强技术来为对抗训练创建不同的样本。丰富的数据和语义关系可以克服模型的过稳定性从而增加其鲁棒性。同样,Wang等人 [6]和Wang等人 [7]提取训练数据的同义词并替换原始词以构建更大的数据集进行再训练,不过这种方法是针对同义词替换攻击而设计的,可能无法检测到其他类型的对抗性攻击,如字符级攻击。

上述方法是传统的对抗训练方法,直接用所有的对抗样本和合法样本构建训练数据集。然而,研究人员已经证明传统对抗训练对迭代攻击的抵抗力很弱,并提出了迭代训练方法。受图像领域中迭代训练方法 [8] [9]的启发,Liu 等人 [10]和Liu等人 [11]在每个epoch中都构建新的对抗样本,并将它们添加到训练集中,模型架构如图3所示。通过对损失函数的迭代优化,重新训练的模型对于对抗样本具有更强的鲁棒性。

在对抗训练中,数据多样性是决定模型鲁棒性的关键因素,依赖于对最坏情况扰动的启发式近似。因此,对抗训练很容易受到未知类型的攻击。 

图3 对抗训练模型

2.函数增强

DNN 包含许多内置函数以及可以外部添加的函数。因此,有研究人员提出可以利用专门设计的函数来减少模型中对抗样本和合法样本表示的差异,从而消除对抗扰动对模型的影响。

Jones等人 [12]构建了一种健壮的编码函数,将输入映射到一个更小的离散编码空间。其构建了一个包含文本中常用词的词汇表,通过对字典中的词进行聚类,一个簇中的词共享相同的编码,将这些编码用作模型的训练数据。对于一个对抗样本来说,扰动和相应的原始词属于同一个集群(体现了稳定性),而非扰动不受影响(体现了保真度)。但是,这种方法的性能受到词汇量的限制。此外,稳定性和保真度之间的权衡也需要更详细的分析。

Li等人 [13]将外部知识结合到多头注意力 [14]中,以增强模型鲁棒性,其架构如图4所示。模型在执行自然语言处理任务时可以搜索外部知识,帮助模型探索特定任务的数据分布之外的空间。实验结果表明,当将知识添加到模型中的交叉编码器时,其在防御对抗样本方面表现出明显的改进。尽管该方法不需要额外的参数并且适用于任何具有注意力单元的模型,但外部知识的质量和大小限制了该方法的性能。 

图4 函数增强模型图4 函数增强模型

3.鲁棒性验证

检测未知词和对抗训练减轻了对抗样本的部分威胁,但由于离散文本扰动引起的搜索空间的复杂性,他们不太可能找到最坏情况下的扰动 [15]。因此,研究人员提出了验证鲁棒性训练来寻找边界。在某些条件下,模型可以保证对攻击具有鲁棒性,即无论对手如何创建对抗样本,它都不能跨越边界。

Jia等人 [16]提出了通过优化区间边界传播(Interval Bound Propagation, IBP)上限 [17]来进行鲁棒性训练的验证,这可以限制最坏情况扰动的损失并压缩对抗样本的生存空间,模型架构如图5所示。事实证明,这种方法对于 IMDB 和 SNLI 上的词替换攻击具有鲁棒性。同样,Huang等人[15]也应用IBP验证鲁棒性培训。但是,IBP 仅适用于验证具有连续输入的 DNN,因此不适用于其他模型,如字符级模型。不同的是,Ko 等人 [18]提出了一种基于梯度的方法来寻找神经网络的最小失真或鲁棒性量化的下界,其适用于各种模型,没有像 IBP 那样的限制,但是由于自注意力机制,它效率较低,并对 Transformer 验证提出了计算挑战。

考虑到目前的验证方法只处理朴素的 DNN,Shi 等人 [19]提出了一种新方法来验证更复杂模型 Transformer 的鲁棒性。一个Transformer 模型可以被分解为多个子层,其中每个子层包含多个位置,且每个位置由多个神经元组成。计算得到每个神经元的全局上下界,而后通过减少边界之间的距离来有效地获得安全保证。与基于 IBP 的方法相比,这项工作中经过验证的鲁棒性界限要严格得多,并且它们还识别单词的重要性。

但是,这种方法很大程度上受模型、测试数据和优化方法的影响,不像未知词检测和对抗训练是通用的方法。

图5 鲁棒性验证模型

五、理论分析

上述方法是防御对抗攻击的实际方法,但他们没有从理论上解释为什么NLP模型会给出不同的预测。然而,分析和解释模型的异常行为是实施或解决对抗攻击的根本途径。

目前,NLP 中的相关模型分析工作以合法数据为输入,观察 DNN 的行为。根据分析对象的不同,我们将分析方法 [20]分为两类:外部输入和模型的内部结构。这些工作证实了一些现有方法的理论正确性,也能帮助我们更好地了解 DNN,从而提出更强大的攻击或防御方法。

1.外部输入

研究表明,外部输入(例如,输入组合 [21]或表示 [22] [23])的变化会影响模型的输出。例如,Arras等人[21]将逐层相关传播(Layer-wise Relevance Propagation, LRP)方法扩展到 LSTM,对哪些词负责在单个文本中的情感归属给出了可靠的解释。Gupta等人 [25]提出了分层语义积累(Layer Wise Semantic Accumulation , LWSA)方法来解释如何为循环神经网络构建语义以及显着性模式如何在决策中起作用,作者分析了 RNN 对不同输入的敏感性,以检查预测的增加或减少。

2.内部结构

探索模型内部单元的性能是一种更有效的分析方法。Aubakirova等人 [25]提出了激活聚类来跟踪最大程度激活的神经元。同样,Dalvi等人 [26]研究了单个神经元捕获某些被认为对任务很重要的特性。通过这种方式,他们可以提高模型的透明度并揭示各个参数的重要性,以帮助理解 DNN 的内部工作原理。已有研究人员提出在图像领域中通过操作神经元来进行防御 [27] [28],但这种方法在文本领域是否可行仍然有待探索。

Jacovi等人 [29]对 CNN 处理文本的内部工作进行了分析,他们证明了过滤器捕获了 ngram 的语义类别,并且最大池化将与最终分类相关的 ngram 与其他 ngram 分开。通过插入几个 ngram,过滤器将生成超出提取范围的结果,导致错误分类。Wallace等人 [30]将 HotFlip [31]应用于 AllenNLP 以解释模型的脆弱性,促进了防御方法的实施,模型分析示例如图6所示。

事实上,研究人员可以将对抗样本与现有的模型分析方法相结合来探索和分析模型的行为,例如模型的哪一层改变了预测,以及对抗样本和合法输入之间传播路径(由激活的神经元组成)的差异,二者的结合可以激励我们想出更有效的方法来消除模型的脆弱性。

图6 模型分析示例

六、小结

在本篇文章中,我们首先介绍了对抗样本检测和模型增强两类防御对抗样本的实用方法,然后介绍了一些模型理论分析方面的工作。将对抗样本与模型分析相结合是一个值得探索的研究方向,有助于更好的防御模型脆弱性。

参考文献

[1] Wang W, Wang R, Wang L, et al. Towards a robust deep neural network in texts: A survey. arXiv preprint arXiv:1902.07285, 2019.

[2] D. Pruthi, B. Dhingra, and Z. C. Lipton, “Combating adversarial misspellings with robust word recognition,” in Proceedings of the 57th Annual Meeting of the Association for Computational Linguistics. ACL, 2019, p. 5582–5591.

[3] J. Li, S. Ji, T. Du, B. Li, and T. Wang, “Textbugger: Generating adversarial text against real-world applications,” in Proceedings of the the Network and Distributed System Security Symposium, 2019.

[4] Y . Zhou, J.Y . Jiang, K.W. Chang, and W. Wang, “Learning to discriminate perturbations for blocking adversarial attacks in text classification,” in Proceedings of the 2019 Conference on Empirical Methods in Natural Language Processing and the 9th International Joint Conference on Natural Language Processing.  ACL, 2019, p. 4904–4913.

[5] Y . Wang and M. Bansal, “Robust machine comprehension models via adversarial training,” in Proceedings of the 2018 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language T echnologies. ACL, 2018, p. 575–581.

[6] X. Wang, H. Jin, and K. He, “Natural language adversarial attacks and defenses in word level,” in arXiv preprint arXiv:1909.06723, 2019.

[7] Z. Wang and H. Wang, “Defense of word-level adversarial attacks via random substitution encoding,” in Proceedings of the International Conference on Knowledge Science, Engineering and Management, 2020.

[8] A. Madry , A. Makelov , L. Schmidt, D. Tsipras, and A. Vladu, “Towards deep learning models resistant to adversarial attacks,” in Proceedings of the International Conference on Learning Representations, 2018.

[9] A. Shafahi, M. Najibi, A. Ghiasi, Z. Xu, J. Dickerson, C. Studer, L. S. Davis, G. Taylor, and T. Goldstein, “Adversarial training for free!” in Proceedings of the 33st International Conference on Neural Information Processing Systems, 2019.

[10] K. Liu, X. Liu, A. Yang, J. Liu, J. Su, S. Li, and Q. She, “A robust adversarial training approach to machine reading comprehension,” in Proceedings of the 34th AAAI Conference on Artificial Intelligence, 2020.

[11] H. Liu, Y . Zhang, Y . Wang, Z. Lin, and Y . Chen, “Joint character-level word embedding and adversarial stability training to defend adversarial text,” in Proceedings of the 34th AAAI Conference on Artificial Intelligence, 2020.

[12] E. Jones, R. Jia, A. Raghunathan, and P . Liang, “Robust encodings: A framework for combating adversarial typos,” in Proceedings of the 58th Annual Meeting of the Association for Computational Linguistics. ACL, 2020, p. 2752–2765.

[13] A. H. Li and A. Sethy , “Knowledge enhanced attention for robust natural language inference,” arXiv preprint arXiv:1909.00102, 2019.

[14] A. Vaswani, N. Shazeer, N. Parmar, J. Uszkoreit, L. Jones, A. N. Gomez, L. Kaiser, and I. Polosukhin, “Attention is all you need,” in Proceedings of the Conference on Neural Information Processing Systems, 2017, p. 6000–6010.

[15] P. S. Huang, R. Stanforth, J. Welbl, C. Dyer, D. Yogatama, S. Gowal, K. Dvijotham, and P . Kohli, “Achieving verified robustness to symbol substitutions via interval bound propagation,” in Proceedings of the 2019 Conference on Empirical Methods in Natural Language Processing and the 9th International Joint Conference on Natural Language Processing. ACL, 2019, p. 4083–4093.

[16] R. Jia, A. Raghunathan, K. Göksel, and P . Liang, “Certified robustness to adversarial word substitutions,” in Proceedings of the 2019 Conference on Empirical Methods in Natural Language Processing and the 9th International Joint Conference on Natural Language Processing. ACL, 2019, p. 4129–4142.

[17] K. Dvijotham, S. Gowal, R. Stanforth, R. Arandjelovic, B. O’Donoghue, J. Uesato, and P . Kohli, “Training verified learners with learned verifiers,” in arXiv preprint arXiv:1805.10265, 2018.

[18] C.Y . Ko, Z. Lyu, L. Weng, L. Daniel, N. Wong, and D. Lin, “Popqorn: Quantifying robustness of recurrent neural networks,” in Proceedings of the 36th International Conference on Machine Learning, 2019.

[19] Z. Shi, H. Zhang, K.W. Chang, M. Huang, and C.J. Hsieh, “Robustness verification for transformers,” in Proceedings of the International Conference on Learning Representations, 2020.

[20] Y . Belinkov and J. Glass, “Analysis methods in neural language processing: A survey ,” Transactions of the Association for Computational Linguistics, vol. 7, pp. 49–72, 2019.

[21] L. Arras, G. Montavon, K.R. Muller, and W. Samek, “Explaining recurrent neural network predictions in sentiment analysis,” in Proceedings of the 8th Workshop on Computational Approaches to Subjectivity, Sentiment and Social Media Analysis, 2017, p. 159–168.

[22] Y . Adi, E. Kermany , Y . Belinkov , O. Lavi, and Y . Goldberg, “Fine-grained analysis of sentence embeddings using auxiliary prediction tasks,” in Proceedings of the International Conference on Learning Representations (ICLR), 2017.

[23] S. Park, J. Bak, and A. Oh, “Rotated word vector representations and their interpretability ,” in Proceedings of the 2017 Conference on Empirical Methods in Natural Language Processing. ACL, 2017, pp. 401–411.

[24] P . Gupta and H. Schutze, “Lisa: Explaining recurrent neural network judgments via layer-wise semantic accumulation and example to pattern transformation,” in Proceedings of the 2018 EMNLP Workshop BlackboxNLP: Analyzing and Interpreting Neural Networks for NLP, 2018, p. 154–164.

[25] M. Aubakirova and M. Bansal, “Interpreting neural networks to improve politeness comprehension,” in Proceedings of the 2016 Conference on Empirical Methods in Natural Language Processing, 2016, p. 2035–2041.

[26] F. Dalvi, N. Durrani, H. Sajjad, Y . Belinkov , D. A. Bau, and J. Glass,“What is one grain of sand in the desert? analyzing individual neurons in deep nlp models,” in Proceedings of the 33th AAAI Conference on Artificial Intelligence (AAAI), 2019.

[27] S. Sharmin, N. Rathi, P . Panda, and K. Roy , “Inherent adversarial robustness of deep spiking neural networks: Effects of discrete input encoding and non-linear activations,” in Proceedings of the 16th European Conference on Computer Vision (ECCV 2020), 2020.

[28] C. Zhang, A. Liu, X. Liu, Y . Xu, H. Yu, Y . Ma, and T. Li, “Interpreting and improving adversarial robustness of deep neural networks with neuron sensitivity ,” IEEE T ransactions on Image Processing, vol. 30, pp. 1291–1304, 2021.

[29] A. Jacovi, O. S. Shalom, and Y . Goldberg, “Understanding convolutional neural networks for text classification,” in Proceedings of the 2018 EMNLP Workshop BlackboxNLP: Analyzing and Interpreting Neural Networks for NLP, 2018, p. 56–65.

[30] E. Wallace, J. Tuyls, J. Wang, S. Subramanian, M. Gardner, and S. Singh2, “Allennlp interpret: A framework for explaining predictions of nlp models,” in Proceedings of the 2019 Conference on Empirical Methods in Natural Language Processing and the 9th International Joint Conference on Natural Language Processing, 2019, pp. 7–12.

[31] J. Ebrahimi, A. Rao, D. Lowd, and D. Dou, “Hotflip: White-box adversarial examples for text classificationd,” in Proceedings of the 56th Annual Meeting of the Association for Computational Linguistics. ACL, 2018, pp. 31–36.

中国保密协会

科学技术分会

长按扫码关注我们

作者:马瑜汝 大象无形

责编:丁昶

2020年精彩文章TOP5回顾

从使馆焚烧文件说说碎纸及复原技术

从一场全球关注的涉密会议谈起光纤窃听与防护美国应对新冠病毒在关键基础设施安全方面的建议信息产业自主生态建设综述

近期精彩文章回顾

浅谈文本对抗攻击与防御方法(上篇)

预训练模型的过去、现在和将来——下篇
预训练模型的过去、现在和将来——上篇
浅谈英国网络安全战略2016-2021实施进展(下)

浅谈英国网络安全战略2016-2021实施进展(上)

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存