f 物联网-[论文阅读]Adversarial Semantic Collisions - Powered by qidao123.com技术社区

[论文阅读]Adversarial Semantic Collisions

打印 上一主题 下一主题

主题 2184|帖子 2184|积分 6562

Adversarial Semantic Collisions
Adversarial Semantic Collisions - ACL Anthology
Proceedings of the 2020 Conference on Empirical Methods in Natural Language Processing (EMNLP)
对抗样本是相似的输入但是产生不同的模型输出,而语义冲突是对抗样本的逆过程,是不同的输入产生相似的模型输出。
开辟了基于梯度的方法,在白盒访问模型的情况下天生冲突,并将其应用于多个 NLP 任务。在释义识别中,攻击者构造的冲突文本被判定为输入查询的有用释义;像去重或归并相似内容这样的下游应用,会错误地将攻击者的输入与受害者的输入归并。在文档检索中,攻击者将冲突文本插入到此中一个文档中,使其即使与查询无关也能获得很高的排名。在回复发起中,攻击者的不相关文本被排在首位,还可能包含垃圾邮件或广告内容。在抽取式摘要中,攻击者将冲突文本插入到输入文本中,使其被选为最相关的内容。
第一种技术积极地天生冲突,而不思量潜在的防御步伐。然后开辟了两种技术,“正则化积极” 和 “自然” 技术,通过语言模型对天生的冲突举行约束,以规避基于狐疑度的过滤。在所有四个任务上,针对最先进的模型和基准数据集评估了所有技术。在 Quora 问题对的释义识别任务中,天生的冲突文本平均有 97% 的置信度被(错误地)识别为输入的释义。在文档检索中,天生的冲突使不相关文档的中位数排名从 1000 提拔到了 10 左右。在对话(句子检索)的回复发起任务中,使用积极和自然技术天生的冲突文天职别有 99% 和 86% 的时间被排在首位。在抽取式摘要任务中,天生的冲突文本 100% 的时间都被模型选为摘要。末了讨论了针对这些攻击的潜在防御步伐。
 
   
     表 1:我们研究中的四个任务。给定输入 x 和对受害者模型的白盒访问权限,攻击者天生冲突 c,导致欺骗性输出。冲突文本可能是偶然义的或看似自然的,也可能包含垃圾邮件信息(红色部分所示)。    威胁模型

1.语义相似性

设f表示模型,x和y是一对文本输入。对于这些应用,有两种常见的建模方法。在第一种方法中,模型将x和y的毗连作为输入,并直接产生一个相似性得分s=f(x,y)。在第二种方法中,模型盘算句子级别的嵌入ex​和ey​,即输入x和y的密集向量表示。然后,相似性得分盘算为s=g(ex​,ey​),此中g是向量相似性度量,如余弦相似性。基于这两种方法的模型都使用相似的损失举行训练,例如二元分类损失,此中每对输入如果在语义上相关则标记为 1,否则标记为 0。为了通用性,设S(x,y)是一个相似性函数,它涵盖了上述两种方法下的语义相关性。我们还假设S可以担当离散单词序列(表示为x=[w1​,w2​,...,wT​])或单词嵌入向量(表示为x=[e1​,e2​,...,eT​])形式的输入,详细取决于场景。
2.假设

假设攻击者完全相识目标模型,包括其架构和参数。通过模型提取,白盒攻击有可能转移到黑盒场景;我们将此留作将来的工作。攻击者控制一些将被目标模型使用的输入,例如,他可以为检索体系插入或修改候选文档。
3.攻击者的目标

 给定一个目标模型f和目标句子x,攻击者希望天生一个冲突文本c,使得f以为x和c在语义上相似或相关。这种攻击的对抗性用途取决于详细应用。例如,如果一个应用使用释义识别来归并相似内容(如在 Quora 中,Scharff,2015),攻击者可以使用冲突向用户发送垃圾邮件或广告。在检索体系中,攻击者可以使用冲突提高某些查询中不相关候选文档的排名。对于抽取式摘要,攻击者可以使冲突文本被作为目标文档的摘要返回。
   
     图 1:为查询输入x天生语义冲突c的概述。受害者模型f,冲突c和z通过梯度举行优化。我们在单纯形上搜索,一连变量z为c中现实冲突单词松弛天生的单词。    对抗性语义冲突

给定一个输入(查询)句子x,我们旨在为具有白盒相似性函数S的受害者模型天生一个冲突文本c。这可以表述为一个优化问题:argmaxc​S(x,c),使得x和c在语义上不相关。对c举行暴力枚举在盘算上是不可行的。相反,我们计划了算法 1 中概述的基于梯度的方法。我们思量两种变体:(a)积极天生无约束的、偶然义的冲突,以及(b)有约束的冲突,即语言模型以为流畅且不能基于狐疑度自动过滤掉的标记序列。
我们假设模型既可以担当硬独热编码单词作为输入,也可以担当软单词作为输入,此中软单词是词汇表的概率向量。

1.敌对性冲突

使用基于梯度的搜索,为给定的目标输入天生固定长度的冲突。
搜索分两步举行:1)通过带松弛的梯度优化找到冲突的一连表示,2)应用束搜索天生硬冲突。迭代地重复这两个步调,直到相似性得分s收敛。
优化软冲突:
首先通过温度退火将优化松弛到一连表示。给定模型的词汇表V和固定长度T,我们将每个位置的单词选择建模为一连的对数几率向量zt​。为了将每个zt​转换为输入单词,我们将在t位置软选择的单词建模为:

此中τ是温度标量。直观地说,对zt​应用 softmax 函数给出了词汇表V中每个单词的概率。温度控制单词选择概率的尖锐水平;当τ→0时,软单词与硬单词argmaxw∈V​zt​[w]雷同。
我们对一连值z举行优化。在每一步,软单词冲突被输入到S中以盘算S(x,cˇ)。由于所有操作都是一连的,毛病可以一直反向流传到每个zt​以盘算其梯度。因此,我们可以应用梯度上升来优化目标。
搜索硬冲突:在松弛优化之后应用投影步调,通过离散搜索找到硬冲突:对每个zt​应用从左到右的束搜索。在每个搜索步调t,我们首先根据zt​获取前K个单词,并根据目标相似性
对它们举行排名,此中ct+1:T​是从t+1到结束位置的部分软冲突。这个过程允许我们根据之前找到的硬单词和对将来单词的松弛估计,为每个位置的软单词找到硬单词替换。
用硬冲突重复优化:如果相似度得分在波束搜索后仍有提拔空间,就使用当前的 c 来初始化软解 zt,通过将硬解转回一连空间来举行下一次优化迭代。
为了从硬句子初始化一连松弛,我们对其独热表示应用标签平滑(LS)。对于当前c中的每个单词ct​,我们将其一维独热向量软化到Δ^{∣V∣-1}内,公式为:

此中ϵ是标签平滑参数。由于LS(ct​)被约束在概率单纯形Δ∣V∣-1内,我们将每个zt​初始化为log(LS(ct​)),以优化下一次迭代的软解。
2.约束冲突

敌对性方案在找到冲突上很高效,但是会疏忽偶然义的句子,PPL很高,很轻易被基于PPL的过滤筛选掉。解决方案:对冲突施加一个软约束,同时最大化目标相似度和语言模型相似似然:

此中P(c; g)是在预训练语言模型g下冲突c的语言模型似然度,β∈[0,1]是一个插值系数
两种方法解决公式3提出的优化:(a)在soft c上添加一个正则化项来近似LM的似然;(b)引导一个预训练的LM天生看起来自然的c
1.正则化Aggressive Collisions

给定语言模型g,可以把LM似然的soft版本作为一个正则化的形式来和从变量[z1,...,zT]中盘算得出的soft aggressive 
举行归并:

此中H函数是盘算交错熵,里面的P是给定部分软冲突
,在第t个位置的下一个token猜测概率
公式4 将软碰撞作为输入,放宽了硬碰撞的 LM 似然,并可添加到梯度优化的目标函数中。优化后的变量 zt 将方向于最大化 LM 可能性的词。
为了进一步低落 c 的狐疑度,我们使用了 LM 的退化特性,即 LM 对重复的常见字元赋予较低的狐疑度,并限制 c 中一连字元的跨度(如 c 的后半部)从最常出现的英语单词中选取,而不是从整个 V 中选取。
2.自然冲突

与先松弛再搜索不同,我们对公式 3 接纳先搜索再松弛的策略。这使我们在一连空间中选择下一个词时能够整合一个硬语言模型。在每一步t,我们最大化

此中,c1:t−1​是之前找到的束搜索解。这种次序优化本质上是在语言模型的可能性和冲突前缀的目标相似度上举行联合搜索的语言模型解码过程。
精确优化公式 5 需要根据语言模型似然logP和相似度S对每个w举行排序。在每一步评估每个词的语言模型可能性是高效的,因为我们可以缓存logP并以标准方式盘算下一个词的概率。然而,评估任意相似度函数S(x,c1:t−1​⊕w)需要对模型举行前向传递,这在盘算上可能很昂贵。
扰动语言模型的对数几率:受即插即用语言模型的开导,我们修改语言模型的对数几率以思量相似度。首先,令L_t是语言模型在步调t产生的下一个词的对数几率。然后,我们从这个初始值开始优化,找到一个更新值δt​,使它更倾向于选择能最大化相似度的词。详细来说,我们令zt​=ℓt​+δt​,此中δt​是一个扰动向量。然后,我们在松弛的相似度目标maxδt​​S(x,c1:t−1​⊕softmax(zt​/τ))上举行少量梯度步调,此中softmax(zt​/τ)是如公式 1 中的松弛软词。这鼓励从扰动后的对数几率zt​得到的下一个词的猜测分布,更倾向于选择那些可能与输入产生冲突的词。
联合束搜索:在每一步t举行扰动后,我们在V中找到最可能的前B个词。这使我们只需要对在当前束搜索上下文下,在语言模型中可能性较高的这部分词评估S。我们根据目标损失和语言模型对数可能性的插值对这些前B个词举行排序。我们按照公式 5 为每个束和每个前B个词分配一个分数,并用得分最高的词更新束搜索结果。
这个过程会天生一个看起来自然的解码序列,因为每一步都使用真实的词作为输入。随着我们构建序列,每一步的搜索都由语义相似度和流畅度这两个目标的联合得分引导。
整体思绪人话解释版

这篇文章的核心方法其实就是在搞一种叫“语义碰撞”的攻击,目的是让NLP模型把两个完全不相关的文本误判为语义相似,人类一看就知道这两句话毫无关系,但 NLP 模型却可能以为它们是“高度相似”(好比 99% 置信度),作者就把这种攻击叫做语义碰撞Semantic Collisions。作者用了梯度优化的方法来天生这种文本,还分了两种范例:一种是“无脑乱怼型”(Aggressive),另一种是“装得像人话型”(Natural)。
无脑乱怼型(Aggressive):

直接暴力优化,用梯度上升硬怼模型的相似度分数,天生一堆狗屁不通的文本。好比:“Pay 0ff your mortgage der Seller chem Wad marijuana scarcity prince”这种鬼话。  
方法分两步:  


  • 先用一连变量(softmax搞出来的概率)优化,让模型以为这坨东西和原文本相似。  
  • 再用beam search把一连变量转成详细的词(硬碰撞)。   
公式(1)和(2)就是装逼用的,本质就是“用梯度调词的概率,直到模型被忽悠”。
从文章的形貌和算法形貌上,详细来说:
把词变成“软选择”(Soft Selection)
通常 NLP 模型输入的是详细的词(好比 “cat”),但这里作者先用一个“概率分布”表示每个位置的词可能是什么。
好比,第一个词可能是 70% “cat”、20% “dog”、10% “apple”…… 这样模型可以盘算梯度(因为概率是一连的)。
公式(1)就是干这个的:

此中zt是每个词的“倾向性分数”,τ控制概率的会合水平(越小越倾向于选一个词)。
用梯度优化,让模型误判
目标是让模型以为天生的句子c^和原句x相似,所以优化目标是最大化x和c^的相似度(好比 BERT 的相似度分数)。
用梯度上升(Adam 优化器)调整zt​,让 S(x,c^)越来越大。
把“软词”变回“硬词”(Beam Search)
现在c^是一堆概率分布,但我们需要详细的词(好比 “cat” 而不是 70% “cat”)。用 Beam Search(一种搜索算法)从概率分布里挑出最能让模型误判的词组合。好比,如果模型以为 “cat dog apple” 和原句相似度很高,就选这个词组合。
重复优化,直到骗过模型
如果 Beam Search 找到的词还不敷“骗人”,就再回到第 1 步,用这些词初始化新的优化过程。
结果:天生一堆狗屁不通的句子,但模型以为它们和原句高度相似。
装得像人话型(Natural):

为了绕过基于语言模型(LM)的过滤,作者加了个约束:天生的文本不但要骗过目标模型,还要让LM以为它像人话。  
方法更啰嗦:
 一边用LM天生正常词,一边用梯度微调这些词的logits,让它们同时骗过目标模型。  
公式(3)到(5)本质就是“用LM天生词,但偷偷改几个词让模型上当”。  
公式(1)到(5)完满是为了论文显得高大上,现实就是梯度优化+beam search的老套路,非要包装成数学难题。  
“温度参数τ”、“标签平滑ϵ”这些术语除了装逼没啥用,直接说“调参数让天生更平滑”不就完了?  
自然碰撞的部分更是脱裤子放屁,明明就是“用LM天生+梯度微调”,非要写成一堆公式。  
从方法形貌上来看,详细步伐是:
用语言模型(LM)天生候选词,好比用 GPT-2 天生一些公道的词(“the”, “cat”, “is”…),而不是完全随机选。
微调这些词,让模型误判:对 LM 天生的词做小调整(好比把 “cat” 改成 “kitten”),让它们同时满足:语言模型以为公道(低狐疑度);目标模型以为和原句相似(高S(x,c))
公式(5)就是干这个的:

此中:
S(x,c)是目标模型的相似度;log⁡P(c;g)是语言模型的概率(保证句子通顺);β是调节权重(更方向通顺 or 更方向骗模型)
用 Beam Search 选最佳组合:和“无脑暴力法”类似,但每次选词时不但要看相似度,还要看语言模型的流畅度。
结果:天生看起来正常的句子,但模型仍然受骗。
这方法的核心就一句话:用梯度优化天生一堆文本,要么无脑乱怼,要么假装人话,目的是让模型把垃圾当宝贝。公式满是烟雾弹,直接看算法伪代码(Algorithm 1)反而更清楚。

实行



免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
继续阅读请点击广告

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

宁睿

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表