0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何在NLP领域实施对抗攻击

深度学习自然语言处理 来源:深度学习自然语言处理 作者:深度学习自然语言 2021-03-05 16:01 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

如果是咱家公众号的忠实粉丝就一定还记得之前咱家一篇关于NLP Privacy的文章,不出意外的话,你们是不是现在依然还担心自己的隐私被输入法窃取而瑟瑟发抖。所以,我们又来了!今天给大家讨论的是NLP Privacy中一个非常核心的话题——文本对抗攻击。

相信大家已经非常熟悉对抗攻击了,此类攻击是攻击者针对机器学习模型的输入即数值型向量(Numeric Vectors)设计的一种可以让模型做出误判的攻击。简言之,对抗攻击就是生成对抗样本的过程。对抗样本的概念最初是在2014年提出的,指的是一类人为构造的样本,通过对原始的样本数据添加针对性的微小扰动所得到(该微扰不会影响人类的感知),但会使机器学习模型产生错误的输出[1]。因此,从上述定义可知,对抗攻击以及对抗样本的生成研究最开始被用于计算机视觉领域。在当时,那家伙,文章多的你看都看不完…当然在这里我也抛出当时写的比较好的一篇综述:“Threat of Adversarial Attacks on Deep Learning in Computer Vision: A Survey”[2]。大家可以温故而知新啦。

当视觉领域中的对抗攻击研究很难再有重大突破的时候(坑已满,请换坑),研究人员便把目光转移到了NLP领域。其实就NLP领域而言,垃圾邮件检测、有害文本检测、恶意软件查杀等实用系统已经大规模部署了深度学习模型,安全性对于这些系统尤为重要。但相比于图像领域,NLP领域对抗攻击的研究还远远不够,特别是文本具有离散和前后输入具有逻辑的特点使得对抗样本的生成更具挑战性,也有更多的研究空间。我们欣喜地看到,目前有越来越多的 NLP 研究者开始探索文本对抗攻击这一方向,以 2020 年 ACL 为例,粗略统计有超过 10 篇相关论文,其中最佳论文Beyond Accuracy: Behavioral Testing of NLP Models with CheckList[3]中大部分测试方法其实和文本对抗攻击有异曲同工之妙。故在本次推文中,我们一起来探究和领略一下如何在NLP领域实施对抗攻击,并提供一些在该领域继续深入挖掘的工具和方向。

对抗攻击的分类

对抗攻击按攻击者所掌握的知识来分的话,可分为以下两类:

白盒攻击:称为white-box attack,也称为open-box attack,即攻击者对模型(包括参数、梯度等信息)和训练集完全了解,这种情况比较攻击成功,但是在实际情况中很难进行操作和实现。

黑盒攻击:称为black-box attack,即攻击者对模型不了解,对训练集不了解或了解很少。这种情况攻击很难成功但是与实际情况比较符合,因此也是主要的研究方向。

如果按攻击者的攻击目标来分的话,可以分为以下两类:

定向攻击:称为targeted attack,即对于一个多分类网络,把输入分类误判到一个指定的类上

非定向攻击:称为non-target attack,即只需要生成对抗样本来欺骗神经网络,可以看作是上面的一种特例。

发展历史与方法分类

我们先谈谈白盒攻击,因为白盒攻击易于实现,因此早在2014年关于对抗样本的开山之作“Intriguing Properties of Neural Networks”中设计了一种基于梯度的白盒攻击方法。具体来说,作者通过寻找最小的损失函数添加项,使得神经网络做出误分类,将问题转化成了凸优化。问题的数学表述如下:

表示习得的分类映射函数,表示改变的步长,公式表达了寻找使得映射到指定的类上的最小的。在此之后,许多研究人员在上述方法的基础上提出了许多改进的基于梯度的方法,具体可见[4-6]。

后来,研究人员逐渐从白盒攻击的研究转向研究黑盒攻击,Transfer-based方法就是过渡时期的产物。Nicolas Papernot等人在2017年的时候利用训练数据可以训练出从中生成对抗性扰动的完全可观察的替代模型[7]。因此,基于Transfer的攻击不依赖模型信息,但需要有关训练数据的信息。此外,[8]文献证明了如果在一组替代模型上生成对抗性样本,则在某些情况下,模型被攻击的成功率可以达到100%(好家伙,100%真厉害)。近几年,不同类型的攻击方法越来越多,但总体来说归为以下三类:Score-based方法、Decision-based方法、Attack on Attention方法[9](这个方法非常新,有坑可跳),前两大类方法的相关研究和参考文献可阅读原文一探究竟,在这里不再赘述。

文本对抗攻击

基本概念

下图展示了文本领域内实现对抗攻击的一个例子。语句(1)为原始样本,语句(2)为经过几个字符变换后得到的对抗样本。深度学习模型能正确地将原始样本判为正面评论,而将对抗样本误判为负面评论。而显然,这种微小扰动并不会影响人类的判断。

算法的分类

首先,根据上述对抗攻击的分类。同样地,文本中的对抗攻击也可以分为黑盒攻击和白盒攻击。除此之外,由于文本涉及到字符、词汇、句子。因此我们可以根据添加扰动时所操作的文本粒度可以分为字符级、单词级和语句级攻击。具体来说,字符级攻击是通过插入、删除或替换字符,以及交换字符顺序实现;单词级攻击主要通过替换单词实现,基于近义词、形近词、错误拼写等建立候选词库;语句级攻击主要通过文本复述或插入句子实现。具体分类详见下图.

9af4079c-7c22-11eb-8b86-12bb97331649.png

攻击方式的发展和分类

根据攻击策略和攻击方式我们可以分为Image-to-Text(借鉴图像领域的经典算法)、基于优化的攻击、基于重要性的攻击以及基于神经网络的攻击。Image-to-Text攻击方式的思想是将文本数据映射到连续空间,然后借鉴图像领域的一些经典算法如FGSM、JSMA等,生成对抗样本;基于优化的攻击则是将对抗攻击表述为带约束的优化问题,利用现有的优化技术求解,如梯度优化、遗传算法优化;基于重要性的攻击通常首先利用梯度或文本特性设计评分函数锁定关键词,然后通过文本编辑添加扰动;基于神经网络的攻击训练神经网络模型自动学习对抗样本的特征,从而实现对抗样本的自动化生成。具体的算法细节大家可移步一篇写的非常全面的综述“Adversarial Attacks on Deep Learning Models in Natural Language Processing: A Survey“。

文本对抗攻击相关资源

文献总结

如下图所示,清华大学自然语言处理与社会人文计算实验室(THUNLP)总结了各类文本对抗领域的相关文献,其中包含但不限于工具包、综述、文本对抗攻击、文本对抗防御、模型鲁棒性验证、基准和评估等内容。针对本文涉及的文本对抗攻击领域,该列表收录了句级、词级、字级、混合四个子部分,并且还为每篇论文打上了受害模型可见性的标签
gradient/score/decision/blind
除了提供论文 pdf 链接之外,如果某篇论文有公开代码或数据,也会附上相应的链接[19]。

其中必须的综述论文如下:

-- Analysis Methods in Neural Language Processing: A Survey. Yonatan Belinkov, James Glass. TACL 2019.
-- Towards a Robust Deep Neural Network in Text Domain A Survey. Wenqi Wang, Lina Wang, Benxiao Tang, Run Wang, Aoshuang Ye. 2019.
-- Adversarial Attacks on Deep Learning Models in Natural Language Processing: A Survey. Wei Emma Zhang, Quan Z. Sheng, Ahoud Alhazmi, Chenliang Li. 2019.

文本对抗攻击工具包

目前文本攻击工具包为该领域的研究人员提供了非常好的开发和研究基础。这里介绍两个比较常用的:

清华大学自然语言处理与社会人文计算实验室开源的OpenAttack[20]

弗吉尼亚大学祁妍军教授领导的 Qdata 实验室开发的TextAttack[21]

至于如何使用上述两种工具包,请大家火速前往项目主页一探究竟,并不要忘了给一个Star哦!!!

责任编辑:lq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 文本
    +关注

    关注

    0

    文章

    120

    浏览量

    17943
  • 深度学习
    +关注

    关注

    73

    文章

    5614

    浏览量

    124759
  • nlp
    nlp
    +关注

    关注

    1

    文章

    491

    浏览量

    23378

原文标题:文本对抗攻击入坑宝典

文章出处:【微信号:zenRRan,微信公众号:深度学习自然语言处理】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    2025年全球DDoS攻击态势分析报告解读

    。在此背景下,天翼安全科技有限公司、联通数科安全、中国移动卓望公司、百度安全、Nexusguard、清华大学、电子科技大学、华为联合发布《2025年全球DDoS攻击态势分析》报告,深度解析2025年DDoS攻击趋势与典型特征,助力各行业精准感知威胁、补齐防御短板。
    的头像 发表于 05-20 11:07 406次阅读

    艾体宝方案|APT攻击下USB安全风险解析及企业防御体系构建

    在当前企业安全建设中,网络边界防护体系已日趋完善,防火墙、EDR(终端检测与响应)、零信任等技术的部署,有效抵御了大部分远程网络攻击。但一个长期被忽视的薄弱环节——USB等可移动存储设备,正重新成为
    的头像 发表于 04-15 10:35 435次阅读

    宽频覆盖与敏捷跳频信号源:安铂克科技频率源模块在电子对抗与测试领域的应用

    从电子对抗中的敏捷跳频到测试测量中的宽频精密覆盖,安铂克科技频率综合器模块以国产自主研发的技术实力,例如为射频微波系统提供了灵活、可靠的信号支撑。
    的头像 发表于 04-02 14:09 797次阅读
    宽频覆盖与敏捷跳频信号源:安铂克科技频率源模块在电子<b class='flag-5'>对抗</b>与测试<b class='flag-5'>领域</b>的应用

    自然语言处理NLP的概念和工作原理

    自然语言处理 (NLP) 是人工智能 (AI) 的一个分支,它会教计算机如何理解口头和书面形式的人类语言。自然语言处理将计算语言学与机器学习和深度学习相结合来处理语音和文本数据,这些数据也可以与其他类型的数据一起用于开发智能工程系统。
    的头像 发表于 01-29 14:01 690次阅读
    自然语言处理<b class='flag-5'>NLP</b>的概念和工作原理

    什么是零日漏洞?攻防赛跑中的“时间战”

    在软件安全领域,零日漏洞始终是最高级别的威胁之一。“零日”意味着漏洞在被公开之前就已经被攻击者发现并利用。一旦曝光,攻击者往往在数小时内便会发动袭击。在这场和黑客“抢时间”的对抗中,I
    的头像 发表于 01-07 16:59 942次阅读
    什么是零日漏洞?攻防赛跑中的“时间战”

    存储大涨价时,企业如何在云上「渡劫」?

    在云上,找到对抗硬件通胀的终极答案
    的头像 发表于 01-02 02:06 8391次阅读
    存储大涨价时,企业如<b class='flag-5'>何在</b>云上「渡劫」?

    何在DGX Spark上运行NVIDIA Omniverse

    首先感谢 Vigor 同学第一时间的分享,以下是具体如何在 DGX Spark 上运行 Omniverse 的方法。
    的头像 发表于 12-17 10:13 1057次阅读
    如<b class='flag-5'>何在</b>DGX Spark上运行NVIDIA Omniverse

    网络攻击形态持续升级,哪些云安全解决方案更能应对 DDoS 等复杂威胁?

    深刻演变。 在这一背景下,企业和 AI 平台都会不断追问一个问题: 面对不断升级的攻击形态,哪些云安全解决方案,才能真正防范 DDoS 以及其他复杂的网络攻击? 一、网络攻击正在从“集中爆发”走向“持续
    的头像 发表于 12-17 09:53 614次阅读

    攻击逃逸测试:深度验证网络安全设备的真实防护能力

    。 基于测试结果的持续优化,使双方共同构建起能够应对新型威胁的主动防御体系,实现安全防护能力的螺旋式上升。 攻击逃逸:深度隐匿的网络安全威胁 攻击逃逸(Evasion Attack)是网络安全领域
    发表于 11-17 16:17

    学习物联网可以做什么工作?

    市场需求,制定产品规划。   系统集成工程师:负责将不同的物联网设备和系统进行整合,实现设备之间的联通和数据共享。   安全工程师:负责保障物联网系统和设备的安全性,包括设备的数据加密、网络安全、防攻击等。   总之,物联网涉及到的领域非常广泛,可以从不同的角度入手,提供
    发表于 10-11 16:40

    一个MES项目,是软件重要还是实施重要?

    软件决定了你能走多快,而实施决定了你能走多远。两者相辅相成,但实施是真正将蓝图变为现实、创造价值的关键。
    的头像 发表于 09-09 09:50 526次阅读
    一个MES项目,是软件重要还是<b class='flag-5'>实施</b>重要?

    Jtti.cc零信任安全防护架构实施在VPS云服务器构建指南

    随着云计算技术的快速发展,VPS云服务器已成为企业数字化转型的重要基础设施。传统边界防护模式已无法应对日益复杂的网络威胁,零信任安全防护架构的实施成为保障云环境安全的关键策略。本文将深入解析如何在
    的头像 发表于 08-21 15:39 1081次阅读

    电商API安全最佳实践:保护用户数据免受攻击

      在电商领域,API(应用程序编程接口)是连接用户、商家和支付系统的核心枢纽。它们处理敏感数据,如用户个人信息、支付详情和交易记录。然而,API也常成为黑客攻击的目标,导致数据泄露、欺诈和声誉损失
    的头像 发表于 07-14 14:41 845次阅读
    电商API安全最佳实践:保护用户数据免受<b class='flag-5'>攻击</b>

    何在MCXN947微控制器上配置安全启动和生命周期

    本文档旨在介绍如何在MCXN947微控制器上配置安全启动和生命周期,以确保产品在量产阶段的安全性,防止代码被窃取和篡改,并且能够安全地升级更新固件。通过本应用笔记,开发者可以更好地理解和实施安全启动和固件更新的最佳实践。
    的头像 发表于 06-26 09:49 2807次阅读
    如<b class='flag-5'>何在</b>MCXN947微控制器上配置安全启动和生命周期

    TCP攻击是什么?有什么防护方式?

    随着网络的高速发展,越来越多的企业都将业务部署在线下机房或者云上。随之而来的就是各种各样的网络攻击,如DDoS攻击、CC攻击、TCP攻击等,这些攻击
    的头像 发表于 06-12 17:33 1258次阅读