CN114357168B - 一种文本分类方法 - Google Patents
一种文本分类方法 Download PDFInfo
- Publication number
- CN114357168B CN114357168B CN202111672999.0A CN202111672999A CN114357168B CN 114357168 B CN114357168 B CN 114357168B CN 202111672999 A CN202111672999 A CN 202111672999A CN 114357168 B CN114357168 B CN 114357168B
- Authority
- CN
- China
- Prior art keywords
- text
- data
- model
- training
- layer
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/35—Clustering; Classification
- G06F16/355—Class or cluster creation or modification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/126—Character encoding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种文本分类方法,涉及文本智能处理领域,所述方法包括:构建第一文本分类模型;采集样本文本数据,对所述样本文本数据进行处理获得训练集;利用所述训练集训练所述第一文本分类模型获得第二文本分类模型;获得待分类文本数据,将所述待分类文本数据输入所述第二文本分类模型,所述第二文本分类模型输出所述待分类文本数据的分类结果;本方法能够提升对长文本的文本信息的提取效果。
Description
技术领域
本发明涉及文本智能处理领域,具体地,涉及一种文本分类方法。
背景技术
随着移动互联网的不断发展,人们在日常生活中接触的信息不仅仅来源于电视报纸,更多的文本来自各大互联网网站以及网络平台。文本是重要的信息数据,信息时代的发展包含了大量的各领域的文本信息,基于文本内容能将大规模的信息资源中区分不同领域数据,提高信息检索、文本发掘等应用效率。然而,互联网文本数据正呈现爆炸式的增长,各领域文本的内容量大幅增加和复杂性提升,导致针对长文本甚至超长文本领域的文本分类成为一项发展难题。因此,近些年随着深度学习技术的研究深入,基于深度学习的文本分类方法层出不穷,针对各领域文本的内容多样性且数据信息复杂等,通过对文本数据中的特征进行提取,经过神经网络学习并进行分类,最终对文本进行多类别分类。
尽管深度学习方法在文本分类任务的研究取得显著的进步,但在构建模型时需要大量的标注数据,包含多个领域的文本数据信息,并且文本信息量也在逐渐大幅度增加,在各领域中长文本的形式也逐渐取代短文本提供更详细的信息,所以在长文本的处理上,现有模型无法提供较好的文本信息的长距离依赖的效果。
发明内容
为了提升对长文本的文本信息的提取效果,本发明提供了一种文本分类方法。
为实现上述目的,本发明提供了一种文本分类方法,所述方法包括:
构建第一文本分类模型;
采集样本文本数据,对所述样本文本数据进行处理获得训练集;
利用所述训练集训练所述第一文本分类模型获得第二文本分类模型;
获得待分类文本数据,将所述待分类文本数据输入所述第二文本分类模型,所述第二文本分类模型输出所述待分类文本数据的分类结果;
其中,所述第一文本分类模型包括:
输入层,所述输入层用于获得输入文本数据;
Bert预训练模型,所述Bert预训练模型用于对所述输入文本数据进行编码获得词向量,基于所述词向量获得第一输入序列;
卷积单元,所述卷积单元包括:第一池化层、第一至第k卷积块,k为大于1的整数,所述第一池化层用于对所述第一输入序列进行下采样处理获得第二输入序列;第一至第k卷积块依次连接,第一卷积块的输入为所述第二输入序列,所述第一卷积块的输出为第二卷积块的输入,...,第k-1卷积块的输出为第k卷积块的输入;第一至第k卷积块中的每个卷积块均包括一个卷积层和一个激活层,所述卷积层用于对输入所述卷积块的数据进行特征提取获得特征向量,所述激活层用于对所述特征向量进行激活处理;
通过残差连接将所述第一池化层的输出和所述第k卷积块的输出叠加后输入第二池化层,所述第二池化层用于对叠加后的输入数据进行降维处理获得池化结果;
全连接层,所述全连接层用于对所述池化结果进行分类并将分类结果传输至输出层;
输出层,所述输出层用于输出所述输入文本的分类结果。
其中,本方法通过引入DPCNN模型不断加深网络并且结合Bert预训练模型对词向量的处理,能够更好的解决长文本的信息处理等问题,并且针对长文本的长距离依赖问题,提出改进的Bert-DPCNN模型,通过增加卷积层提升模型对长文本的文本信息的提取效果。
优选的,所述第一输入序列的长度为n,所述卷积层的卷积核大小为m,步长为s,在所述第一输入序列两端分别填补p个零所述卷积层的输出序列为(n-m+2p)/s+1。
优选的,所述第一池化层的大小size=3,步长stride=2。
优选的,所述方法包括:对所述样本文本数据进行处理获得训练集、测试集和验证集。利用测试和验证集可以对模型进行测试和验证。
优选的,所述方法包括:对训练集、测试集和验证集进行字符向量编码以及分词处理,生成所述第一文本分类模型能够识别的数据结构和标签列表。
优选的,所述方法包括:对训练集、测试集和验证集中的中文字符以字为单位进行分词,对于每个token字符返回该字符的词表索引,在文本标签化序列中首尾添加标志位[CLS]和 [SEP],并统一训练集、测试集和验证集中的序列长度,对序列长度小于阈值的序列进行补位,当序列真实长度小于最长序列长度时,对真实序列进行第一标识,对补位长度进行第二标识。
优选的,所述方法包括:对训练集、测试集和验证集进行数据增强处理,具体包括:在训练集、测试集和验证集中的文本数据中随机插入标点符号。
通过引入创新型的分词数据增强方法,针对在利用深度学习模型进行训练时训练集以及各类别数据样本分布极其不均衡的情况,由于中文分词的按词区分的方式,在分词阶段对数据样本较少的数据集进行数据增强,采用新型的面对中文进行随机添加标点符号进行数据增强,在插入训练噪声后增强了模型在训练集上的表现,提高了模型的泛化能力和鲁棒性,并且解决了一些领域的样本分布不均衡问题。
优选的,插入标点符号的个数n设定为句子长度L的1/10到1/5之间的随机值,其中,random.randint为在范围内随机取值。通过上述方式能够达到控制插入文本数据集中符号的个数,以免过多的符号的噪声对模型造成负优化等问题。
优选的,本方法基于对抗学习和控制损失函数对所述第一文本分类模型进行训练,训练过程中的损失函数为Lcce:
Lcce=-∑∑[1-α(yp-m)]ytLogyp
其中,yt为数据真实值,yp为第一文本分类模型预测的类别概率值,m为设定的控制值,α为分段函数。
实际训练中,针对文本样本数据集中存在特征明显较容易区分类别,而有些数据的特征较难识别和提取,为了缓和在训练中损失函数针对较容易提取特征和区分的数据样本过度关注,提出控制函数结合损失函数,设定固定值控制损失函数进行模型的有选择的参数更新,使模型更专注于较难区分的样本数据。针对特征提取、文本向量表示、文本语义信息等因素对模型准确度的影响,在分类模型训练中引入对抗学习。在图像处理领域对抗学习作为一种防御方式构造对抗样本以此来增强模型,而在自然语言处理领域,通过对抗学习将对抗扰动应用于分类模型的词嵌入层,增强模型的泛化能力,提高文本分类效果;
本发明提供的一个或多个技术方案,至少具有如下技术效果或优点:
1)本方法采用数据预处理对大规模数据集进行训练、测试、验证集的划分,并对数据集进行过滤,去掉特殊字符并进行分词、标记、编码等操作,并且进行符号数据增强,在不改变文本序列信息的同时保证了数据集的有效性。
2)本发明采用了Bert预训练模型与DPCNN模型结合并改进,构建多层卷积层和最大池化层的技术手段,所以,能够实现通过Bert模型处理文本得到表达全局语义的词向量并且结合DPCNN模型构建深层的卷积层对词向量处理得到更深的特征向量,以及多层卷积层后结合最大池化层达到对长距离的文本依赖优化的技术效果。
3)训练过程中本发明采用了基于对抗学习技术手段以及控制损失函数对模型训练样本关注度的优化。所以,能够实现根据基于添加对抗学习训练后的梯度进行参数的更新,提高模型抗干扰性,准确性和鲁棒性的技术效果以及保障权重更新更加平滑,不会偏离最优点过远的技术效果。
附图说明
此处所说明的附图用来提供对本发明实施例的进一步理解,构成本发明的一部分,并不构成对本发明实施例的限定;
图1为文本分类方法的流程示意图;
图2为第一文本分类模型的结构示意图。
具体实施方式
为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式对本发明进行进一步的详细描述。需要说明的是,在相互不冲突的情况下,本发明的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用其他不同于在此描述范围内的其他方式来实施,因此,本发明的保护范围并不受下面公开的具体实施例的限制。
实施例一
请参考图1,图1为文本分类方法的流程示意图,本发明实施例一提供了一种文本分类方法,所述方法包括:
构建第一文本分类模型;
采集样本文本数据,对所述样本文本数据进行处理获得训练集;
利用所述训练集训练所述第一文本分类模型获得第二文本分类模型;
获得待分类文本数据,将所述待分类文本数据输入所述第二文本分类模型,所述第二文本分类模型输出所述待分类文本数据的分类结果。
下面对本方法进行详细介绍:
本实施例针对现有文本分类问题的缺点与不足,提供一种基于Bert-DPCNN模型改进与分词数据增强、对抗学习的文本分类方法,解决现有文本分类技术中对长文本的文本信息之间的相互依赖关系,上下文语义特征信息提取不完整,特殊文本字符导致训练模型参数偏差过大,模型训练多度关注简易样本数据,文本分类模型对各领域中一些词的抗干扰能力较差,分类模型泛化能力、鲁棒性略差等问题。
本实施例采用的技术方案为:
构建训练模型和分类器:
通过配置文件加载Bert预训练模型。针对中文的词义表达和分词的复杂性,选择基于全词覆盖的中文Bert预训练模型,而非基于字粒度切分的模型。
定义DPCNN模型框架,通过输出经过Bert模型处理后的具有全局语义信息的词向量,并且构建区域卷积以及固定卷积核的卷积层进行等长卷积,通过等长卷积控制输出的词是由该位置输入的词以及其左右词的上下文信息提取得到的,假设输入的序列长度为n,卷积核大小为m,步长为s,输入序列两端各填补p个零,则卷积层的输出序列为(n-m+2p)/s+1,而等长卷积设置步长S=1,卷积核大小设置为m=250,两端补零则卷积后的输出长度为n,故该词包含被上下文修饰过的更深层的语义且序列长度不变。接着将模型处理后的词向量进行卷积池化,在卷积块中通过使用一个大小size=3,步长stride=2的池化层后,使每个卷积核的维度减半,进一步为将序列长度压缩为原来的一半后对序列再进行等长卷积和激活,并且通过残差连接将上述二者的结果相加,通过堆叠多层卷积池化层后,就能得到加深的可以抽取长距离的文本依赖网络,在卷积中引入pre-activation预激活模式,简化了深度网络的训练并且效果更好。进一步的再结合全连接层分类器,采用修正加权交叉熵损失函数。
本发明中根据现如今大多数文本数据都是以长文本形式保存,并且文本长度过长比如新闻文本往往就包含几百字甚至更多的文本信息,所以对Bert-DPCNN模型进行改进,针对卷积层对过长文本数据的输入文本特征以及文本复杂性的提取,提出在上述DPCNN模型基础上同等增加一层等长卷积层,将长文本进一步处理,由于模块中增加了残差连接能够解决一定的梯度弥散和梯度消失问题,所以在增加了一层等长卷积层后不会造成梯度相关问题并且能够提升一定的针对长文本的文本信息提取效果。
请参考图2,图2为本实施例中第一文本分类模型的结构示意图。
数据预处理,将所使用的数据集的第一文本集按比例8:1:1分为训练集、测试集、验证集,对数据集中可能出现的特殊字符、空格、表情等进行处理,基于预训练模型对上述划分后的第一文本集进行字符向量的编码以及分词,生成模型能够识别的数据结构和标签列表。并且在分词时进行对样本数据较少的数据集进行数据增强,一般的文本数据增强技术为同义词替换、随机插入、随机交换、随机删除数据文本等,往往在以前的数据增强方法中插入、删除等操作都会对文本数据集中的文本序列进行改变,从而影响模型对序列信息的提取造成对模型训练中的信息丢失等问题。而该方法使用在文本数据集中随机插入一些标点符号,如“,”、“。”、“;”进行文本的数据集的拓展,该方法保持了文本的顺序,同时改变了词在句中的位置,以此增加文本数据的复杂性并且得到更好的泛化性能。插入标点符号的个数n设定为句子长度 L的1/10到1/5之间的随机值,n=random.randint(L/10,L/5),以达到控制插入文本数据集中符号的个数,以免过多的符号的噪声对模型造成负优化等问题。
其中,在实际应用中训练集、测试集、验证集的划分比例可以根据实际需要进行灵活调整,本发明不进行具体的限定。
模型训练,1.设置权重参数使用梯度衰减以及模型学习率衰减率。2.配置模型训练的优化器。Adam优化器吸收了自适应学习率梯度下降算法和动量梯度下降算法的优点,既能适应稀疏梯度也能缓解梯度震荡的问题。具体公式如下所示:一阶梯度:
mt=β1•mt-1+(1-β1)·gt
其中,mt为t步梯度指数移动平均数(m0初始为0),β1为指数衰减率估计(取值[0,1)) 通常取近似1,mt-1为t步的梯度指数移动平均,t为时间步,gt为t步时的梯度;
二阶梯度:
vt=β2•vt-1+(1-β2)·gt 2
其中,vt为t步时梯度平方的指数移动平均数(v0初始为0),β2为指数衰减率(取值[0,1)) 通常取近似1,vt-1为t-1时的梯度平方指数移动平均数;
更新规则:
开始训练后得到模型输出,清空梯度后采用交叉熵损失函数计算Loss,将损失函数反向传播后得到每个参数的梯度,并根据参数梯度结合优化函数对每个参数更新。在损失函数进行计算时,添加控制项θ进行选择性的更新模型参数,设定固定值m=0.6,当yp>0时,证明模型对该样本识别以达到一定的识别效果,若yp<0,则模型对该样本识别较差需进行模型更新达到更优的训练效果。引入分段函数α(x):
则控制损失函数为:
Lcce=-∑∑[1-α(yp-m)]ytLogyp
其中,yt为数据真实值,yp为模型预测的类别概率,m为设定的控制值,α为分段函数。经过该控制后的损失函数进行训练后,在训练过程中针对容易区分的样本数据不会过度的关注而浪费训练,对于较难的样本保持交叉熵进行模型的更新,以达到更多关注较难样本的训练,使模型的泛化能力相较于原训练方式有进一步提升。
数据通过模型训练中引入对抗学习的方法对数据进行增强,通过在词向量编码过程中增加对抗学习,对初始样本数据添加对抗扰动,往损失函数上升的方向进行对抗学习,保留初始词向量的同时计算损失反向传播得到梯度并预存后对梯度进行范数函数计算,对向量矩阵进行迭代攻击,每步迭代根据公式:
其中,xt+1为添加一步扰动的文本嵌入向量,x为输入的文本嵌入向量,s为扰动约束空间,xt为t步后的嵌入向量,β为小步步长,g(xt)为t步时的梯度,||g(xt)||2为梯度范数计算。
计算梯度范数并加到向量矩阵中得到对抗学习后的向量矩阵,若为最后一步,则返回保留的初始梯度和向量,并将对抗学习后的梯度添加,根据基于添加对抗学习训练后的梯度进行参数的更新。至此,在添加了对抗学习后的参数进行更新能够在大规模的复杂样本数据中抵抗其他非正常文本干扰,提高了模型的抗干扰性、准确性和鲁棒性。
训练后计算训练集中的损失和准确率,如果损失小于当前的历史最小损失,则保存模型参数,若模型损失长时间没更新则自动结束训练并保存模型。
模型测试。读取训练好的模型参数,调用评估函数计算测试集损失和准确率等数据,测试完成后将结果返回。
实施例二
本发明所采用的技术方案是:一种基于Bert-DPCNN模型改进与分词数据增强、对抗学习的文本分类方法,包括了如下步骤:
数据预处理,将所使用的数据集按比例8:1:1分为训练集、测试集、验证集,对数据集中可能出现的特殊字符、空格、表情等进行处理,基于预训练模型对上述划分后的第一文本集进行字符向量的编码以及分词生成模型能够识别的数据结构和标签列表。中文以字为单位进行分词,对于每个token字符返回该字符的词表索引,在文本标签化序列中首尾添加标志位 [CLS]和[SEP],对数据集中语句长度统一,序列长度过小的语句进行补位,当序列真实长度小于最长序列长度时,对真实序列进行mask标识[1],对补位长度mask标识[0],目的是在计算时减少补位的权重,以此来减少补位数据对分类结果的影响,设置数据迭代器,训练模型时每个epoch都会打乱数据集,一次性生成所需数据到内存容易出现内存不足的情况,故而配置数据迭代器能降低内存的占用。并且在分词时进行对样本数据较少的稀疏以及不均衡数据集进行数据增强,一般的文本数据增强技术为同义词替换、随机插入、随机交换、随机删除数据文本等,往往在以前的数据增强方法中插入、删除等操作都会对文本数据集中的文本序列进行改变,从而影响模型对序列信息的提取造成对模型训练中的特征提取等问题。而该方法使用在文本数据集中随机插入一些标点符号,如“,”、“。”、“;”进行文本的数据集的拓展,使词在文本中保持了原有的顺序,同时也改变了词在文本的位置,以此增加文本数据的复杂性并且提高模型泛化能力。插入标点符号的个数n设定为句子长度L的1/10到1/5之间的随机值,以达到控制插入文本数据集中符号的个数,以免过多的符号的噪声对模型造成负优化等问题。
2.构建训练模型和分类器。1.通过配置文件加载Bert预训练模型。针对中文的词义表达和分词的复杂性,选择基于全词覆盖的中文Bert预训练模型,而非基于字粒度切分的模型2. 定义DPCNN模型框架,通过输出经过Bert模型处理后的具有全局语义信息的词向量,并且构建区域卷积以及固定卷积核的卷积层进行等长卷积,通过等长卷积控制输出的词是由该位置输入的词以及其左右词的上下文信息提取得到的,假设输入的序列长度为n,卷积核大小为m,步长为s,输入序列两端各填补p个零,则卷积层的输出序列为(n-m+2p)/s+1,而等长卷积设置步长S=1,卷积核大小设置为m=250,两端补零则卷积后的输出长度为n,故该词包含被上下文修饰过的更深层的语义且序列长度不变。接着将模型处理后的词向量进行卷积池化,在卷积块中通过使用一个大小size=3,步长stride=2的池化层后,使每个卷积核的维度减半,进一步为将序列长度压缩为原来的一半后对序列再进行等长卷积和激活,并且通过残差连接将上述二者的结果相加,在有了残差连接后梯度就可以忽略卷积层权重的削弱,无损的传递到各个block里,极大的缓解的梯度消失问题。通过堆叠多层卷积池化层后,就能得到加深的可以抽取长距离的文本依赖网络,在卷积中引入pre-activation预激活模式,简化了深度网络的训练并且效果更好,即把激活函数放在卷积操作前面,卷积层的顺序为padding-relu-conv,直至序列长度为所设定的长度,再结合全连接层分类器进行分类。
对Bert-DPCNN模型进行改进后,针对卷积层对过长文本数据的输入文本特征以及文本复杂性的提取,提出在上述DPCNN模型基础上同等增加一层等长卷积层,即在卷积块中的结构为三层等长卷积conv+最大池化maxpool,并且添加残差连接将长文本进一步处理,由于模块中增加了残差连接能够解决一定的梯度弥散和梯度消失问题,所以在增加了一层等长卷积层后不会造成梯度相关问题并且能够提升一定的针对长文本的文本信息提取效果。
3.训练模型,1.设置权重参数使用梯度衰减以及模型学习率衰减率。2.配置模型训练的优化器。Adam优化器吸收了自适应学习率梯度下降算法和动量梯度下降算法的优点,既能适应稀疏梯度也能缓解梯度震荡的问题。Adam方法与其他自适应方法相比,其收敛速度更快,学习效果也更有效,也可以避免如学习率消失、收敛过慢、高方差参数更新导致损失函数波动大等问题。
其中具体公式如下所示:一阶梯度:mt=β1•mt-1+(1-β1)·gt;
二阶梯度:vt=β2·vt-1+(1-β2)·gt 2;
开始训练后得到模型输出,清空梯度后采用交叉熵损失函数计算Loss,其中交叉熵损失 loss=F.cross_entropy(out,y),out是网络输出的概率向量,y是真实标签,该函数在使用时会通过log_softmax以及nll_loss来计算损失,其中交叉熵公式:H(p,q)=-∑∑P(i)logQ(i),P为真实值,Q为预测值。将损失函数反向传播后得到每个参数的梯度,并根据参数梯度结合优化函数对每个参数更新。在损失函数进行计算时,添加控制项θ进行选择性的更新模型参数,设定固定值0.6,当yp>0时,证明模型对该样本识别以达到一定的识别效果,若yp<0,则模型对该样本识别较差需进行模型更新达到更优的训练效果。引入分段函数α(x):
则控制损失函数为:
Lcce=-∑∑1-α(yp-m)]ytLogyp
其中,yt为数据真实值,yp为模型预测的类别概率值,m为设定的控制值,α为分段函数。经过该控制后的损失函数进行训练后,在训练过程中针对容易区分的样本数据不会过度的关注而浪费训练,对于较难的样本保持交叉熵进行模型的更新,以达到更多关注较难样本的训练,使模型的泛化能力相较于原训练方式有进一步提升。
训练中引入对抗学习的方法对数据进行增强,通过在词向量编码过程中增加对抗学习,对初始样本数据添加对抗扰动,往损失函数上升的方向进行对抗学习,保留初始词向量的同时计算损失反向传播得到梯度并预存后对梯度进行范数函数计算,对向量矩阵进行迭代攻击,每步迭代根据公式:计算梯度范数并加到向量矩阵中得到对抗学习后的向量矩阵,若为最后一步,则返回保留的初始梯度和向量,并将对抗学习后的梯度添加,根据基于添加对抗学习训练后的梯度进行参数的更新。至此,在添加了对抗学习后的参数进行更新能够在大规模的复杂样本数据中抵抗其他非正常文本干扰,提高了模型的抗干扰性、准确性和鲁棒性。
并且模型中的自注意力机制以及预训练模型的mask机制在基于对抗学习后的向量矩阵以及参数更新上对模型进行不断调整,通过多头自注意力机制特有的在模型学习中设定的三个矩阵参数(Query、Key、Value),将文本词向量与该特有的矩阵进行运算,以此来确定向量权重以及得到注意力的大小,并且结合上述mask补位对无用信息或padding信息设置为一个很大的负数,通过Softmax计算后将文本中补位的padding信息对其他词的影响消除,达到对文本内容全局信息的保护。预训练模型对全局文本语义有较强的表示能力,并且在通过 DPCNN模型对词向量进行多层卷积和最大池化后,语义预测词有明显的效果,并且对本发明的通过文本语义进行分类具有较强的实践能力。通过模型训练中引入的两种方法结合,会对模型的权重更新保持相对稳定性,并且引入对抗学习后分类模型对各领域里的多样本识别不会被某些特殊的干扰词影响模型分类的准确率,大大提高了该分类模型的准确性。
训练后计算训练集中的损失和准确率,如果损失小于当前的历史最小损失,则保存模型参数,若模型损失长时间没更新则自动结束训练并保存模型。
模型测试。读取训练好的模型参数,调用评估函数计算测试集损失和准确率等数据,测试完成后将结果返回。至此模型训练后在预设的模型保存路径里得到该训练方法训练的分类模型,通过测试集测试后对文本分类效果对比一般分类模型有明显提升。
下面结合具体的输入文本对本方法的效果进行说明,本方法的举例应用环境为对新闻进行分类:
待分类文本1:
新闻内容:《A电影》上映5天连续登票房日冠,将霸榜二十余天的《B电影》挤下“神坛”,全面超越《B电影》指日可待吗,《A电影》上映5天票房十分可观,截止目前已经达到1.87亿,借《B电影》上映五天时的1.64亿做比较,票房高了不少。不少网友猜测《A电影》超越《B电影》继续霸榜的可能性极大。
新闻类别:本方法的分类结果是:娱乐
待分类文本2:
新闻内容:北京时间12月8日1:45(法国当地时间18:45),2021/22赛季欧冠小组赛第六轮展开角逐,巴黎主场4-1击败布鲁日。姆巴佩开场7分钟连入两球,梅西世界波扩大比分,里茨扳回一球,梅西造点后罚进锁定胜局。开场不到2分钟巴黎就取得进球,努诺- 门德斯左侧传中,米尼奥莱将球扑出,姆巴佩抽射远角破门,巴黎1-0领先布鲁日。第3分钟,迪马利亚直塞禁区,维纳尔杜姆单刀球射门被米尼奥莱扑出。第7分钟巴黎扩大比分,迪马利亚挑传禁区,姆巴佩凌空扫射破门,巴黎2-0领先布鲁日。第37分钟巴黎再进一球,姆巴佩左侧人球分过后横传梅西,梅西弧顶处远射破门,巴黎3-0领先布鲁日。第75分钟,梅西禁区内被范德布雷穆特踢倒,主裁判吹罚点球,梅西亲自操刀主罚打球门右下角得手,巴黎4-1领先布鲁日!第77分钟,马塔远射,球稍稍高出横梁。最终巴黎4-1击败了布鲁日,结束本赛季欧冠小组赛的比赛。
新闻类别:本方法的分类结果是:体育
本方法的试验环境如表1所示。
表1
本方法的试验效果如表2所示。
表2
模型 | 准确率 |
TextCNN | 88.62% |
DPCNN | 89.75% |
BiLSTM+Attention | 89.96% |
FastText | 90.17% |
Bert | 91.03% |
本方法 | 92.15% |
从表2中可以看出,本方法的准确率优于其他几种模型和方法。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (10)
1.一种文本分类方法,其特征在于,所述方法包括:
构建第一文本分类模型;
采集样本文本数据,对所述样本文本数据进行处理获得训练集;
利用所述训练集训练所述第一文本分类模型获得第二文本分类模型;
获得待分类文本数据,将所述待分类文本数据输入所述第二文本分类模型,所述第二文本分类模型输出所述待分类文本数据的分类结果;
其中,所述第一文本分类模型包括:
输入层,所述输入层用于获得输入文本数据;
Bert预训练模型,所述Bert预训练模型用于对所述输入文本数据进行编码获得词向量,基于所述词向量获得第一输入序列;
卷积单元,所述卷积单元包括:第一池化层、第一至第k卷积块,k为大于1的整数,所述第一池化层用于对所述第一输入序列进行下采样处理获得第二输入序列;第一至第k卷积块依次连接,第一卷积块的输入为所述第二输入序列,所述第一卷积块的输出为第二卷积块的输入,...,第k-1卷积块的输出为第k卷积块的输入;第一至第k卷积块中的每个卷积块均包括一个卷积层和一个激活层,所述卷积层用于对输入所述卷积块的数据进行特征提取获得特征向量,所述激活层用于对所述特征向量进行激活处理;
通过残差连接将所述第一池化层的输出和所述第k卷积块的输出叠加后输入第二池化层,所述第二池化层用于对叠加后的输入数据进行降维处理获得池化结果;
全连接层,所述全连接层用于对所述池化结果进行分类并将分类结果传输至输出层;
输出层,所述输出层用于输出所述输入文本的分类结果。
2.根据权利要求1所述的文本分类方法,其特征在于,所述第一输入序列的长度为n,所述卷积层的卷积核大小为m,步长为s,在所述第一输入序列两端分别填补p个零所述卷积层的输出序列为(n-m+2p)/s+1。
4.根据权利要求1所述的文本分类方法,其特征在于,所述第一池化层的大小size=3,步长stride=2。
5.根据权利要求1所述的文本分类方法,其特征在于,所述方法包括:对所述样本文本数据进行处理获得训练集、测试集和验证集。
6.根据权利要求5所述的文本分类方法,其特征在于,所述方法包括:对训练集、测试集和验证集进行字符向量编码以及分词处理,生成所述第一文本分类模型能够识别的数据结构和标签列表。
7.根据权利要求6所述的文本分类方法,其特征在于,所述方法包括:对训练集、测试集和验证集中的中文字符以字为单位进行分词,对于每个token字符返回该字符的词表索引,在文本标签化序列中首尾添加标志位[CLS]和[SEP],并统一训练集、测试集和验证集中的序列长度,对序列长度小于阈值的序列进行补位,当序列真实长度小于最长序列长度时,对真实序列进行第一标识,对补位长度进行第二标识。
8.根据权利要求6所述的文本分类方法,其特征在于,所述方法包括:对训练集、测试集和验证集进行数据增强处理,具体包括:在训练集、测试集和验证集中的文本数据中随机插入标点符号。
10.根据权利要求1所述的文本分类方法,其特征在于,本方法基于对抗学习和控制损失函数对所述第一文本分类模型进行训练,训练过程中的损失函数为Lcce:
Lcce=-∑∑[1-α(yp-m)]ytLogyp
其中,yt为数据真实值,yp为第一文本分类模型预测的类别概率值,m为设定的控制值,α为分段函数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111672999.0A CN114357168B (zh) | 2021-12-31 | 2021-12-31 | 一种文本分类方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111672999.0A CN114357168B (zh) | 2021-12-31 | 2021-12-31 | 一种文本分类方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114357168A CN114357168A (zh) | 2022-04-15 |
CN114357168B true CN114357168B (zh) | 2022-08-02 |
Family
ID=81104667
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111672999.0A Active CN114357168B (zh) | 2021-12-31 | 2021-12-31 | 一种文本分类方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114357168B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115858791B (zh) * | 2023-02-17 | 2023-09-15 | 成都信息工程大学 | 短文本分类方法、装置、电子设备和存储介质 |
Citations (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107301246A (zh) * | 2017-07-14 | 2017-10-27 | 河北工业大学 | 基于超深卷积神经网络结构模型的中文文本分类方法 |
CN109285112A (zh) * | 2018-09-25 | 2019-01-29 | 京东方科技集团股份有限公司 | 基于神经网络的图像处理方法、图像处理装置 |
CN109710770A (zh) * | 2019-01-31 | 2019-05-03 | 北京牡丹电子集团有限责任公司数字电视技术中心 | 一种基于迁移学习的文本分类方法及装置 |
CN110047584A (zh) * | 2019-04-23 | 2019-07-23 | 清华大学 | 基于深度学习的医院分诊方法、系统、装置及介质 |
CN110334210A (zh) * | 2019-05-30 | 2019-10-15 | 哈尔滨理工大学 | 一种基于bert与lstm、cnn融合的中文情感分析方法 |
CN110413785A (zh) * | 2019-07-25 | 2019-11-05 | 淮阴工学院 | 一种基于bert和特征融合的文本自动分类方法 |
CN110532386A (zh) * | 2019-08-12 | 2019-12-03 | 新华三大数据技术有限公司 | 文本情感分类方法、装置、电子设备及存储介质 |
CN110580288A (zh) * | 2019-08-23 | 2019-12-17 | 腾讯科技(深圳)有限公司 | 基于人工智能的文本分类方法和装置 |
CN110609899A (zh) * | 2019-08-29 | 2019-12-24 | 成都信息工程大学 | 一种基于改进bert模型的特定目标情感分类方法 |
CN110728298A (zh) * | 2019-09-05 | 2020-01-24 | 北京三快在线科技有限公司 | 多任务分类模型训练方法、多任务分类方法及装置 |
CN110851604A (zh) * | 2019-11-12 | 2020-02-28 | 中科鼎富(北京)科技发展有限公司 | 一种文本分类方法、装置、电子设备及存储介质 |
CN111027632A (zh) * | 2019-12-13 | 2020-04-17 | 支付宝(杭州)信息技术有限公司 | 一种模型训练方法、装置及设备 |
CN111047054A (zh) * | 2019-12-13 | 2020-04-21 | 浙江科技学院 | 一种基于两阶段对抗知识迁移的对抗样例防御方法 |
CN111222339A (zh) * | 2020-01-13 | 2020-06-02 | 华南理工大学 | 一种基于对抗多任务学习的医疗咨询命名实体识别方法 |
CN111309920A (zh) * | 2020-03-26 | 2020-06-19 | 清华大学深圳国际研究生院 | 一种文本分类方法、终端设备及计算机可读存储介质 |
CN111444343A (zh) * | 2020-03-24 | 2020-07-24 | 昆明理工大学 | 基于知识表示的跨境民族文化文本分类方法 |
CN112926322A (zh) * | 2021-04-28 | 2021-06-08 | 河南大学 | 融合自注意力机制和深度学习的文本分类方法及系统 |
CN113111871A (zh) * | 2021-04-21 | 2021-07-13 | 北京金山数字娱乐科技有限公司 | 文本识别模型的训练方法及装置、文本识别方法及装置 |
CN113704473A (zh) * | 2021-08-30 | 2021-11-26 | 济南大学 | 基于长文本特征提取优化的媒体假新闻检测方法及系统 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107562792B (zh) * | 2017-07-31 | 2020-01-31 | 同济大学 | 一种基于深度学习的问答匹配方法 |
CN108563626B (zh) * | 2018-01-22 | 2022-01-25 | 北京颐圣智能科技有限公司 | 医疗文本命名实体识别方法和装置 |
CN109214002A (zh) * | 2018-08-27 | 2019-01-15 | 成都四方伟业软件股份有限公司 | 一种文本对比方法、装置及其计算机存储介质 |
CN109697232B (zh) * | 2018-12-28 | 2020-12-11 | 四川新网银行股份有限公司 | 一种基于深度学习的中文文本情感分析方法 |
US11922303B2 (en) * | 2019-11-18 | 2024-03-05 | Salesforce, Inc. | Systems and methods for distilled BERT-based training model for text classification |
CN113139053B (zh) * | 2021-04-15 | 2024-03-05 | 广东工业大学 | 一种基于自监督对比学习的文本分类方法 |
-
2021
- 2021-12-31 CN CN202111672999.0A patent/CN114357168B/zh active Active
Patent Citations (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107301246A (zh) * | 2017-07-14 | 2017-10-27 | 河北工业大学 | 基于超深卷积神经网络结构模型的中文文本分类方法 |
CN109285112A (zh) * | 2018-09-25 | 2019-01-29 | 京东方科技集团股份有限公司 | 基于神经网络的图像处理方法、图像处理装置 |
CN109710770A (zh) * | 2019-01-31 | 2019-05-03 | 北京牡丹电子集团有限责任公司数字电视技术中心 | 一种基于迁移学习的文本分类方法及装置 |
CN110047584A (zh) * | 2019-04-23 | 2019-07-23 | 清华大学 | 基于深度学习的医院分诊方法、系统、装置及介质 |
CN110334210A (zh) * | 2019-05-30 | 2019-10-15 | 哈尔滨理工大学 | 一种基于bert与lstm、cnn融合的中文情感分析方法 |
CN110413785A (zh) * | 2019-07-25 | 2019-11-05 | 淮阴工学院 | 一种基于bert和特征融合的文本自动分类方法 |
CN110532386A (zh) * | 2019-08-12 | 2019-12-03 | 新华三大数据技术有限公司 | 文本情感分类方法、装置、电子设备及存储介质 |
CN110580288A (zh) * | 2019-08-23 | 2019-12-17 | 腾讯科技(深圳)有限公司 | 基于人工智能的文本分类方法和装置 |
CN110609899A (zh) * | 2019-08-29 | 2019-12-24 | 成都信息工程大学 | 一种基于改进bert模型的特定目标情感分类方法 |
CN110728298A (zh) * | 2019-09-05 | 2020-01-24 | 北京三快在线科技有限公司 | 多任务分类模型训练方法、多任务分类方法及装置 |
CN110851604A (zh) * | 2019-11-12 | 2020-02-28 | 中科鼎富(北京)科技发展有限公司 | 一种文本分类方法、装置、电子设备及存储介质 |
CN111027632A (zh) * | 2019-12-13 | 2020-04-17 | 支付宝(杭州)信息技术有限公司 | 一种模型训练方法、装置及设备 |
CN111047054A (zh) * | 2019-12-13 | 2020-04-21 | 浙江科技学院 | 一种基于两阶段对抗知识迁移的对抗样例防御方法 |
CN111222339A (zh) * | 2020-01-13 | 2020-06-02 | 华南理工大学 | 一种基于对抗多任务学习的医疗咨询命名实体识别方法 |
CN111444343A (zh) * | 2020-03-24 | 2020-07-24 | 昆明理工大学 | 基于知识表示的跨境民族文化文本分类方法 |
CN111309920A (zh) * | 2020-03-26 | 2020-06-19 | 清华大学深圳国际研究生院 | 一种文本分类方法、终端设备及计算机可读存储介质 |
CN113111871A (zh) * | 2021-04-21 | 2021-07-13 | 北京金山数字娱乐科技有限公司 | 文本识别模型的训练方法及装置、文本识别方法及装置 |
CN112926322A (zh) * | 2021-04-28 | 2021-06-08 | 河南大学 | 融合自注意力机制和深度学习的文本分类方法及系统 |
CN113704473A (zh) * | 2021-08-30 | 2021-11-26 | 济南大学 | 基于长文本特征提取优化的媒体假新闻检测方法及系统 |
Non-Patent Citations (4)
Title |
---|
MIHNet:Combining N-gram,Sequential and Global information for Text Classification;Yingxin Song;《Journal of Physics:Conference Series》;20191027;第1-8页 * |
一种基于GAN的异构信息网络表示学习方法;周丽等;《计算机与现代化》;20200515(第05期);第93-99页 * |
基于深度学习的中文专利自动分类方法研究;吕璐成等;《图书情报工作》;20200520(第10期);第77-87页 * |
基于深度学习的文本分类研究进展;杜思佳等;《网络与信息安全学报》;20200815(第04期);第5-17页 * |
Also Published As
Publication number | Publication date |
---|---|
CN114357168A (zh) | 2022-04-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110795556B (zh) | 一种基于细粒度插入式解码的摘要生成方法 | |
CN110751698B (zh) | 一种基于混和网络模型的文本到图像的生成方法 | |
CN109117482A (zh) | 一种面向中文文本情感倾向性检测的对抗样本生成方法 | |
CN112733533B (zh) | 一种基于bert模型及文本-图像关系传播的多模态命名实体识别方法 | |
Zhou et al. | Linguistic steganography based on adaptive probability distribution | |
CN107392147A (zh) | 一种基于改进的生成式对抗网络的图像语句转换方法 | |
CN111966826B (zh) | 一种构建文本分类系统的方法、系统、介质及电子设备 | |
CN109918510A (zh) | 跨领域关键词提取方法 | |
CN112487807A (zh) | 一种基于膨胀门卷积神经网络的文本关系抽取方法 | |
CN108415897A (zh) | 基于人工智能的类别判别方法、装置及存储介质 | |
CN110807324A (zh) | 一种基于IDCNN-crf与知识图谱的影视实体识别方法 | |
CN109815496A (zh) | 基于容量自适应收缩机制载体生成式文本隐写方法及装置 | |
CN114357168B (zh) | 一种文本分类方法 | |
CN114139676A (zh) | 领域自适应神经网络的训练方法 | |
CN110019776A (zh) | 文章分类方法及装置、存储介质 | |
CN111191452A (zh) | 一种铁路文本命名实体识别方法及装置 | |
CN111061873B (zh) | 一种基于Attention机制的多通道的文本分类方法 | |
CN115510236A (zh) | 基于信息融合和数据增强的篇章级事件检测方法 | |
CN115115049A (zh) | 神经网络模型的训练方法、装置、设备、介质及程序产品 | |
Hu et al. | Deep learning for distinguishing computer generated images and natural images: A survey | |
CN116192537B (zh) | 一种apt攻击报告事件抽取方法、系统和存储介质 | |
CN116227603A (zh) | 一种事件推理任务的处理方法、设备及介质 | |
Shiyun et al. | Sentiment commonsense induced sequential neural networks for sentiment classification | |
Zhao et al. | Commented content classification with deep neural network based on attention mechanism | |
Guan | TSIA team at FakeDeS 2021: Fake News Detection in Spanish Using Multi-Model Ensemble Learning. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |