System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术属于自然语言处理,具体涉及一种基于粒球和度量学习的对抗攻击文本分类方法。
技术介绍
1、在自然语言处理(nlp)领域,文本分类是一项核心任务,广泛应用于信息检索、情感分析、垃圾邮件过滤等诸多场景。
2、传统的文本分类方法通常基于特征提取和机器学习模型,如朴素贝叶斯分类器、支持向量机(svm)以及决策树等。然而,随着文本数据的复杂性和规模的增长,传统方法在处理高维、稀疏数据以及多样化文本时常显得力不从心。特别是在面对攻击样本时,传统的分类方法不仅可能受到影响,导致预测结果不准确,还可能削弱模型对文本的整体理解能力。
3、目前,尚未有一种分类方法能够有效抵御攻击者的干扰,使得在存在攻击情况下的分类性能仍然较差。因此,迫切需要探索新的方法来增强文本分类模型在面对攻击时的鲁棒性和准确性。
技术实现思路
1、为解决上述现有技术问题,本专利技术采用一种基于粒球和度量学习的对抗攻击文本分类方法,包括:获取待分类文本,将待分类文本输入训练好的编码模块,得到待分类文本的语义向量表示;将待分类文本的语义向量表示映射到训练好的粒球空间,得到粒球中心,将粒球中心对应的语义向量表示输入分类器,得到分类结果;编码模块、粒球空间以及分类器的训练过程包括:
2、s1、获取文本数据集,对文本数据集中的文本进行预处理,得到预处理后的文本;
3、s2、将预处理后的文本输入编码模块进行编码,得到文本的语义向量表示;
4、s3、利用粒球计算对所有文本的语
5、s4、将每个文本所在粒球的粒球中心对应的语义向量分别表示输入分类器,得到每个文本的分类结果;
6、s5、根据所有文本的语义向量表示构建每个文本的样本对,根据每个文本的样本对和分类结果计算损失函数值,根据损失函数值更新编码模块和分类器的参数,当损失函数值最小时,得到最终训练好的编码模块、粒球空间以及分类器。
7、对文本数据集中的文本进行预处理:
8、s11、构建正则表达式规则,利用正则表达式规则对文本数据集中的文本进行去噪;
9、s12、对去噪后的文本进行分词处理,得到预处理后的文本。
10、编码模块对预处理后的文本进行编码包括:
11、s21、利用预训练的bert模型对预处理后的文本进行深度语义特征提取,得到文本的特征向量;
12、s22、对文本的特征向量进行池化,对池化后的结果进行归一化处理,得到文本的语义向量表示。
13、对所有文本的语义向量表示进行有监督聚类包括:
14、s31、将所有文本的语义向量表示组合为一个粒球,设定纯度阈值和质量阈值;
15、s32、从所有粒球中随机选取一个粒球og,计算粒球og的纯度,判断粒球og纯度是否小于纯度阈值,若是则对粒球og执行步骤s33;否则,计算粒球og的质量,并判断粒球og的质量是否达到质量阈值,若是则执行步骤s35;否则,执行步骤s34;
16、s33、遍历粒球og中的每一个语义向量表示对应的类别标签,得到标签数量k,通过k-means聚类算法将粒球og划分成k个粒球,再执行步骤s32;
17、s34、将质量没有达到质量阈值且标签相同的粒球聚合成一个粒球,再执行步骤s32;
18、s35、判断是否所有粒球的质量都达到质量阈值,若是,则将所有粒球组合成粒球空间;否则,粒球og不变,并对其余粒球执行步骤s32。
19、粒球的纯度为粒球中与粒球标签相同的语义向量表示的占比,粒球的标签为粒球中对应语义向量表示最多的标签。
20、构建文本i的样本对包括:
21、s41、对m条文本的语义向量表示分别进行数据增强得到m条增强文本,将m条文本的语义向量表示按照标签分成s个球os,计算每个球os的中心,s为文本数据集的标签数量,s为球os的索引;
22、s42、将与文本i标签相同的球os中的所有文本的语义向量表示及其增强文本组合成一个正样本空间,将与文本i标签不同的球os中的所有文本的语义向量表示构成的一个负样本空间;
23、s43、根据正样本空间、负样本空间以及球os的中心构建文本i的样本对。
24、每个文本的样本对为:
25、
26、其中,表示文本的样本对的集合,<ti,mi,ni>为文本i的样本对,ti、mi、ni均为三元组,为文本i的样本对的子样本对,xi为文本i的语义向量表示,为文本i的正样本空间中的语义向量表示,为文本i的负样本空间中的语义向量表示,为与文本i标签相同的球os的中心的语义向量表示,为与文本i标签不同的球os的中心的语义向量表示,为文本i的增强文本,m为文本数量。
27、损失函数loss为:
28、
29、其中,yi为文本i的标签,pi为文本i的分类结果,l为度量损失函数,γ为样本对的索引。
30、度量损失函数为:
31、l(γ)=l(ti,mi,ni)=θ×d(ti,mi)-μ×d(ti,ni)
32、其中,θ与μ为超参数,d表示余弦距离。
33、将待分类文本的语义向量表示映射到训练好的粒球空间包括:计算待分类文本的语义向量表示与训练好的粒球空间中的粒球中心对应的语义向量表示的度量距离,选择度量距离最小的多个粒球中心。
34、本专利技术的有益效果:
35、1、本专利技术使用粒球聚类将同类文本的语义向量表示聚合到一个粒球中,得到粒球空间,再将待测文本的语义向量表示映射到粒球空间中获取对应的粒球中心,通过利用对应的粒球中心进行分类来消除对抗样本的影响,较于现有技术,提高了模型在攻击情况下分类器的准确性;2、本专利技术在对分类器进行优化的同时,通过对比学习优化文本的语义向量表示,进而对粒球空间进行优化,有效减少了对抗样本对模型的干扰,提升了模型在恶劣条件下的稳定性。
本文档来自技高网...【技术保护点】
1.一种基于粒球和度量学习的对抗攻击文本分类方法,其特征在于,包括:获取待分类文本,将待分类文本输入训练好的编码模块,得到待分类文本的语义向量表示;将待分类文本的语义向量表示映射到训练好的粒球空间,得到粒球中心,将粒球中心对应的语义向量表示输入分类器,得到分类结果;编码模块、粒球空间以及分类器的训练过程包括:
2.根据权利要求1所述的一种基于粒球和度量学习的对抗攻击文本分类方法,其特征在于,对文本数据集中的文本进行预处理:
3.根据权利要求1所述的一种基于粒球和度量学习的对抗攻击文本分类方法,其特征在于,编码模块对预处理后的文本进行编码包括:
4.根据权利要求1所述的一种基于粒球和度量学习的对抗攻击文本分类方法,其特征在于,对所有文本的语义向量表示进行有监督聚类包括:
5.根据权利要求4所述的一种基于粒球和度量学习的对抗攻击文本分类方法,其特征在于,粒球的纯度为粒球中与粒球标签相同的语义向量表示的占比,粒球的标签为粒球中语义向量表示最多的标签。
6.根据权利要求1所述的一种基于粒球和度量学习的对抗攻击文本分类方法,其特征
7.根据权利要求6所述的一种基于粒球和度量学习的对抗攻击文本分类方法,其特征在于,每个文本的样本对为:
8.根据权利要求7所述的一种基于粒球和度量学习的对抗攻击文本分类方法,其特征在于,损失函数Loss为:
9.根据权利要求8所述的一种基于粒球和度量学习的对抗攻击文本分类方法,其特征在于,度量损失函数为:
10.根据权利要求1所述的一种基于粒球和度量学习的对抗攻击文本分类方法,其特征在于,将待分类文本的语义向量表示映射到训练好的粒球空间包括:计算待分类文本的语义向量表示与训练好的粒球空间中的粒球中心对应的语义向量表示的度量距离,选择度量距离最小的多个粒球中心。
...【技术特征摘要】
1.一种基于粒球和度量学习的对抗攻击文本分类方法,其特征在于,包括:获取待分类文本,将待分类文本输入训练好的编码模块,得到待分类文本的语义向量表示;将待分类文本的语义向量表示映射到训练好的粒球空间,得到粒球中心,将粒球中心对应的语义向量表示输入分类器,得到分类结果;编码模块、粒球空间以及分类器的训练过程包括:
2.根据权利要求1所述的一种基于粒球和度量学习的对抗攻击文本分类方法,其特征在于,对文本数据集中的文本进行预处理:
3.根据权利要求1所述的一种基于粒球和度量学习的对抗攻击文本分类方法,其特征在于,编码模块对预处理后的文本进行编码包括:
4.根据权利要求1所述的一种基于粒球和度量学习的对抗攻击文本分类方法,其特征在于,对所有文本的语义向量表示进行有监督聚类包括:
5.根据权利要求4所述的一种基于粒球和度量学习的对抗攻击文本分类方法,其特征在于,粒球的纯度为...
【专利技术属性】
技术研发人员:刘琳萍,夏书银,王泽丽,蒲天豪,
申请(专利权)人:重庆邮电大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。