CN111309920A - 一种文本分类方法、终端设备及计算机可读存储介质 - Google Patents
一种文本分类方法、终端设备及计算机可读存储介质 Download PDFInfo
- Publication number
- CN111309920A CN111309920A CN202010225326.XA CN202010225326A CN111309920A CN 111309920 A CN111309920 A CN 111309920A CN 202010225326 A CN202010225326 A CN 202010225326A CN 111309920 A CN111309920 A CN 111309920A
- Authority
- CN
- China
- Prior art keywords
- data set
- text
- model
- enhanced data
- training
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 65
- 238000012549 training Methods 0.000 claims abstract description 52
- 238000009826 distribution Methods 0.000 claims abstract description 38
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 7
- 230000002708 enhancing effect Effects 0.000 claims description 11
- 238000005070 sampling Methods 0.000 claims description 11
- 238000004590 computer program Methods 0.000 claims description 10
- 230000008569 process Effects 0.000 claims description 9
- 238000006467 substitution reaction Methods 0.000 claims description 3
- 239000010410 layer Substances 0.000 description 20
- 239000013598 vector Substances 0.000 description 12
- 230000006870 function Effects 0.000 description 10
- 238000013145 classification model Methods 0.000 description 9
- 230000001360 synchronised effect Effects 0.000 description 8
- 230000000694 effects Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 238000013528 artificial neural network Methods 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000000873 masking effect Effects 0.000 description 3
- 238000003058 natural language processing Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000011218 segmentation Effects 0.000 description 3
- 230000004913 activation Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000011478 gradient descent method Methods 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000007781 pre-processing Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000007635 classification algorithm Methods 0.000 description 1
- 230000009849 deactivation Effects 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 239000002356 single layer Substances 0.000 description 1
- 238000009827 uniform distribution Methods 0.000 description 1
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
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Databases & Information Systems (AREA)
- Machine Translation (AREA)
Abstract
本发明提供一种文本分类方法、终端设备及计算机可读存储介质,方法包括:在第一模型的基础上增加全连接层,基于有监督数据集对全连接层的参数进行训练得到微调预训练模型;通过文本增强算法基于有监督数据集得到数据量增倍的增强数据集,并通过微调预训练模型对增强数据集进行分类得到增强数据集的第一数据分布;利用有监督数据集训练第二模型,第一模型的参数量是所述第二模型的参数量的十倍以上,通过第二模型对所述增强数据集进行分类得到增强数据集的第二数据分布;通过最大化第一数据分布和第二数据分布的相似度的方式进一步训练第二模型,保存全部参数用于对待分类文本进行分类。在保证第二模型速率不变的基础上提升准确率。
Description
技术领域
本发明涉及自然语言处理技术领域,尤其涉及一种文本分类方法、终端设备及计算机可读存储介质。
背景技术
中文文本分类作为中文自然语言处理的一项重要任务,正在得到越来越广泛的研究和应用。目前,中文文本分类方法包含了基于传统机器学习的文本分类方法和基于深度学习的文本分类方法,以及一些倾向于融合传统机器学习和深度的方法。其中较为简单是文本分类模型是基于词袋模型的文本分类算法,词袋模型最早可以追溯到泽里格·哈里斯于1954年的文章(Distributional Structure.Word.1954,10(2/3):146–62.)若使用词袋模型来表示文本,则句子“我喜欢打篮球,小明也喜欢。”和“小明喜欢踢足球,但小红喜欢乒乓球。”经过中文分词后可以构造出词典:{我0,喜欢2,打,篮球,小明,也,踢1,足球1,但1,小红1,乒乓球1}。进而将上述连个句子表示为:[1,2,1,1,1,1,0,0,0,0,0]和[0,2,0,0,1,0,1,1,1,1,1]。即基于句子中词出现的词典中的次数为将每一个句子表示为维度相同的向量。进而使用SVM或神经网络等分类器对文本进行分类。上述方法一个明显的缺点是特征对句子的表达丢失了单次出现在句子中的顺序信息,是一种非常简化版的特征表达。当前应用的较为广泛的特征表示是基于与训练的word2vec,其通过无监督的单层神经网络经过训练将每个词表达为一个固定长度的向量,然后同样的可以将文本通过SVM或神经网络等分类器进行分类。上述方法的优点在于分类模型可以较为简单,模型参数量较少,训练速度和未知数据的预测速度快,但模型分类的准确率较低。而谷歌在Devlin J,Chang M W,Lee K,et al.BERT:Pre-training of Deep Bidirectional Transformers for LanguageUnderstanding[J].2018.提出的BERT模型则由于蕴含丰富的注意力机制,能够从句子中提取丰富的语义信息从而大大提高了文本分类任务的准确率。但其缺点在于模型非常复杂,完整的BERT拥有3.84亿的参数,从而使得模型的训练速度和预测速度都十分缓慢。虽然由于其良好的泛化性能,预训练好的BERT模型能够通过微调适用于不同于其预训练数据的新的文本分类等任务,但在很多硬件性能有限的条件下,微调后的复杂模型如BERT仍不能满足实时性要求。
综上,现有中文文本分类方法仍然有复杂文本分类模型分类效果好,但实际应用会受到硬件条件限制;简单文本分类模型分类效果差,现有模型训练方法对其提升的效果有限的缺点。
以上背景技术内容的公开仅用于辅助理解本发明的构思及技术方案,其并不必然属于本专利申请的现有技术,在没有明确的证据表明上述内容在本专利申请的申请日已经公开的情况下,上述背景技术不应当用于评价本申请的新颖性和创造性。
发明内容
本发明为了解决现有的问题,提供一种文本分类方法、终端设备及计算机可读存储介质。
为了解决上述问题,本发明采用的技术方案如下所述:
一种文本分类方法,包括如下步骤:S1:在第一模型的基础上增加全连接层,基于有监督数据集对所述全连接层的参数进行训练得到微调预训练模型;S2:通过文本增强算法基于所述有监督数据集得到数据量增倍的增强数据集,并通过所述微调预训练模型对所述增强数据集进行分类得到所述增强数据集的第一数据分布;S3:利用所述有监督数据集训练第二模型,所述第一模型的参数量是所述第二模型的参数量的十倍以上,通过第二模型对所述增强数据集进行分类得到所述增强数据集的第二数据分布;S4:通过最大化所述第一数据分布和第二数据分布的相似度的方式进一步训练所述第二模型,保存训练完成后的所述第二模型的全部参数用于对待分类文本进行分类。
优选地,通过文本增强算法基于所述有监督数据集得到数据量增倍的增强数据集包括如下中至少一种:依概率掩盖的文本数据增强获得第一增强数据集;依概率词性替换的文本数据增强获得第二增强数据集;依概率的窗口采样方式数据增强获得第三增强数据集。
优选地,依概率掩盖的文本数据增强包括如下步骤:获取所述有监督数据集;对所述有监督数据集中的每一条文本进行分词;从所述每一条文本中的每一个词生成一个服从正态分布的概率;以预先设置的概率将句子中原始单词替换为掩盖标签;获得第一增强数据集。
优选地,依概率词性替换的文本数据增强包括如下步骤:获取所述有监督数据集;对所述有监督数据集中的每一条文本进行分词;对所述有监督数据集中的所述每一条文本进行词性标注;统计词性标注结果建立词性词典;对所述每一条文本中每一个单词生成一个服从正态分布的概率;以预先设置的概率选择原句中单词;通过所述单词对应的词性标签从所述词性词典中选择新词替换所述单词;重复上述过程获得第二增强数据集。
优选地,依概率的窗口采样方式数据增强获得第三增强数据集包括:获取所述有监督数据集;对所述有监督数据集中的每一条文本进行分词;对所述每一条文本中每一个单词生成一个服从正态分布的概率;选择适当的截断窗口大小;若所述单词对应的概率大于预先设置的概率,则在当前位置进行采样;重复上述过程获得第三增强数据集。
优选地,还包括:将所述第一增强数据集、所述第二增强数据集和所述第三增强数据集中的至少两个进行融合,获得所述增强数据集。
优选地,通过所述微调预训练模型对所述增强数据集进行分类包括:得到所述增强数据集的每一个文本经所述微调预训练模型的softmax层后的分布。
优选地,利用所述有监督数据集和所述增强数据集训练第二模型包括:使用所述有监督数据集训练所述第二模型得到初步训练的第二模型;使用所述增强数据集训练所述初步训练的第二模型,得到所述增强数据集的第二数据分布。
本发明还提供一种文本分类的终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如上任一所述方法的步骤。
本发明再提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如上任一所述方法的步骤。
本发明的有益效果为:提供一种文本分类方法、终端设备及计算机可读存储介质,通过对有监督数据集的原始文本进行分词,并利用原始文本对第一模型进行微调,从而使第一模型能够在原始文本上达到较好的效果,然后,对原始文本进行数据增强,得到增强的无标注数据;使用微调好的第一模型对无标注的增强数据进行分类,得到有标注的增强数据,最后,使用原始文本和增强文本一同训练第二模型,相对于只在原始文本上训练第二模型在保证速率的基础上准确率得到大幅提升。
附图说明
图1是本发明实施例中一种文本分类方法的示意图。
图2是本发明实施例中微调预训练模型方法的流程图。
图3是本发明实施例中依概率掩盖的文本数据增强获得第一增强数据集的方法示意图。
图4是本发明实施例中依概率词性替换的文本数据增强获得第二增强数据集的方法示意图。
图5是本发明实施例中依概率的窗口采样方式数据增强获得第三增强数据集的方法示意图。
图6是本发明实施例中利用所述有监督数据集和所述增强数据集训练第二模型的方法示意图。
图7是本发明实施例中一种文本分类方法的流程图。
具体实施方式
为了使本发明实施例所要解决的技术问题、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
需要说明的是,当元件被称为“固定于”或“设置于”另一个元件,它可以直接在另一个元件上或者间接在该另一个元件上。当一个元件被称为是“连接于”另一个元件,它可以是直接连接到另一个元件或间接连接至该另一个元件上。另外,连接既可以是用于固定作用也可以是用于电路连通作用。
需要理解的是,术语“长度”、“宽度”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明实施例和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多该特征。在本发明实施例的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
如图1所示,本发明一种文本分类方法,包括如下步骤:
S1:在第一模型的基础上增加全连接层,基于有监督数据集对所述全连接层的参数进行训练得到微调预训练模型;
S2:通过文本增强算法基于所述有监督数据集得到数据量增倍的增强数据集,并通过所述微调预训练模型对所述增强数据集进行分类得到所述增强数据集的第一数据分布;
S3:利用所述有监督数据集训练第二模型,所述第一模型的参数量是所述第二模型的参数量的十倍以上,通过第二模型对所述增强数据集进行分类得到所述增强数据集的第二数据分布;
S4:通过最大化所述第一数据分布和第二数据分布的相似度的方式进一步训练所述第二模型,保存训练完成后的所述第二模型的全部参数用于对待分类文本进行分类。
第一模型的参数量比较大的复杂模型,比如BERT、ERNIE、XLNET、RoBERTa、ALBERT;第二模型是参数量比较小的简单模型,比如CBOW、TextCNN、LSTM、Bi-LSTM。
第一模型(复杂模型)在分类的准确度上表现较好,但预测速度非常慢,约为每秒钟一个样本,实际部署到线上的时候难以满足高并发的要求,而第二模型(简单模型)的预测速度较快,通常能够达到每秒钟1000以上的速度,但准确率与复杂模型相比较低。例如每天有1000万的预测需求,那3%的准确率差距就带来了30万的错误,而经过提高以后在预测速度不变的情况下将简单模型的准确率进一步提升,极大的缩小了二者的差距,在实际应用中具有较高的价值。
如图2所示,在第一模型的基础上增加全连接层,基于有监督数据集对所述全连接层的参数进行训练得到微调预训练模型,具体包括如下步骤:
1.1获取待处理有监督数据集,比如THUCNEWS数据集;
1.2获取预训练好的自然语言处理模型即第一模型,例如BERT模型;
1.3可选地,获取停用词表;
1.4对待处理有监督数据进行分词得到文本集合D={D0,D1,…,Dn},其中Di,i∈[1,n]表示一条文本,n为文本总数;对文本集合D中每一条文本进行分词得到文本集合T={T0,T1,…,Tn},其中Ti,i∈[1,n]表示一条已经进行了分词的文本,Ti的长度不唯一;
1.4.1可选地,对每一条已分词文本进行去停用词
1.4.2可选地,对每一条已分词文本进行截断或者拍平从而统一文本长度,详细步骤为:
1.4.2.1对文本集合T={T0,T1,…,Tn}中每一条文本Ti,如果文本Ti的长度大于M(M为预设的每条文本的最大长度),则取Ti中序号为0到M-1的前M个词;
1.4.2.2如果文本Ti的长度小于M,则将Ti中序号大于等于M的词删除。
1.5统计上述已分词文本集合,建立该文本集合的词典,词典用符号V表示,词典的大小为K,表示V中共有K个词;
1.7将词的序号列表输入词向量表示模型,获得每一个词的词向量表示;
1.8将全连接层添加到微调模型中,其中全连接层的公式为:
f(X)=WX+B (1)
上式中,X是第一模型最后一层的输出,具体为长度为m的向量,W,B为可训练的权重和偏置;
1.9将softmax层添加到微调模型中,softmax层的公式表示为:
上式中,i表示softmax层第i维输入,Si表示softmax层第i维输出,对应文本类别为第i类的概率;
1.10使用交叉熵损失函数计算微调模型训练过程中的损失,交叉熵损失函数的公式为:
上式中,y为输入的文本Tj的类别标签,p(xi)表示该文本被分为第i类的概率;
1.11使用随机梯度下降法最小化步骤10中的损失函数在已标注数据集中的训练损失,获得微调好的预训练模型。
本发明提供一系列文本数据增强——也称为文本数据生成的方法,通过该系列文本增强算法,可通过少量数据得到至数倍于原始数据的数据集。具体的,包括:
依概率掩盖的文本数据增强获得第一增强数据集;
依概率词性替换的文本数据增强获得第二增强数据集;
依概率的窗口采样方式数据增强获得第三增强数据集。
如图3所示,依概率掩盖的文本数据增强包括如下步骤:
获取所述有监督数据集;
对所述有监督数据集中的每一条文本进行分词;
从所述每一条文本中的每一个词生成一个服从正态分布的概率;
以预先设置的概率将句子中原始单词替换为掩盖标签;
获得第一增强数据集。
具体的,根据上述word2vec预训练词向量模型的启发,一个单词的语义表示可以通过其在句子周围的若干个词得到,则在当前句子中,某一个或某几个单词具体为哪一个单词不影响句子的语义的完整性,因此,可以利用掩盖标签“UNK”替换句子中的若干个单词从而生成不同于原始文本的新文本;
2.1.1对原始文本集合D={D0,D1,…,Dn}中每一条文本进行分词得到文本集合T={T0,T1,…,Tn},其中Ti,i∈[1,n]表示一条已经进行了分词的文本,Ti=[w0,w1,…,wi,…,wm],其中wi表示经过分词后句子Ti的第i个词;
2.1.2对于含有m个词的句子Ti,使用随机数生成器生成m个服从正态分布的概率Pi=[p0,p1,…,pi,…,pm],其中pi∈[0,1],且Pi中每一个概率值pi与Ti中的词一一对应,即得到了含有概率值的数据集Q={(T0,P0),(T1,P1),…,(Tn,Pn)},其中(Ti,Pi)=[(w0,p0),(w1,p1),…,(wi,pi),…,(wm,pm)];
2.1.3对于数据集Q中每一个句子(Ti,Pi),遍历(Ti,Pi)中每一个词,如果单词wi对应的概率pi<q,则将单词wi替换为“UNK”标签;
2.1.4重复上述2,3步骤k1次,获得新的无标准文本数据集E1,对E1去除重复数据后,所得数据集大小约为原始数据集D的k1倍;在本发明的一种具体的实施例中,重复5次,所得数据集大小约为原始数据集D的5倍,共350万条数据。
如图4所示,依概率词性替换的文本数据增强包括如下步骤:
获取所述有监督数据集;
对所述有监督数据集中的每一条文本进行分词;
对所述有监督数据集中的所述每一条文本进行词性标注;
统计词性标注结果建立词性词典;
对所述每一条文本中每一个单词生成一个服从正态分布的概率;
以预先设置的概率选择原句中单词;
通过所述单词对应的词性标签从所述词性词典中选择新词替换所述单词;
重复上述过程获得第二增强数据集。
通过对句子进行词性标注,可以直观的反映出每个词在句子中扮演的语法成分,而对于某一个语法成分的词来讲,又可以由相同词性的不同词语担任,因此,利用文本数据的这种特点,本发明提出一种依概率词性替换的文本数据增强方式。具体的实施步骤为:
2.2.1获取有监督数据集,有监督数据集作为原始数据集;
2.2.2对原始文本集合D={D0,D1,…,Dn}中每一条文本进行分词得到文本集合T={T0,T1,…,Tn},其中Ti,i∈[1,n]表示一条已经进行了分词的文本,Ti=[w0,w1,…,wi,…,wm],其中wi表示经过分词后句子Ti的第i个单词;
2.2.3对原始数据集D={D0,D1,…,Dn}中每一条文本进行词性标注得到文本集合G={G0,G1,…,Gn},其中Gi={(w0,t0),(w1,t1),…,(wi,ti),…,(wm,tm)},ti为单词wi对应的词性标签;
2.2.4统计带词性标签数据集G建立词性字典V={(t0,L0),(t1,L1),…,(ti,Li),…,(tm,Lm)},其中ti为第i个词性标签,Li=[w0,w1,…,wi,…,wk]为ti对应的词语列表。
2.2.5对于含有m个词的句子Ti,使用随机数生成器生成m个服从正态分布的概率Pi=[p0,p1,…,pi,…,pm],其中pi∈[0,1],且Pi中每一个概率值pi与Ti中的词一一对应,即得到了含有概率值得数据集Q={(T0,P0),(T1,P1),…,(Tn,Pn)},其中(Ti,Pi)=[(w0,p0),(w1,p1),…,(wi,pi),…,(wm,pm)];
2.2.6对于数据集Q中每一个句子(Ti,Pi),遍历(Ti,Pi)中每一个词,如果词wi对应的概率pi<q,则查询词wi对应的词性标签ti,利用ti为索引在词性词典V中查询ti所对应的单词列表Li,利用随机数生成器生成一个位于[0,k-1]之间的正整数j,使用单词列表Li中的词wj代替原句中的词wi;
2.2.7重复上述4,5步骤k2次,获得新的无标准文本数据集E2,对E2去除重复数据后,所得数据集大小约为原始数据集D的k2倍。在本发明的一种具体的实施例中,重复4次,所得数据集大小约为原始数据集D的4倍,共约300万条数据。
如图5所示,依概率的窗口采样方式数据增强获得第三增强数据集包括:
获取所述有监督数据集;
对所述有监督数据集中的每一条文本进行分词;
对所述每一条文本中每一个单词生成一个服从正态分布的概率;
选择适当的截断窗口大小;
若所述单词对应的概率大于预先设置的概率,则在当前位置进行采样;
重复上述过程获得第三增强数据集。
具体的,在自然预处理领域,隐马尔可夫模型(Hidden Markov Model,HMM)已经被证明是一个在包括分词,词性标注等多个方面应用效果非常好的模型,根据马尔科夫假设,当前单词是否出现在句子中只依赖于其前面的一个或几个词,N-gram语言模型就是利用自然语言的上述特点。因此,本发明提出基于N-gram思想的采样方式进行数据增强,具体过程为:
2.3.1获取有监督数据集,有监督数据集作为原始数据集;
2.3.2对原始文本集合D={D0,D1,…,Dn}中每一条文本进行分词得到文本集合T={T0,T1,…,Tn},其中Ti,i∈[1,n]表示一条已经进行了分词的文本,Ti=[w0,w1,…,wi,…,wm],其中wi表示经过分词后句子Ti的第i个词;
2.3.3对于含有m个词的句子Ti,使用随机数生成器生成m个服从均匀分布的概率Pi=[p0,p1,…,pi,…,pm],其中pi∈[0,1],且Pi中每一个概率值pi与Ti中的词一一对应,即得到了含有概率值的数据集Q={(T0,P0),(T1,P1),…,(Tn,Pn)},其中(Ti,Pi)=[(w0,p0),(w1,p1),…,(wi,pi),…,(wm,pm)];
2.3.4设窗口大小(即N-gram中N的大小)的列表为:N=[n0,n1,…,nk]表示共设有k个窗口,随机的从N中选择一个值ni,作为当前增强方案中的窗口大,遍历文本集合Q={(T0,P0),(T1,P1),…,(Tn,Pn)},对于集合中的文本(Ti,Pi),如果wi对应的概率pi>q,其中q为预设概率,则从当前单词wi出发分别向前后各取ni个词组成一条新的文本;在本发明的一种实施例中设有10个窗口。
2.3.5重复上述2.3.3,2.3.4步骤k3次得到增强数据集E3;在本发明的一种实施例中,重复10次,得到的数据集共600万条数据
2.3.6可选地,对数据增强方案一种得到的新的数据集E1进行上述2.3.3,2.3.4,2.3.5步骤的操作可得到增强数据集E4;
2.2.7可选地,对数据增强方案一种得到的新的数据集E2进行上述2.3.3,2.3.4,2.3.5步骤的操作可得到增强数据集E5。
在本发明的一种实施例中,还包括:
将所述第一增强数据集、所述第二增强数据集和所述第三增强数据集中的至少两个进行融合,获得所述增强数据集。
通过所述微调预训练模型对所述增强数据集进行分类包括:
得到所述增强数据集的每一个文本经所述微调预训练模型的softmax层后的分布。
混合增强数据集E1,E2,E3或单独去任一增强数据集作为最终增强数据集F,其中F={F0,F1,…,Fn},Fi表示增强数据集中第i个文本。
将F通过第一步中微调好的预训练模型,对每一个文本Fi得到其经过softmax层后的分布ds。
如图6所示,利用所述有监督数据集和所述增强数据集训练第二模型包括:
使用所述有监督数据集训练所述第二模型得到初步训练的第二模型;
使用所述增强数据集训练所述初步训练的第二模型,得到所述增强数据集的第二数据分布。
具体包括,使用基于word2vec的词向量和全连接神经网络构造文本分类模型;
4.1对原始数据集即有监督数据集进行预处理,得到分好词的数据集,比如THUCNews数据集T={T0,T1,…,Tn};
4.1.1可选地,对每一条已分词文本进行去停用词;
4.1.2可选地,对每一条已分词文本进行截断或者拍平从而统一文本长度;
4.3将词的序号列表输入词向量表示模型,获得每一个词的词向量表示;
4.4连接每一个的词向量,得到每一个文本的向量表示xi;
4.5将xi作为输入传入全连接层,对于句子xi,全连接层的表示为:
f(xi)=Wixi+Bi (4)
4.6将f(xi)作为sigmoid激活函数获得f(xi)的非线性表示:
4.7将非线性激活函数的输出传入输出大小为分类模型类别数量k的全连接层;
4.8使用softmax函数上述k维全连接层的输出归一化得到文本xi属于每一个类别的概率p(xi);
4.9使用交叉熵损失函数计算微调模型训练过程中的损失,交叉熵损失函数的公式为:
4.10上式中,y为输入的文本Tj的类别标签,p(xi)表示该文本被分为第i类的概率;
4.11使用随机梯度下降法最小化步骤4.9中的损失函数在已标注数据集中的训练损失,获得微调好的预训练模型;
4.12对于增强数据集F中每一个文本Fi,将其对应的句子向量表示经过4.5,4.6,4.7,4.8步骤得到文本分类模型的分布df
4.13计算微调模型与全连接网络文本分类模型即第二模型的分类分布之间的欧式距离
L(ds,df)=||ds-df||2 (7)
4.14使用随即梯度下降算法最小化微调模型与全连接网络文本分类模型的分类分布之间的欧式距离。通过最大化所述第一数据分布和第二数据分布的相似度的方式进一步训练所述第二模型,保存训练完成后的所述第二模型的全部参数用于对待分类文本进行分类。
如图7所示,是用本发明的方法应用于第一模型是Bert模型,第二模型是CBOW模型。得到如表1所述的实验结果。
表1实验结果
模型 | 准确率 |
Bert | 94.75% |
本发明(增强的CBOW) | 93.58% |
CBOW | 91.33% |
由表1可以知道,经过本发明的方法使得第二模型CBOW模型在预测速度不变的情况下提升了准确率,极大的缩小了与第一模型Bert模型的差距,在实际应用中具有较高的价值。
本申请实施例还提供一种文本分类的终端设备,包括处理器和用于存储计算机程序的存储介质;其中,处理器用于执行所述计算机程序时至少执行如上所述的方法。
本申请实施例还提供一种存储介质,用于存储计算机程序,该计算机程序被执行时至少执行如上所述的方法。
本申请实施例还提供一种处理器,所述处理器执行计算机程序,至少执行如上所述的方法。
所述存储介质可以由任何类型的易失性或非易失性存储设备、或者它们的组合来实现。其中,非易失性存储器可以是只读存储器(ROM,Read Only Memory)、可编程只读存储器(PROM,Programmable Read-Only Memory)、可擦除可编程只读存储器(EPROM,ErasableProgrammable Read-Only Memory)、电可擦除可编程只读存储器(EEPROM,ElectricallyErasable Programmable Read-Only Memory)、磁性随机存取存储器(FRAM,FerromagneticRandom Access Memory)、快闪存储器(Flash Memory)、磁表面存储器、光盘、或只读光盘(CD-ROM,Compact Disc Read-Only Memory);磁表面存储器可以是磁盘存储器或磁带存储器。易失性存储器可以是随机存取存储器(RAM,Random Access Memory),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(SRAM,Static Random Access Memory)、同步静态随机存取存储器(SSRAM,SynchronousStatic Random Access Memory)、动态随机存取存储器(DRAM,DynamicRandom AccessMemory)、同步动态随机存取存储器(SDRAM,Synchronous Dynamic RandomAccessMemory)、双倍数据速率同步动态随机存取存储器(DDRSDRAM,Double DataRateSynchronous Dynamic Random Access Memory)、增强型同步动态随机存取存储器(ESDRAM,Enhanced Synchronous Dynamic Random Access Memory)、同步连接动态随机存取存储器(SLDRAM,SyncLink Dynamic Random Access Memory)、直接内存总线随机存取存储器(DRRAM,Direct Rambus Random Access Memory)。本发明实施例描述的存储介质旨在包括但不限于这些和任意其它适合类型的存储器。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元,即可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
另外,在本发明各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
或者,本发明上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
本申请所提供的几个方法实施例中所揭露的方法,在不冲突的情况下可以任意组合,得到新的方法实施例。
本申请所提供的几个产品实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的产品实施例。
本申请所提供的几个方法或设备实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的方法实施例或设备实施例。
以上内容是结合具体的优选实施方式对本发明所做的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的技术人员来说,在不脱离本发明构思的前提下,还可以做出若干等同替代或明显变型,而且性能或用途相同,都应当视为属于本发明的保护范围。
以上内容是结合具体的优选实施方式对本发明所做的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的技术人员来说,在不脱离本发明构思的前提下,还可以做出若干等同替代或明显变型,而且性能或用途相同,都应当视为属于本发明的保护范围。
Claims (10)
1.一种文本分类方法,其特征在于,包括如下步骤:
S1:在第一模型的基础上增加全连接层,基于有监督数据集对所述全连接层的参数进行训练得到微调预训练模型;
S2:通过文本增强算法基于所述有监督数据集得到数据量增倍的增强数据集,并通过所述微调预训练模型对所述增强数据集进行分类得到所述增强数据集的第一数据分布;
S3:利用所述有监督数据集训练第二模型,所述第一模型的参数量是所述第二模型的参数量的十倍以上,通过第二模型对所述增强数据集进行分类得到所述增强数据集的第二数据分布;
S4:通过最大化所述第一数据分布和第二数据分布的相似度的方式进一步训练所述第二模型,保存训练完成后的所述第二模型的全部参数用于对待分类文本进行分类。
2.如权利要求1所述的文本分类方法,其特征在于,通过文本增强算法基于所述有监督数据集得到数据量增倍的增强数据集包括如下中至少一种:
依概率掩盖的文本数据增强获得第一增强数据集;
依概率词性替换的文本数据增强获得第二增强数据集;
依概率的窗口采样方式数据增强获得第三增强数据集。
3.如权利要求2所述的文本分类方法,其特征在于,依概率掩盖的文本数据增强包括如下步骤:
获取所述有监督数据集;
对所述有监督数据集中的每一条文本进行分词;
从所述每一条文本中的每一个词生成一个服从正态分布的概率;
以预先设置的概率将句子中原始单词替换为掩盖标签;
获得所述第一增强数据集。
4.如权利要求2所述的文本分类方法,其特征在于,依概率词性替换的文本数据增强包括如下步骤:
获取所述有监督数据集;
对所述有监督数据集中的每一条文本进行分词;
对所述有监督数据集中的所述每一条文本进行词性标注;
统计词性标注结果建立词性词典;
对所述每一条文本中每一个单词生成一个服从正态分布的概率;
以预先设置的概率选择原句中单词;
通过所述单词对应的词性标签从所述词性词典中选择新词替换所述单词;
重复上述过程获得所述第二增强数据集。
5.如权利要求2所述的文本分类方法,其特征在于,依概率的窗口采样方式数据增强获得第三增强数据集包括:
获取所述有监督数据集;
对所述有监督数据集中的每一条文本进行分词;
对所述每一条文本中每一个单词生成一个服从正态分布的概率;
选择适当的截断窗口大小;
若所述单词对应的概率大于预先设置的概率,则在当前位置进行采样;
重复上述过程获得所述第三增强数据集。
6.如权利要求2所述的文本分类方法,其特征在于,还包括:
将所述第一增强数据集、所述第二增强数据集和所述第三增强数据集中的至少两个进行融合,获得所述增强数据集。
7.如权利要求1所述的文本分类方法,其特征在于,通过所述微调预训练模型对所述增强数据集进行分类包括:
得到所述增强数据集的每一个文本经所述微调预训练模型的softmax层后的分布。
8.如权利要求7所述的文本分类方法,其特征在于,利用所述有监督数据集和所述增强数据集训练第二模型包括:
使用所述有监督数据集训练所述第二模型得到初步训练的第二模型;
使用所述增强数据集训练所述初步训练的第二模型,得到所述增强数据集的第二数据分布。
9.一种文本分类的终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1-8任一所述方法的步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-8任一所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010225326.XA CN111309920B (zh) | 2020-03-26 | 2020-03-26 | 一种文本分类方法、终端设备及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010225326.XA CN111309920B (zh) | 2020-03-26 | 2020-03-26 | 一种文本分类方法、终端设备及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111309920A true CN111309920A (zh) | 2020-06-19 |
CN111309920B CN111309920B (zh) | 2023-03-24 |
Family
ID=71157340
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010225326.XA Active CN111309920B (zh) | 2020-03-26 | 2020-03-26 | 一种文本分类方法、终端设备及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111309920B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112069799A (zh) * | 2020-09-14 | 2020-12-11 | 深圳前海微众银行股份有限公司 | 基于依存句法的数据增强方法、设备和可读存储介质 |
CN112632283A (zh) * | 2020-12-30 | 2021-04-09 | 北京有竹居网络技术有限公司 | 模型生成方法、文本分类方法、装置、设备及介质 |
CN112883724A (zh) * | 2021-02-03 | 2021-06-01 | 虎博网络技术(上海)有限公司 | 文本数据增强处理方法、装置、电子设备和可读存储介质 |
CN113255365A (zh) * | 2021-05-28 | 2021-08-13 | 湖北师范大学 | 文本数据增强方法、装置、设备及计算机可读存储介质 |
CN114357168A (zh) * | 2021-12-31 | 2022-04-15 | 成都信息工程大学 | 一种文本分类方法 |
CN117473095A (zh) * | 2023-12-27 | 2024-01-30 | 合肥工业大学 | 基于主题增强词表示的短文本分类方法和系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108197109A (zh) * | 2017-12-29 | 2018-06-22 | 北京百分点信息科技有限公司 | 一种基于自然语言处理的多语言分析方法和装置 |
CN109325231A (zh) * | 2018-09-21 | 2019-02-12 | 中山大学 | 一种多任务模型生成词向量的方法 |
CN109726285A (zh) * | 2018-12-18 | 2019-05-07 | 广州多益网络股份有限公司 | 一种文本分类方法、装置、存储介质及终端设备 |
WO2019200806A1 (zh) * | 2018-04-20 | 2019-10-24 | 平安科技(深圳)有限公司 | 文本分类模型的生成装置、方法及计算机可读存储介质 |
CN110888968A (zh) * | 2019-10-15 | 2020-03-17 | 浙江省北大信息技术高等研究院 | 客服对话意图分类方法及装置、电子设备及介质 |
-
2020
- 2020-03-26 CN CN202010225326.XA patent/CN111309920B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108197109A (zh) * | 2017-12-29 | 2018-06-22 | 北京百分点信息科技有限公司 | 一种基于自然语言处理的多语言分析方法和装置 |
WO2019200806A1 (zh) * | 2018-04-20 | 2019-10-24 | 平安科技(深圳)有限公司 | 文本分类模型的生成装置、方法及计算机可读存储介质 |
CN109325231A (zh) * | 2018-09-21 | 2019-02-12 | 中山大学 | 一种多任务模型生成词向量的方法 |
CN109726285A (zh) * | 2018-12-18 | 2019-05-07 | 广州多益网络股份有限公司 | 一种文本分类方法、装置、存储介质及终端设备 |
CN110888968A (zh) * | 2019-10-15 | 2020-03-17 | 浙江省北大信息技术高等研究院 | 客服对话意图分类方法及装置、电子设备及介质 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112069799A (zh) * | 2020-09-14 | 2020-12-11 | 深圳前海微众银行股份有限公司 | 基于依存句法的数据增强方法、设备和可读存储介质 |
CN112632283A (zh) * | 2020-12-30 | 2021-04-09 | 北京有竹居网络技术有限公司 | 模型生成方法、文本分类方法、装置、设备及介质 |
CN112883724A (zh) * | 2021-02-03 | 2021-06-01 | 虎博网络技术(上海)有限公司 | 文本数据增强处理方法、装置、电子设备和可读存储介质 |
CN113255365A (zh) * | 2021-05-28 | 2021-08-13 | 湖北师范大学 | 文本数据增强方法、装置、设备及计算机可读存储介质 |
CN114357168A (zh) * | 2021-12-31 | 2022-04-15 | 成都信息工程大学 | 一种文本分类方法 |
CN114357168B (zh) * | 2021-12-31 | 2022-08-02 | 成都信息工程大学 | 一种文本分类方法 |
CN117473095A (zh) * | 2023-12-27 | 2024-01-30 | 合肥工业大学 | 基于主题增强词表示的短文本分类方法和系统 |
CN117473095B (zh) * | 2023-12-27 | 2024-03-29 | 合肥工业大学 | 基于主题增强词表示的短文本分类方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
CN111309920B (zh) | 2023-03-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111309920B (zh) | 一种文本分类方法、终端设备及计算机可读存储介质 | |
CN110209806B (zh) | 文本分类方法、文本分类装置及计算机可读存储介质 | |
Morin et al. | Hierarchical probabilistic neural network language model | |
Wang et al. | Segmental audio word2vec: Representing utterances as sequences of vectors with applications in spoken term detection | |
CN110413768B (zh) | 一种文章题目自动生成方法 | |
CN112784532B (zh) | 用于短文本情感分类的多头注意力记忆系统 | |
JPH11352994A (ja) | 統計的シーケンスモデル生成装置、統計的言語モデル生成装置及び音声認識装置 | |
US11645447B2 (en) | Encoding textual information for text analysis | |
CN112905736B (zh) | 一种基于量子理论的无监督文本情感分析方法 | |
CN110968725B (zh) | 图像内容描述信息生成方法、电子设备及存储介质 | |
CN115186665B (zh) | 一种基于语义的无监督学术关键词提取方法及设备 | |
Shah et al. | Within and cross-corpus speech emotion recognition using latent topic model-based features | |
Tündik et al. | Joint word-and character-level embedding CNN-RNN models for punctuation restoration | |
CN115081437A (zh) | 基于语言学特征对比学习的机器生成文本检测方法及系统 | |
Boros et al. | Fast and Accurate Decision Trees for Natural Language Processing Tasks. | |
Quick | Learning production probabilities for musical grammars | |
Ratajczak et al. | Sum-product networks for structured prediction: Context-specific deep conditional random fields | |
CN115033706A (zh) | 一种知识图谱自动补全和更新的方法 | |
Zharmagambetov et al. | Softmax tree: An accurate, fast classifier when the number of classes is large | |
Nielsen | A corpus-based study of verb phrase ellipsis identification and resolution | |
CN112115256A (zh) | 一种融入中文笔画信息的新闻文本摘要生成的方法及装置 | |
Chowdhury et al. | A continuous space neural language model for bengali language | |
Ribeiro et al. | Pgtask: Introducing the task of profile generation from dialogues | |
Wang et al. | Parsimonious HMMS for offline handwritten Chinese text recognition | |
Kumar et al. | Self-attention enhanced recurrent neural networks for sentence classification |
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 |