人工智能
用对抗性例子攻击自然语言处理系统

英国和加拿大的研究人员设计了一系列针对自然语言处理 (NLP) 系统的黑盒对抗性攻击,这些攻击可有效对抗各种流行的语言处理框架,包括谷歌、Facebook、IBM 和微软广泛部署的系统。
这种攻击有可能被用来削弱机器学习翻译系统,迫使它们要么产生无意义的内容,要么实际上改变翻译的性质; NLP 模型的瓶颈训练;对有毒成分进行错误分类;通过导致错误的索引来毒害搜索引擎结果;导致搜索引擎无法识别人们完全可读的恶意或负面内容;甚至对 NLP 框架造成拒绝服务 (DoS) 攻击。
尽管作者已向研究中涉及其产品的各方(未具名)披露了论文中提出的漏洞,但他们认为,NLP 行业在保护自身免受对抗性攻击方面一直比较落后。论文指出:
这些攻击利用了语言编码特性,例如隐形字符和同形异义词。尽管过去在垃圾邮件和网络钓鱼诈骗中偶尔出现过,但如今正在大规模部署的众多自然语言处理系统的设计者似乎完全忽略了它们。
其中一些攻击是在尽可能“黑盒”的环境中进行的——通过对MLaaS系统的API调用,而不是本地安装的NLP框架的FOSS版本。关于这些系统的综合效力,作者写道:
“所有实验都是在黑盒设置中进行的,允许无限的模型评估,但不允许访问评估模型的权重或状态。 这代表了最强大的威胁模型之一,几乎在所有环境中都可能发生攻击,包括针对商业机器学习即服务 (MLaaS) 产品的攻击。 所检查的每个模型都容易受到难以察觉的扰动攻击。
“我们认为,这些攻击的适用性在理论上应该推广到任何没有足够防御措施的基于文本的 NLP 模型。”
这个 纸 标题为 坏角色:难以察觉的 NLP 攻击,来自剑桥大学和爱丁堡大学三个系的三名研究人员,以及多伦多大学的一名研究人员。
论文的标题很有代表性:它充满了“难以察觉的” Unicode 字符,这些字符构成了研究人员采用的四种主要攻击方法之一的基础。

甚至论文的标题也隐藏着秘密。
方法
论文提出了三种主要的有效攻击方法: 隐形字符; 同形文字;和 重新排序研究人员发现,这些“通用”方法在黑盒场景下能够广泛适用于 NLP 框架。另一种方法,涉及使用 删除 研究人员发现,该字符仅适用于使用操作系统剪贴板的不寻常的 NLP 管道。
1:隐形角色
此攻击使用的字体中的编码字符未映射到 Unicode 系统中的字形。 Unicode 系统旨在标准化电子文本,目前涵盖多种语言和符号组的 143,859 个字符。 其中许多映射不会包含字体中的任何可见字符(自然不能包含 Unicode 中每个可能条目的字符)。

论文中假设了一个使用不可见字符进行攻击的示例,该攻击将输入的单词分割成对自然语言处理系统毫无意义的片段,或者如果精心设计,可能会阻止准确的翻译。 对于普通读者来说,两种情况下的原文都是正确的。 资料来源:https://arxiv.org/pdf/2106.09898.pdf
通常,您不能仅使用其中一个非字符来创建零宽度空格,因为大多数系统都会呈现“占位符”符号(例如有角度的框中的正方形或问号)来表示无法识别的字符。
然而,正如该论文所观察到的,只有一小部分字体在当前的计算场景中占据主导地位,并且毫不奇怪,它们倾向于遵守 Unicode 标准。
因此,研究人员选择 GNU 的 Unifont 字形进行实验,部分原因是它对 Unicode 的“强大覆盖”,也因为它看起来与许多其他可能被输入到 NLP 系统的“标准”字体相似。虽然 Unifont 生成的不可见字符无法渲染,但它们仍然被测试的 NLP 系统视为可见字符。
应用领域
回到论文本身的“精心设计”的标题,我们可以看到,从选定的文本执行 Google 搜索并没有达到预期的结果:

这是客户端的影响,但服务器端的影响要严重一些。 该论文观察到:
“即使搜索引擎的爬虫可能会抓取受干扰的文档,但用于索引该文档的术语也会受到扰动的影响,从而使其不太可能出现在未受干扰的术语的搜索中。” 因此,可以“在众目睽睽之下”隐藏搜索引擎的文档。
“作为示例应用,一家不诚实的公司可能会在其财务文件中掩盖负面信息,以便股票分析师使用的专业搜索引擎无法发现它。”
“隐形字符”攻击唯一被证明效果较差的场景是针对有害内容、命名实体识别 (NER) 和情感分析模型。作者推测,这要么是因为这些模型是在包含隐形字符的数据上训练的,要么是因为模型的分词器(将原始语言输入分解为模块组件)已配置为忽略这些字符。
2:同形字
同形文字是一个看起来像另一个字符的字符——这是一个语义弱点,在 2000 年被利用来创建 骗局复制品 PayPal 支付处理域的。

在论文中的这个假设示例中,同形文字攻击通过用视觉上无法区分的同形文字(以红色框出)替换常见的拉丁字符来改变翻译的含义。
作者评论*:
“我们发现机器学习模型可以处理 用户提供的文本,例如神经机器翻译系统,特别容易受到这种类型的攻击。 例如,考虑市场领先的服务 谷歌翻译。 在撰写本文时,输入字符串“支付宝l” 的英语 俄罗斯模型正确输出“PayPal”,但替换 输入中的拉丁字符 a 与西里尔字符 а 错误地输出了“папа”(英语中的“父亲”)。’
研究人员观察到,虽然许多 NLP 管道会用特定语言的字典替换特定语言字典之外的字符。 (“未知”)标记,将中毒文本调用到管道的软件进程可能会在此安全措施生效之前传播未知单词进行评估。作者指出,这 “打开了惊人的巨大攻击面”.
3:重新排序
Unicode 允许使用从左到右书写的语言,其顺序由 Unicode 的双向 (比迪) 算法。 因此,在单个字符串中混合从右到左和从左到右的字符会造成混淆,Unicode 通过允许特殊控制字符覆盖 BIDI 来解决这一问题。 这些可以实现几乎任意的固定编码顺序渲染。

在本文的另一个理论示例中,翻译机制被导致将翻译文本的所有字母放在错误的顺序中,因为它遵循错误的从右到左/从左到右的编码,由于一部分对抗性源文本(圆圈)命令它这样做。
作者表示,在撰写本文时,该方法对 Chromium 网络浏览器中的 Unicode 实现、谷歌 Chrome 浏览器的上游源代码、微软 Edge 浏览器以及相当多的其他分支浏览器都有效。
除此之外: 删除项
包含在这里以便后续结果图清晰, 删除 攻击涉及包含代表退格键或其他影响文本的控制/命令的字符,该字符由语言阅读系统以类似于文本宏的风格有效地实现。
作者观察到:
'Unicode 中的少量控制字符可能会导致 要删除的相邻文本。 最简单的示例是退格 (BS) 和删除 (DEL) 字符。 还有回车符 (CR),它会导致文本呈现算法返回到行的开头并覆盖其内容。
'为了 例如,表示“Hello CR再见 世界”将被渲染为“再见 世界”。'
如前所述,这种攻击实际上需要不太可能的访问级别才能起作用,并且只有通过剪贴板复制和粘贴文本才完全有效,无论是否系统地 - 这是一种不常见的 NLP 摄取管道。
不管怎样,研究人员对它进行了测试,它的表现与它的同类产品相当。 然而,使用前三种方法的攻击可以简单地通过上传文档或网页来实现(在针对搜索引擎和/或网络抓取 NLP 管道的攻击的情况下)。

在删除攻击中,精心设计的字符有效地删除了它们之前的内容,或者强制将单行文本放入第二段,在这两种情况下,对于普通读者来说都不会明显看出这一点。
针对当前 NLP 系统的有效性
研究人员对来自 Facebook、IBM、Microsoft、Google 和 HuggingFace 的五种流行闭源模型以及三种开源模型进行了一系列非针对性和针对性攻击。
他们还测试了 “海绵”攻击 针对模型。海绵攻击实际上是针对 NLP 系统的 DoS 攻击,其中输入文本“无法计算”,并导致训练速度严重减慢——而这一过程通常应该通过数据预处理来避免。
评估的五项 NLP 任务是机器翻译、有毒内容检测、文本蕴涵分类、命名实体识别和情感分析。
这些测试是在数量不详的 Tesla P100 GPU 上进行的,每个 GPU 都在 Ubuntu 上运行 Intel Xeon Silver 4110 CPU。 为了在进行 API 调用时不违反服务条款,实验以零(不受影响的源文本)到五(最大干扰)的扰动预算统一重复进行。 研究人员认为,如果允许更多的迭代次数,他们获得的结果可能会超出。

对抗样本对 Facebook 的影响 费尔赛克 EN-FR 型号。

针对 Facebook 的 Fairseq 的两种攻击:“非针对性”旨在破坏,而“针对性”旨在改变翻译语言的含义。
研究人员进一步测试了他们的系统,将其与无法以相同方式生成“人类可读”扰动文本的先前框架进行比较,发现该系统与这些系统基本相当,而且通常明显更好,同时保留了巨大的隐身优势。

所有方法、攻击向量和目标的平均有效性徘徊在 80% 左右,并且运行的迭代很少。
研究人员在评论结果时表示:
“也许我们难以察觉的扰动攻击最令人不安的方面是它们的广泛适用性:我们测试的所有基于文本的 NLP 系统都容易受到影响。 事实上,任何摄取用户提供的文本作为输入的机器学习模型理论上都容易受到这种攻击。
“对抗性影响可能因应用程序和模型而异,但所有基于文本的模型都基于编码文本,并且所有文本都受对抗性编码的影响,除非编码受到适当限制。”
通用光学字符识别?
这些攻击取决于 Unicode 中所谓的“漏洞”,而这些漏洞可以通过自然语言处理 (NLP) 流程来避免,该流程会将所有传入文本光栅化,并使用光学字符识别 (OCR) 作为净化措施。在这种情况下,阅读这些受干扰攻击的人所看到的非恶意语义将被传递到自然语言处理系统。
然而,当研究人员实施 OCR 管道来测试这一理论时,他们发现 BLEU (双语评估实习)分数使基线准确度下降了 6.2%,这表明可能需要改进 OCR 技术来弥补这一问题。
他们进一步建议,默认情况下应从输入中删除 BIDI 控制字符,对不常见的同形文字进行映射和索引(他们称之为“一项艰巨的任务”),并使用标记器和其他摄取机制来对抗不可见字符。
最后,研究小组敦促 NLP 领域对对抗性攻击的可能性更加警惕,这是目前计算机视觉研究非常感兴趣的领域。
“我们建议所有构建和部署基于文本的 NLP 系统的公司,如果希望他们的应用程序能够抵御恶意行为者的攻击,就实施此类防御措施。”
* 我将内联引用转换为超链接
18 年 08 月 14 日 2021:XNUMX – 删除重复提及 IBM,从报价中移动自动内部链接 – MA













