信息防御的战例研究:文本对抗攻击基础 前沿及相关资源
信息防御的战例研究:文本对抗攻击基础 前沿及相关资源1. 文本对抗攻击阅读列表3 文本对抗攻击相关资源他们通过大量的实验证明了基于义原的词替换方法和基于离散粒子群优化的对抗样本搜索算法分别比相应的其他方法有更好的攻击效果,并且就对抗样本质量、攻击有效性而言也有更好或相当的表现,如图5、图6所示。图5:不同词替换方法和对抗样本搜索算法组合而成的攻击方法的成功率。受害模型为BiLSTM和BERT,分类任务为情感分析(IMDB、SST-2)和自然语言推断(SNLI)。图6:不同攻击方法的对抗样本质量评测结果。%M为替换词的比率,%I为语法错误增加率,PPL为基于GPT-2语言模型困惑度。
(a)不同词替换方法的平均候选词数量
(b)不同词替换方法为pie找到的候选替换词
图4:基于义原的词替换方法的优越性
在第二步,他们提出了基于离散粒子群优化(Discrete Particle Swarm Optimization)的对抗样本搜索算法。粒子群优化[21]是一种典型的组合优化算法,之前实证研究表明它比包括遗传算法在内的其他组合优化算法更加高效[22]。
他们通过大量的实验证明了基于义原的词替换方法和基于离散粒子群优化的对抗样本搜索算法分别比相应的其他方法有更好的攻击效果,并且就对抗样本质量、攻击有效性而言也有更好或相当的表现,如图5、图6所示。
图5:不同词替换方法和对抗样本搜索算法组合而成的攻击方法的成功率。受害模型为BiLSTM和BERT,分类任务为情感分析(IMDB、SST-2)和自然语言推断(SNLI)。
图6:不同攻击方法的对抗样本质量评测结果。%M为替换词的比率,%I为语法错误增加率,PPL为基于GPT-2语言模型困惑度。
3 文本对抗攻击相关资源
1. 文本对抗攻击阅读列表
清华大学自然语言处理与社会人文计算实验室(THUNLP)建立的TAADpapers(https://github.com/thunlp/TAADpapers)是不可多得的全面、系统的文本对抗领域的阅读列表。该列表包含工具包、综述、文本对抗攻击、文本对抗防御、模型鲁棒性验证、基准和评估、其他六个部分,基本上涵盖了所有的文本对抗攻防领域的已发表论文。其中攻击部分的论文进一步分成了句级、词级、字级、混合四个子部分,并且还为每篇论文打上了受害模型可见性的标签:gradient/score/decision/blind。除了提供论文pdf链接之外,如果某篇论文有公开代码或数据,也会附上相应的链接。目前该列表共有65篇论文。
图7:TAADpapers阅读列表的目录
2. 文本对抗攻击工具包
在图像领域有CleverHans、Foolbox、Adversarial Robustness Toolbox (ART)等多个对抗攻击工具包。这些工具包将图像领域的对抗攻击模型整合在一起,大大减少了模型复现的时间和难度,提高了模型评测的标准化程度,有力推动了图像领域对抗攻击的发展。
经笔者调研,目前仅有TextAttack和OpenAttack这两个文本对抗工具包。两者均包含了一些现有的文本对抗攻击方法,下载方便,简单易用。其中TextAttack构建时间更早,由弗吉尼亚大学祁妍军教授领导的Qdata实验室开发(项目主页:https://github.com/QData/TextAttack)。而OpenAttack构建时间较晚,由清华大学自然语言处理与社会人文计算实验室开发(项目主页:https://github.com/thunlp/OpenAttack)。具体而言,TextAttack主要支持基于梯度和基于分数的攻击,以及词/字级扰动,而OpenAttack则覆盖了所有类型的攻击,包括基于决定的攻击和盲攻击以及句级的扰动。此外,OpenAttack也有相对而言更好的可扩展性,用户在攻击自己的模型或者设计新的攻击模型时有更大的自由度和更好的可实现性。
图8展示了使用OpenAttack进行对抗攻击时打印攻击结果的样例,可以看到OpenAttack能够实时输出攻击每一个原始输入的结果,包括成功与否、受害模型访问次数、对抗样本各项质量评估指标等,针对所有原始输入攻击结束后,还会打印一个攻击结果总结表,列出整体的各项攻击评价指标。图9列出了OpenAttack目前支持的所有攻击方法。在OpenAttack的GitHub项目主页也给出了一些基本的用例,更详细的可以参看其文档和源码。