一种基于对抗训练的文本通用对抗防御方法及系统技术方案

技术编号:35131973 阅读:31 留言:0更新日期:2022-10-05 10:05
本发明专利技术请求保护一种基于对抗训练的文本通用对抗防御方法及系统,属于人工智能自然语言处理领域。用于增强基于深度神经网络的文本分类模型对于通用对抗攻击的鲁棒性。获取文本分类的数据集,将数据集分为训练集、验证集和测试集,并随机初始化文本分类模型的参数和全局唯一的通用对抗扰动序列;在神经网络模型的训练过程中,首先初始化一个全局唯一的通用对抗扰动序列,然后将该扰动序列随机添加到一个批次的训练数据中,最后在更新模型参数的同时更新扰动序列,迭代训练直至模型收敛。本发明专利技术证明以对抗训练为基础的对抗防御方法不仅可以降低对抗训练的计算成本,而且可以提升模型的鲁棒性和性能。的鲁棒性和性能。的鲁棒性和性能。

【技术实现步骤摘要】
一种基于对抗训练的文本通用对抗防御方法及系统


[0001]本专利技术涉及人工智能自然语言处理领域,尤其涉及一种针对通用对抗攻击 的防御方法,具体涉及一种基于对抗训练的通用对抗防御方法。

技术介绍

[0002]近年来,深度神经网络在自然语言处理领域的研究与应用成效十分显著, 文本分类作为一个基础任务,在现实中的应用十分广泛,如情感分析、新闻分 类、垃圾信息过滤等。这些基于深度神经网络的文本分类器在遇到对抗攻击时, 性能会显著下降并引起应用安全性、有效性的担忧。比如攻击者可以利用对抗 攻击把对某件事的恶意观点进行处理,“欺骗”文本分类器将其分类为正向观 点,扩大恶意观点的传播范围;将对产品或电影的恶意评价“伪装”成正向评 价,影响人们的购买倾向;将垃圾邮件、垃圾短信等负面信息处理成正常信息, 文本分类器错误地将其放在正常的邮件、短信文件夹下,误导人们对正确信息 的判断。因此人们往往会采取对抗样本检测、对抗训练等防御方法来加强模型 对于对抗攻击的鲁棒性。
[0003]通用对抗攻击是最近提出的一种对抗攻击方法,不仅可以在白盒情况下实 现较高的攻击成功率,而且在相似的模型中具有较高的迁移性。最重要的是, 通用对抗攻击可以提前生成一个单一的扰动,将其添加到任意的干净样本中构 成对抗样本。在文本领域中,扰动是指一个固定短语,本文称为通用对抗扰动 序列。这意味着攻击方在实际的攻击过程中,几乎不需要任何的攻击成本就可 以在短时间内对深度神经网络模型发起大规模的攻击,这有可能会给深度神经 网络系统带来不可估量的损失。在文本领域中,目前大多数的通用对抗攻击都 是白盒攻击,而对抗训练是防御白盒攻击的有效手段,也是应用最广泛的防御 方法。
[0004]由于通用对抗攻击中的通用对抗扰动序列是针对整个数据分布而生成的, 每次生成都需要较大的计算成本。按照以往的对抗训练方法,利用生成的对抗 样本对已经训练好的文本分类模型进行参数微调,这不仅会消耗巨大的计算成 本,而且只能稍微增强文本分类模型对于通用对抗攻击的鲁棒性,并会降低模 型的分类性能。因此,需要一种基于对抗训练的文本通用对抗防御方法来降低 计算成本并有效防御通用对抗攻击。
[0005]经过检索,申请公开号CN114091568A,一种面向文本分类模型的字词双粒 度对抗防御系统及方法,系统包括:SVM分类器训练与预处理模块,该模块用于 构造一个二分类的SVM分类模型,并基于SVM分类模型对本系统的输入文本进 行预处理;字符级防御模型模块,该模块实现对字符级攻击粒度的文本数据进 行正确文本分类;词汇级防御模型模块,该模块实现对词汇级攻击粒度的文本 数据进行正确文本分类;辅助信息模块,用于系统分类结果展示、性能评估和 功能拓展。本专利技术能够有效地防御面向文本分类模型的多级组合对抗样本攻击, 从而提升了基于深度学习的文本分类模型的鲁棒性和安全性。

技术实现思路

[0006]本专利技术旨在解决以上现有技术的问题。提出了一种基于对抗训练的文本通用 对抗防御方法及系统。本专利技术的技术方案如下:
[0007]一种基于对抗训练的文本通用对抗防御方法,其包括以下步骤:
[0008]获取文本分类的数据集,将数据集分为训练集、验证集和测试集,并随机 初始化文本分类模型的参数和全局唯一的通用对抗扰动序列;文本分类模型是 指常用于文本分类任务的深度神经网络模型,比如TextCNN、BiLSTM等;文本 分类模型的参数包括嵌入层、隐藏层、输出层等各个网络层的参数。
[0009]将初始化后的通用对抗扰动序列插入到一个批次的训练数据中,每条训练 数据的插入位置是随机的,并将处理后的批次数据输入到文本分类模型中;
[0010]利用损失函数计算当前批次的损失值,同时利用反向传播更新模型参数, 接着计算通用对抗扰动序列在当前批次上的平均梯度,结合通用对抗攻击方法 来更新通用对抗扰动序列;
[0011]重复以上步骤直至训练的文本分类模型收敛;
[0012]利用通用对抗攻击方法生成对抗样本,将对抗样本用于文本分类模型训练; 在训练集和验证集上训练并优化模型参数,在测试集上观察模型的鲁棒性。
[0013]进一步的,所述通用对抗扰动序列,具体包括:
[0014]通用对抗扰动序列是由通用对抗攻击方法计算生成的一个固定短语,将其 添加到任意样本中生成对抗样本,这些对抗样本可以误导文本分类模型以很高 的概率输出一个错误的输出或者输出一个指定的输出;不影响人们对其原始语 义的理解,通用对抗攻击的定义如下:
[0015][0016]其中F表示基于深度神经网络的文本分类模型;X表示输入的文本数据集合,服 从数据分布D(X);Y表示输出的预测结果集合;δ={δ1,δ2,


k
‑1,δ
k
}表示通用对 抗扰动序列,其长度为k;x'表示生成的对抗样本,每个对抗样本都包含通用对 抗扰动序列。
[0017]进一步的,所述初始化全局唯一的通用对抗扰动序列,包括:
[0018]提前设定通用对抗扰动序列的长度;初始化的过程可以分为两种,第一种 是通过重复一些无意义的词,来初始化通用对抗扰动序列;第二种是从对应语 言的语料库中随机选择一些词来初始化;
[0019]进一步的,所述将初始化后的通用对抗扰动序列插入到一个批次的训练数 据中,每条训练数据的插入位置是随机的,具体包括:
[0020]通用对抗扰动序列添加到当前批次的训练样本中生成对抗样本,选择插入 的位置不同,生成的对抗样本也不一样,为了保证对抗样本的多样性,并且为 了防止模型在学习的过程中总是忽略固定位置上的词,插入的位置是随机的, 而不是固定位置。
[0021]进一步的,所述利用损失函数计算当前批次的损失值,包括:
[0022]当前批次是指将通用对抗扰动序列添加到原始批次文本中生成的对抗样本; 损
失函数采用交叉熵损失函数或其他损失函数,当采用交叉熵损失函数时,损 失值计算如下:
[0023][0024]其中y
i
表示第i个对抗样本的标签值;y

i
表示文本分类模型对于第i个对抗样本 的预测值;b表示一个批次中对抗样本的数量。
[0025]进一步的,所述利用反向传播更新模型参数,包括:
[0026]反向传播是梯度下降法的具体实现,用于优化模型参数使其损失最小,优 化器算法选择Adadelta、Adagrad、Adam、Adamax、L

BFGS、RMSprop、SGD之 一。
[0027]进一步的,所述结合通用对抗攻击方法来更新通用对抗扰动序列,包括:
[0028]所述通用对抗攻击方法直接利用通用对抗扰动序列的梯度信息计算出新的 通用对抗扰动序列,计算方法有两种,第一种是将梯度与嵌入向量 空间作矩阵乘法,选择值最小的词嵌入向量作为新的通用对抗扰动序列,计 算如下:
[0029][0030]其中e
δ
本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于对抗训练的文本通用对抗防御方法,其特征在于,包括以下步骤:获取文本分类的数据集,将数据集分为训练集、验证集和测试集,并随机初始化文本分类模型的参数和全局唯一的通用对抗扰动序列;文本分类模型是指常用于文本分类任务的深度神经网络模型,文本分类模型的参数包括嵌入层、隐藏层、输出层各个网络层的参数;将初始化后的通用对抗扰动序列插入到一个批次的训练数据中,每条训练数据的插入位置是随机的,并将处理后的批次数据输入到文本分类模型中;利用损失函数计算当前批次的损失值,同时利用反向传播更新模型参数,接着计算通用对抗扰动序列在当前批次上的平均梯度,结合通用对抗攻击方法来更新通用对抗扰动序列;重复以上步骤直至训练的文本分类模型收敛;利用通用对抗攻击方法生成对抗样本,将对抗样本用于文本分类模型训练;在训练集和验证集上训练并优化模型参数,在测试集上观察模型的鲁棒性。2.根据权利要求1所述的一种基于对抗训练的文本通用对抗防御方法,其特征在于,所述通用对抗扰动序列,具体包括:通用对抗扰动序列是由通用对抗攻击方法计算生成的一个固定短语,将其添加到任意样本中生成对抗样本,这些对抗样本可以误导文本分类模型以很高的概率输出一个错误的输出或者输出一个指定的输出;不影响人们对其原始语义的理解,通用对抗攻击的定义如下:其中F表示基于深度神经网络的文本分类模型;X表示输入的文本数据集合,服从数据分布D(X);Y表示输出的预测结果集合;δ={δ1,δ2,


k
‑1,δ
k
}表示通用对抗扰动序列,其长度为k;x'表示生成的对抗样本,每个对抗样本都包含通用对抗扰动序列。3.根据权利要求2所述的一种基于对抗训练的文本通用对抗防御方法,其特征在于,所述初始化全局唯一的通用对抗扰动序列,包括:提前设定通用对抗扰动序列的长度;初始化的过程可以分为两种,第一种是通过重复一些无意义的词,来初始化通用对抗扰动序列;第二种是从对应语言的语料库中随机选择一些词来初始化。4.根据权利要求3所述的一种基于对抗训练的文本通用对抗防御方法,其特征在于,所述将初始化后的通用对抗扰动序列插入到一个批次的训练数据中,每条训练数据的插入位置是随机的,具体包括:通用对抗扰动序列添加到当前批次的训练样本中生成对抗样本,选择插入的位置不同,生成的对抗样本也不一样,为了保证对抗样本的多样性,并且为了防止模型在学习的过程中总是忽略固定位置上的词,插入的位置是随机的,而不是固定位置。5.根据权利要求4所述的一种基于对抗训练的文本通用对抗防御方法,其特征在于,所述利用损失函数计算当前批次的损失值,包括:当前批次是指将通用对抗扰动序列添加到原始批次文本中生成的对抗样本;损失函数
采用交叉熵损失函数或其他损失函数,当采用交叉熵损失函数时,损失值计算如下:其中y
i
表示第i个对抗样本的标签值;y

i
表示文本分类模型对于第i个对抗样本的预测值;b表示一个批次中对抗样本的数量。6.根据权利要求5所述的一种基于对抗训练的文本通用对抗防御方法,其特征在于,所述利用反向传...

【专利技术属性】
技术研发人员:陈龙郝志荣黄嘉成谢荣鹏艾锐
申请(专利权)人:重庆邮电大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1