在电商评论场景下的一种基于生成对抗网络的文本对抗样本防御方法技术

技术编号:37235742 阅读:29 留言:0更新日期:2023-04-20 23:17
在电商评论场景下的一种基于生成对抗网络的文本对抗样本防御方法属于对抗样本领域,包含训练阶段、攻击阶段及防御阶段。训练阶段包含步骤:1.获取目标模型的输入数据与预测标签;2.依据真实数据和对应标签,借助攻击方法,训练生成扰动的生成器;3.扰动和原始数据混合,得到对抗样本;4.真实样本和对抗样本同时输入判别器,训练鉴别生成数据的判别器。攻击阶段包含步骤:1.生成对抗样本;2.和真实样本混合,输入目标模型;3.目标模型预测准确率。防御阶段包含步骤:1.生成对抗样本;2.和真实样本混合;3.判别器作为过滤器,过滤对抗样本;4.目标模型预测准确率。本发明专利技术生成更加真实的对抗样本数据,能够非常快速、简单的得到对应的防御方法。防御方法。防御方法。

【技术实现步骤摘要】
在电商评论场景下的一种基于生成对抗网络的文本对抗样本防御方法


[0001]本专利技术属于电商评论场景下的自然语言处理以及对抗样本领域,具体设计了一种在电商评论场景下的基于生成对抗网络的文本对抗样防御方法。

技术介绍

[0002]近年来,随着信息技术以及互联网的蓬勃发展,我国网购市场发展迅猛,电子商务已成为驱动我国经济发展的重要引擎。因为消费者在网购时无法直接接触实际商品这一缺陷,为了挽留客户,保证自身平台的活力,品牌方会根据顾客在电商平台上提供的文字、图片等描述性信息以及历史消费者发表的评论文本,对商家进行打分,并将优质商户推荐给顾客,保证消费者的购买效率。然而,随着时间的推移,电商平台积聚的评论文本信息不断膨胀,碎片化、海量化特征日趋明显,采用人工的方式对电商评论文本进行情感分析需要消耗大量的人力、物力,此时,就需要深度学习自然语言处理相关的情感分类模型协助品牌方进行商户的分析与推荐工作。
[0003]然而,有关研究人员发现,由于深度学习模型自身存在的可解释性差、高维线性等问题,深度学习模型极易受到对抗性扰动的影响。通过向良性样本中掺本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.在电商评论场景下的一种基于生成对抗网络的文本对抗样本防御方法,其特征在于,包含四个阶段,其一是准备需要的数据集;其二是训练阶段,在该阶段利用已有的目标模型和真实数据样本,对生成对抗网络进行训练,得到生成器和判别器;其三是生成对抗样本阶段,利用生成的对抗样本数据,输入到目标模型中,影响模型判断准确率,测试对抗样本的攻击效果;其四是针对对抗样本的防御阶段,使用判别器作为防御模型,过滤对抗样本;准备数据使用的电商评论数据集包含多条数据及其对应的标签;数据来源分别来自多个知名电商的数码、饰品、食品、图书、服装、洗护、运动七类领域中的多种商品;通过网络爬虫爬取数据并进行数据清洗后,从所有数据中随机选择100000条以上数据,作为使用的数据集;数据集中的每一条数据有对应的人工核查标签;该数据集为二分类数据集,即:仅有“好评”和“差评”,仅有“1”和“0”;该数据集的75%将作为训练集,而剩下的25%将作为测试集,以此评估情感分类模型的准确率;为了实现文本对抗样本,需要使用同义词替换,来替换原始样本中的一些词语;为此,需要一个同义词词典,包含常用的中文词语,并提供与它同义的词语;训练阶段首先需要训练一个能针对电商评论做出情感分类的模型;对于数据集中的第i条数据,它包含文本数据及其真实标签其中real表示对于数据集中的第;现在,需要训练出一个有效的情感分类器f,使得分类器的预测标签使用的情感分类模型是TextCNN,该网络包含一个卷积层,一个池化层,最后使用Softmax进行分类并输出预测结果;TextCNN的输入是一系列的词向量,采用的词向量编码方式为One

Hot编码;词向量输入TextCNN,会在Softmax后输出预测概率,并选择预测概率最大的做为预测标签;得到真实的输入数据与预测标签后,需要训练生成器,来产生针对输入数据的扰动;为了生成序列化数据,使用了基于强化学习的生成对抗网络;生成对抗网络的训练过程如下:首先,需要让生成器生成扰动;生成器的输入是真实样本数据x
real
,其输出则是一组扰动,生成的扰动用x
noise
表示;由于生成器与判别器是一个博弈训练的过程,两者的性能会随着训练轮次的增加而逐步上升,所以在训练的初期阶段,要引入FGPM和RNN循环神经网络;FGPM提出了一种基于同义词替换的快速梯度投影方法,该方法根据梯度大小和原单词与候选单词在梯度方向上的投影距离的乘积来计算每个替换的得分;FGPM的原始输入x
real
,即真实评论数据;根据当前情感分类模型f在当前输入数据x
real
上的梯度和根据同义词词典得到的同义词句x
synonym
与原始数据x
real
在梯度方向上的最大差异值,得到对抗损失函数:RNN循环神经网络的作用是为了生成的序列化数据能够考虑前面的所有序列数据;在生成对抗网络的生成器中引入循环神经网络是为了在上一把FGPM输出的一系列同义词语句中,选取对真实数据其他单词影响最小的一个位置的一个同义词,并进行替换,以此来保证生成的噪声在保证攻击效果的同时最小限度的影响原始数据;对于当前FGPM输出的序列
化数据,每个位置潜在的存在对抗攻击效果的词语可以表示为其中i表示在原始数据中的位置,j表示在该位置的潜在的可替换词中的序号;对于原始数据中的该位置的单词,使用word
i
表示;使用交叉熵损失函数,指导当前RNN的训练,公式如下:其中,公式中的N表示每个位置的每个可以进行替换的同义词的数量总和。上面的两个损失函数共同构成生成器的损失函数,即:Loss
a
=Loss
adv
+Loss
RNN
ꢀꢀꢀꢀ
(3)最终,生成器输出附加在原始样本上的扰动x
noise
;之后,需要生成对抗样本;将上一步生成的扰动x
noise
和原始样本进行叠加,得到对抗样本,即:x
adv
=x
real
+x
noise
ꢀꢀꢀꢀ
(4)得到对抗样本后,需要将其送入判别器,以此训练判别器,从而使用判别器优化生...

【专利技术属性】
技术研发人员:马帅于海阳杨震
申请(专利权)人:北京工业大学
类型:发明
国别省市:

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

1