文本中的对抗训练

文本中的对抗训练

    • 基本概念
      • 对抗扰动
      • 对抗训练
        • 对抗扰动的两个特点
        • 测度方式
      • 对抗攻击
    • 参考文献

附上链接添加链接描述

基本概念

对抗扰动

早在 2014 年,Szegedy et al.发现只要对深度学习模型的输入添加一些微小的扰动就能轻易改变模型的预测结果。后续的研究将该种扰动称之为对抗扰动,扰动后的输入称为对抗样本,将输入对抗样本误导模型的这一过程称为对抗攻击。

对抗训练

对抗训练指的是在模型的训练过程中构建对抗样本并将对抗样本和原始样本混合一起训练模型的方法,换句话说就是在模型训练的过程中对模型进行对抗攻击从而提升模型对于对抗攻击的鲁棒性(也称为防御能力)。可以说不同的对抗攻击方式决定了不同的对抗训练方法。对抗攻击如下图:
文本中的对抗训练_第1张图片
如图 1 所示(左图为原始样本,中间为添加的对抗扰动,右图为构造的对抗样本),可以看出在加入对抗扰动后原始的图片被误判(雪山变识别成了狗,河豚被识别成了螃蟹),但是人眼并不能够明显发现原图和对抗样本的差异,更不会产生如此离谱的判断。

对抗扰动的两个特点

1.扰动是微小的甚至是肉眼难以观测到的(图1中间部分)
2. 添加的扰动必须有能力使得模型产生错误的输出(图 1 右侧部分)

为了满足上述特点,已有大量研究集中于如何产生有效的对抗扰动。不同于图像领域,连续值的扰动直接添加到原始输入矩阵中,在文本处理中添加的扰动可以是离散的也可以是连续的,一般来说离散扰动指的是直接对输入文本字符进行微小修改(如图 2),连续扰动一般指的是直接在输入文本中的词向量矩阵中添加的扰动 [4]。文本处理中的离散扰动示列如图 2:
文本中的对抗训练_第2张图片
part1 指的是原始的输入文本,part2 指的是对原始数据进行离散扰动后的文本,虽然只有少量字符被修改但是模型产生了完全不同的输出。
在文本处理中,对抗扰动的特征 1 要求添加扰动后产生的对抗样本与原样本在语义上保持一致,即添加的扰动应该尽量不改变原始句子的语义。因此,需要一个测度来衡量扰动前后文本的差异。

测度方式

1.余弦相似度(Cosine similarity) 是基于词向量的语义相似度计算方法,余弦距离更注重两个向量之间的方向差异。 两个矢量的方向越一致,相似性越大。该方法的局限性在于词向量的维度必须相同。
2.欧式距离(Euclidean Distance) 在文本处理中欧式距离主要应用于连续扰动的情况。
3.字移动距离(WMD) 是 Earth Mover’s Distance (EMD) 的变体,它可以通过计算从一个文档到另一个文档嵌入词行进距离来衡量两个文本文档之间的差异。也就是说,WMD 可以量化文本之间的语义相似性。
4.Jaccard 相似系数给定两个集合 A 和 B,Jaccard 相似系数的值越接近与 1,表明两者越相似。在文本处理中,交集就是两者中的相同词,并集就是所有非重复词的集合。
5.编辑距离(Edit Distance) 是一种通过将字符串转换为另一个字符串来测量最小修改的方法。 它的值越高,两个字符串越不相似。

在上述五种测度中,余弦距离、欧式距离和 WMD 基于词向量计算,主要适用于连续扰动的情况,Jaccard 相似系数,编辑距离可以直接基于文本字符来计算,主要适用于离散扰动的情况。

对抗攻击

对抗攻击可以按照不同的依据分为不同的类别,按对原始模型的访问权限不同可分为:黑盒攻击与白盒攻击。白盒攻击指的是攻击者可以完全访问目标模型,他们可以了解模型的架构,参数和权重。黑盒攻击指的是攻击者很少或根本没有关于目标模型的知识,他们无法对其进行探测。在这种情况下,攻击者通常训练自己的模型并利用对抗性样本的可转移性来进行攻击。当然,白盒和黑盒攻击都无法改变模型和训练数据。
按攻击目的,可分为目标攻击和非目标攻击,目标攻击指的是生成的对抗样本希望被模型错分到某个特定的类别上。非目标攻击指的是对抗样本只要能让模型分错就行,不论错分到哪个类别都可以。

参考文献

Wang, W., Wang, L., Tang, B., Wang, R., & Ye, A. (2019). A survey on Adversarial Attacks and Defenses in Text, 1–13. Retrieved from http://arxiv.org/abs/1902.07285

你可能感兴趣的:(文本分类)