Deformer、TEXTFOOLER、强化学习做文本分类 三篇库存论文分享

Deformer:Decomposing Pre-trained Transformers for Faster Question Answering

Deformer、TEXTFOOLER、强化学习做文本分类 三篇库存论文分享
虽然这种片段拼接的输入方式可以让自注意力机制对全部的token进行交互,得到的文档表示是问题相关的(反之亦然),但相关文档往往很长,token数量一般可达问题文本的10~20倍,这样就造成了大量的计算。

在实际场景下,考虑到设备的运算速度和内存大小,往往会对模型进行压缩,比如通过蒸馏(distillation)小模型、剪枝(pruning)、量化(quantization)和低轶近似/权重共享等方法。

但模型压缩还是会带来一定的精度损失。因此我们思考,是不是可以参考双流模型的结构,提前进行一些计算,从而提升模型的推理速度?

Deformer、TEXTFOOLER、强化学习做文本分类 三篇库存论文分享
Deformer、TEXTFOOLER、强化学习做文本分类 三篇库存论文分享

; Is BERT Really Robust? A Strong Baseline for Natural Language Attack on Text Classification and Entailment (AAAI 2020 Oral)

方法总览

给定一个黑盒子
输入:句子、对应标签、模型、相似度计算函数Sim、 ε 、词表和词嵌入
输出:对抗样例X a d v X_{adv}X a d v ​

背景

机器学习算法通常容易受到广告类的例子的攻击,这些例子与原始训练模型的数据之间是有联系的。

那么怎么去解决这个被攻击问题呢?我们可以自己去 生成类似的这些广告类例子,从而用来评估甚至提高模型的鲁棒性

作者提出 TEXTFOOLER
并在文本分类和textual entailment 上进行实验
攻击了三种模型,Bert、卷积、循环神经网络。

图像领域这种对抗的使用变的愈发广泛,而对于自然语言,却仍然是个大的挑战。

对于图像模型,输入一个图像(进行肉眼不可分的改变),模型就会判别错。所以有了新的研究方向,生成更多的样例,在训练阶段就看到这些对抗样例,提高鲁棒性。

延伸到自然语言处理领域,换一些词,如文本分类模型,可能就会让模型判别错标签等

方法细节

输入:句子、对应标签、模型、相似度计算函数Sim、 ε 、词表和词嵌入

我们用输入的句子X,来初始化X a d v X_{adv}X a d v ​
对句子X中的每个词进行重要性计算,并将其排序全部放入W集合中,并过滤掉W集合内的停用词。

找出所选单词w i w_i w i ​(W中的每个单词)的所有可能候选词。
找的策略:根据w i w_i w i ​与词汇表中其他每个单词之间的余弦相似度,以N个最接近的同义词作为候选词集合。(这里就用到了余弦相似度和词表和词嵌入)( 这里还没用到Sim函数

选的词嵌入是专门用来计算相似度的,N的设置也是有讲究的,文中N=50,余弦相似度的下限为0.7
最后得到w i w_i w i ​的候选词集合candidate(也进行了词性过滤,只保留和原来词词性相同的词)

注意这里是一个词一个词的处理的

对candidate集合中的每个候选词都与其对应的w i w_i w i ​进行替换得到X’,然后计算X’与原来的X a d v X_{adv}X a d v ​的 Sim函数相似度
如果大于阈值ε,且用该X’生成的结果和X a d v X_{adv}X a d v ​生成的 结果不一样,则放入最终候选集合中。最终选择该集合中与X a d v X_{adv}X a d v ​语义相似度最高的词进行替换X a d v X_{adv}X a d v ​。

如果生成 结果一样,则选择置信度得分最低的单词作为w i w_i w i ​的最佳替换单词,然后重复之前的步骤进行转换下一个选中的单词。

实验

Deformer、TEXTFOOLER、强化学习做文本分类 三篇库存论文分享
Deformer、TEXTFOOLER、强化学习做文本分类 三篇库存论文分享

; ICML 2020 | Description Based Text Classification with Reinforcement Learning

背景

总体思想:
-显式地引入 分类标签的描述信息,从而提升效果。

三种方法来引入描述信息:
1 给各个标签一个静态的描述信息
2 文本 – 标签,用文本信息来当做标签的描述信息
3 动态地根据输入的文本,为每个标签都生成一段描述信息

经典的文本分类方法把标签看做0、1、2、3即简单的下标,但这是对标签本身描述信息的浪费,我们希望能够利用到标签本身的描述信息。

方法一

利用词典,输出标签的定义(描述),从而作为该标签的描述信息,如positive,”full of hope and confidence, or giving cause for hope and confidence”

该文的方法就是描述与原始文本拼接送入模型中,然后模型进行预测。

但这种定义(描述)往往不准确。

方法二和三

Deformer、TEXTFOOLER、强化学习做文本分类 三篇库存论文分享
方法二 – 从Text X中抽取一段文本作为描述。
方法三 – 利用语言模型生成一段描述。

; 使用强化学习来学习标签描述(抽取)

Deformer、TEXTFOOLER、强化学习做文本分类 三篇库存论文分享
Deformer、TEXTFOOLER、强化学习做文本分类 三篇库存论文分享
静态描述的方法不作多阐述,文章是用词典的方法得到的。
抽取描述的方法由于使用了强化学习,这里不对强化学习做过多描述,只描述其核心的思想。

抽取方法中,每一个输入,同一个class的描述都是不同的,每一个class的描述都是输入的substring。
当前class如果的确和输入x匹配,那么可以找到对应描述;如果不匹配,则很难找到对应描述,所以论文在输入x中加入了很多的伪token,如果找到的描述指向了伪token,则使用静态描述。

强化学习算法三个核心点:action a,policy π,reward R
1 对于每一个标签,action就是从输入x中选择合适的描述,这个描述是通过上下标来选择的,如上图。
2 Policy则为上下标选择出来的正确的描述的概率值,即P_span。
3 输入x和描述,然后输出正确标签的概率,这个概率将用于更新分类模型以及抽取方法。

最大化reward,loss则最小化-reward,最后用来更新参数的loss,就如上图所示。

强化学习是一个框架,任何一个任务定义好 action policy reward 即可。

生成的方法

Deformer、TEXTFOOLER、强化学习做文本分类 三篇库存论文分享
Deformer、TEXTFOOLER、强化学习做文本分类 三篇库存论文分享

; 实验

Deformer、TEXTFOOLER、强化学习做文本分类 三篇库存论文分享
Deformer、TEXTFOOLER、强化学习做文本分类 三篇库存论文分享
Deformer、TEXTFOOLER、强化学习做文本分类 三篇库存论文分享
Deformer、TEXTFOOLER、强化学习做文本分类 三篇库存论文分享
Deformer、TEXTFOOLER、强化学习做文本分类 三篇库存论文分享

Original: https://blog.csdn.net/qq_22795223/article/details/124569804
Author: Xu_Wave
Title: Deformer、TEXTFOOLER、强化学习做文本分类 三篇库存论文分享

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/531438/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球