文章目录
Is BERT Really Robust? A Strong Baseline for Natural Language Attack on Text Classification and Entailment
# 目前是第一次去粗略的阅读论文,在后面回去复现算法,到时候在去做详细的补充
摘要
- 现状
机器学习模型的性能会受到困难样本的影响,困难样本可以用来评价和改善模型的健壮性。 - 观点
提出了一种名为TEXTFOOLER,简单且强大的基准来产生困难样本。应用这种算法在自然语言任务(文本分类和文本蕴含)。用于测试的模型包括BERT、卷积神经网络和循环神经网络。最终论证得到这个算法的三个优点:1.有效性 2.高效性(计算的复杂性与文本的长度成正相关) 3.实用的保留(它保留语义内容,语法和正确的人为分类类型)。
介绍
- 困难样本的现状
早些时候使用的产生对抗性样本的方法
1. word misspelling
2. single-word
3. phrase inaertion and removal
存在的问题无法满足三个关键的实用保留的特性同时无法对BERT模型产生影响
1. 人为预测的一致性
2. 语义的相似性
3. 语言的流畅度 - 该算法产生的样本
可以使目标模型在原始词汇的混乱度少于20%的情况下,准确率下降10%。
同时满足上面三个对抗性文本的特性。 - 该论文的贡献
- 在这种黑盒测试中使目标模型受到攻击。
- 它提高了三种深度学习模型的成功率和扰动率。
- 他提出了一种评价该框架的评价体系。
- 开放我们的模型,代码和测试样本。
模型
- 整个模型属于黑盒测试
- 该模型主要包括两个步骤
1.词重要性的排序
2.词转换器
a.同义词提取–从第一步中的重要词排序中选取N个词
b.词性检查 —选择相同词性
c.获取对抗样本—将其转换为词向量,计算相似性,设置阈值 - 在作者的训练过程中,参数N=50,阈值为0.7
训练和结果
- 使用原始样本进行模型训练,利用原始样本和对抗性样本进行测试
-
评价指标
准确率
语义相似性
平均文本长度
query number -
结论
在低于20%的扰动率情况下,模型的准确率降低到15%以下;且观察到一个简单结果:模型的准确率越高,就越难被攻击。
-
- 经过不同样本训练出来的模型的健壮性
使用不同数据进行训练,使用同样的数据集进行测试,对比准确率。 - 人为的评价
相似性
语法
分类的准确率
讨论
- 针对第一步词的重要性排序
将其用随机选择词来代替第一步
最终结果准确率差值在50%以上
结论,说明了该部分的重要性 - 第二部词转换器
与直接同义词注入进行对比 - 对比针对一个模型训练出来的对抗性数据在另一个模型下的效果
来说明数据集的可转换性 - 通过对抗性数据,如何使原始模型获得更好的健壮性
结论
该算法产生的对抗性文本能够改善模型,同时产生的文本与原文本相比,是清楚的,符合语法的和语义相似的。