CN110597983A - 一种基于类别嵌入的层次化文本分类计算方法 - Google Patents
一种基于类别嵌入的层次化文本分类计算方法 Download PDFInfo
- Publication number
- CN110597983A CN110597983A CN201910675336.0A CN201910675336A CN110597983A CN 110597983 A CN110597983 A CN 110597983A CN 201910675336 A CN201910675336 A CN 201910675336A CN 110597983 A CN110597983 A CN 110597983A
- Authority
- CN
- China
- Prior art keywords
- text
- classification
- vector
- category
- calculation method
- 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
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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明属于计算机文本分类技术领域,尤其涉及一种基于类别嵌入的层次化文本分类计算方法,包括:步骤1:采用图嵌入算法SDNE对文本类别层次树中每个节点进行编码得到类别嵌入向量;步骤2:采用对前向GRU与后向GRU的最后一个隐藏状态进行拼接的方式来对文本进行编码,得到文本向量;步骤3:将文本向量表示与类别嵌入向量进行拼接,得到新的文本表示;步骤4:采用多层感知器和SoftMax层基于文本表示对文本进行分类,输出分类结果。实验证明本发明大大的降低了子模型的数量,同时提高分类准确率。
Description
技术领域
本发明属于计算机文本分类技术领域,尤其涉及一种基于类别嵌入的层次化文本分类计算方法。
背景技术
在信息时代的今天,互联网每天会新增海量的文本数据,如何高效的对这些文本进行自动分类,一直是人们的研究热点。文本分类技术对很多应用都有重要意义,如文档搜索,文档管理和信息检索。现存的文本分类算法主要采用有监督的机器学习算法,如决策树,朴素贝叶斯,支持向量机等,并且使用词袋模型或TD-IDF模型进行文本表示。最近,许多基于深度学习的文本分类算法被提出,相比其他算法,基于深度学习的算法在很多文本分类任务上取得了更高的准确率。
但是,随着文本数据的爆炸式增长,文本的类别数量也在迅速增加,这意味着在对文本进行分类时,要考虑更多可能的结果,使得文本分类任务更具有挑战性。一种解决这个问题的有效方法是在分类时引入类别的层次信息,即层次化分类。平面文本分类算法不考虑文本类别之间的关系,在处理文档时认为类别是互相独立的,实际上一个类别可能是另一个类别的子类,即一个文档如果属于类别ci,那么其必然属于ci的父类别,这种类别之间的层次结构是重要的信息。
在层次化分类问题中,类别之间并不是毫无关联的,而是具有一个层次化的结构,通常是树或有向无环图,其中子类别是父类别的子节点。层次化分类算法为样本在类别的层次结构中寻找一条路径,该路径上的各类别即是分类结果,与之相对的是平面算法忽视类别之间的结构信息,其常见的做法是直接在那些叶子节点代表的类别中选择一个作为分类结果。
发明内容
针对上述技术问题,本发明提出了一种基于类别嵌入的层次化文本分类计算方法,包括:
步骤1:采用图嵌入算法SDNE对文本类别层次树中每个节点进行编码得到类别嵌入向量;
步骤2:采用对前向GRU与后向GRU的最后一个隐藏状态进行拼接的方式来对文本进行编码,得到文本向量;
步骤3:将文本向量表示与类别嵌入向量进行拼接,得到新的文本表示;
步骤4:采用多层感知器和SoftMax层基于文本表示对文本进行分类,输出分类结果。
所述步骤1包括:将每个节点编码为一个低维稠密向量,采用深度自编码器,并改造损失函数,通过减小一条边上两个节点的向量表示的差异来保存图的局部结构特征。
所述类别嵌入向量保存了类别在层次体系中的结构信息,这些结构信息能反映类别在层次体系中的位置信息以及类别之间的关系。
所述步骤2包括:将文本表示与上一层的分类结果的类别嵌入一起用于本层的分类。
所述深度自编码器首先通过多次非线性变换将输入数据x编码到一个较低维度的表示空间,得到数据的低维度表示y,然后再次通过多次非线性变换进行解码,试图还原出输入数据,记解码得到的结果是通过尽可能的减少x和的差异来保证低维度的y中保存了足够多的原始数据信息。
所述GRU中使用门机制,包括更新门和重置门,更新门用于控制前一时刻的状态信息被保留到当前状态中的程度,更新门的值越大说明前一时刻的状态信息保留越多;重置门控制前一状态有多少信息被写入到当前的候选状态上,重置门越小,前一状态的信息被写入的越少。
本发明的有益效果:
本发明提出了一种逐层的基于类别嵌入和深度学习的局部算法(CEHCN),该算法为类别层次中的每一层而不是为每一个父节点训练一个分类器。这种不同大大的降低了子模型的数量,同时提高分类准确率。
本发明基于图嵌入来生成类别嵌入,并在每层根据上层分类结果的类别嵌入动态生成文本表示,用于本层分类,实验证明该算法在参数数量大大减少的同时分类准确率优于当前最优算法。
附图说明
图1为本发明的方法流程图。
具体实施方式
本发明提出了一种基于类别嵌入的层次化文本分类计算方法CEHCN,如图1所示,包括:
步骤1:采用图嵌入算法SDNE对文本类别层次树中每个节点进行编码得到类别嵌入向量;
步骤2:采用对前向GRU与后向GRU的最后一个隐藏状态进行拼接的方式来对文本进行编码,得到文本向量;
步骤3:将文本向量表示与类别嵌入向量进行拼接,得到新的文本表示;
步骤4:采用多层感知器和SoftMax层基于文本表示对文本进行分类,输出分类结果。
图嵌入算法SDNE是一种旨在在低维空间中表示图,并保留尽可能多的图属性信息的方法,将图节点表示为低维向量空间中的稠密向量。具体而言,SDNE使用了深度自编码器并设计了全新的损失函数来学习图的局部和全局结构特征。
深度自编码器是一种数据压缩算法,其首先通过多次非线性变换(也就是多层全连接神经网络)将输入数据x编码到一个较低维度的表示空间,得到数据的低维度表示y,然后再次通过多次非线性变换进行解码,试图还原出输入数据,记解码得到的结果是深度自编码器通过尽可能的减少x和的差异来保证低维度的y中保存了足够多的原始数据信息。
对于一个图G=(V,E),其中V={v1,…,vn}代表节点,代表边,每条边有一个相应的权值si,j≥0,两点之间无边则权值等于0,否则对于无权图权值等于1,有权图权值大于0。SDNE改造了深度自编码器的损失函数:
其中X为图的邻接矩阵,为重建的邻接矩阵,通过减小两者的差距保证学习到的节点向量拥有重建邻接矩阵的能力,即保存图的全局结构特征,⊙为哈达玛积,B为一个矩阵,用于解决图过于稀疏的问题。yi和yj分别为第i个和第j个节点的向量表示,SDNE通过减小一条边上两个节点的向量表示的差异来保存图的局部结构特征,即有边连接的两节点其向量表示是相似的。是正则化项,用于避免模型过拟合。SDNE算法能同时学习到图的全局结构特征和局部结构特征。
本发明的CEHCN是一种逐层的局部层次化分类算法,在层次体系的每一层,都将训练一个如图1所示的子模型用于该层的分类。
CEHCN中的类别嵌入指的是将每一个类别映射为一个实数域上的向量。类别嵌入的向量是低维和稠密的,并且能保存其对应类别的足够多的特征,在本发明中,类别嵌入的特征指类别在整个层次结构中的结构特征。
在层次化分类问题中,常见的类别层次结构通常是一个树,树中的每个节点代表一个类别,对于一个有m层的类别树T,记树中一个节点为其中1≤l≤m,1≤i≤nl,nl指第l层的类别数量。首先通过图嵌入算法SDNE将树中每个节点编码为一个低维稠密向量:
G=SDNE(T) (2)
其中G指树中所有节点的类别嵌入向量,记节点的类别嵌入向量为经SDNE算法生成得到的节点向量保存了类别在层次体系中的结构信息,这些结构信息能反映类别在层次体系中的位置信息以及类别之间的关系。
对于给定的一个待分类文本,将其记为(word1,word2,…,wordn),其中n为文本中单词数量,单词的词向量记为(w1,w2,…,wn)。本发明首先使用一个双向的GRU对文本进行编码:
GRU是循环神经网络的一种变体,能够解决循环神经网络中的长依赖问题,是目前一种十分流行的网络,GRU中使用了门机制,在GRU中包括两个门,分别是更新门和重置门,更新门用于控制前一时刻的状态信息被保留到当前状态中的程度,更新门的值越大说明前一时刻的状态信息保留越多。重置门控制前一状态有多少信息被写入到当前的候选状态上,重置门越小,前一状态的信息被写入的越少。GRU的公式如下:
rt=σ(Wr·[ht-1,xt]) (4)
zt=σ(Wz·[ht-1,xt]) (5)
yt=σ(Wo·ht) (8)
其中[]指两个向量的连接,*表示向量逐元素相乘。rt为重置门的计算公式,zt为更新门的计算公式,为候选状态,ht为隐藏层状态,yt为GRU在t时刻的输出。
然后,本发明将拼接前向GRU与后向GRU的最后一个隐藏状态,即其中包含了前向GRU对文本编码得到的特征,包含了后向GRU对文本编码得到的特征,符号代表向量的拼接运算。
对于层次化分类问题,第l层的分类必须考虑l层之前的分类情况,所以,本发明将文本表示h与其第l-1层的分类结果pl-1的类别嵌入一起用于第l层的分类,即用表示文本。值得注意的是,第一层是首次分类,因此没有可用的类别嵌入,即第一层有d=h。
然后,本发明使用一个全连接层和一个SoftMax层进行第l层的分类:
公式3中的softmax是在第l层上的所有类别上计算的,该分类结果将用于下一层的分类。CEHCN算法对每层分类进行如上所述的操作,直到得到最后一层的结果。
利用本发明的方法进行比对试验。
本发明使用两个具有层次化类别结构的数据集进行实验,一是WOS,另一个是DBpedia。
表1数据集
WOS数据集中文本来自于web ofscience,如表1所示,其共有46985个样本,两层类别,第1层共有7个类别,包括计算机,机械,医药,生物等领域的文本,第2层中的类别是第一层类别的子类别,如计算视觉,机器学习,网络安全等类别是计算机类别的子类,共134个。DBpedia数据集中文本来自维基百科,共有381025个样本,三层类别,各类别的种类数分别是9,70,219,后一层中的类别是前一层的子类别,第一层中的类别包括事件,概念,生物物种等。本发明将WOS数据集中的80%用作训练集,20%用作测试集,对于DBpedia数据集,其作者已经将其分割为训练集和测试集,本发明不再划分。
与CEHCN算法进行对比算法包括当前效果最好的平面文本分类算法和层次化分类算法。平面分类算法有FastText,Bi-LSTM,Structured Self-attention,层次化分类算法为HDLTex和HATC。
本发明将SDNE算法得到的图嵌入的维度设置为50,并且使用300维预训练的glove词向量。本发明使用了一个两层的双向GRU,隐藏单元的维度为100,dropout设置为0.2,全连接层的维度根据层类别数量设置为256或512。训练时的batchsize为64,此外,本发明使用adam优化算法进行参数的更新,各参数与提出此算法的论文完全一致。
表2分类准确率
表2中展示了分类的准确率,表中l1,l2,l3指的是在提供文本在上层的真实类别时,本层的分类准确率。overall指的是文本在最后一层的分类准确率,但在逐层分类过程中并不预先提供真实的各上层类别,即在各层分类过程中,所需的上层类别来自于算法在上层的分类结果。由于平面算法不处理类别层次结构中的中间各层,而只考虑最后一层的分类,因此各平面算法只有overall准确率。
实验结果表明,各层次化分类算法在DBpedia数据集的l3准确率和WOS数据集的l2准确率都要远高于对应的overall准确率,这说明是否提供上层真实类别对本层分类准确率有着重要影响,证明了类别层次关系的确是一种有用的信息。
对最高的准确率进行了加粗处理,可以看到,本发明的CEHCN算法在两个数据集的overall准确率上都是所有算法中最高的,超过了当前最好的局部层次化分类方法HDLTex和全局层次化分类方法HATC。HDLTex和HATC虽然是专为层次化分类问题设计的算法,但与当前最好的一众平面分类算法相比,其overall分类准确率并不具有优势,反而略微低于平面算法,这在某种程度上失去了其层次化的意义,而本发明的算法准确率高于这些平面算法。
表3层次化模型的参数数量
模型 | 参数数量/百万个 |
HDLTex | 5000 |
CEHCN | 360 |
相比于全局层次化分类算法,局部算法的一个缺陷就是参数数量过多,因为有太多的子模型需要训练。就本发明中实验而言,WOS和DBpedia两个数据集分别包含8个父节点,2个层次以及80个父节点,3个层次。共包含88个父节点以及5个层次,对HDLTex而言,需要为每一个父节点训练一个子模型,而CEHCN只需要为每个层次训练一个子模型,因此HDLTex包含88个子模型,CEHCN则只包含5个子模型,这导致了HDLTex的参数数量达到了CEHCN的13.8倍之多,相比于HDLTex,CEHCN更容易训练。
实验证明,其在分类准确率上取得了比现有最好的局部和全局层次化分类算法都更好的结果,并且好于现有最好的平面分类算法,改变了之前层次化算法分类准确率不如平面分类算法的状况。与当前最好的局部算法HDLTex算法相比,CEHCN具有少的多的参数,更容易训练,并且能有效防止错误传递的问题。
实施例仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。
Claims (6)
1.一种基于类别嵌入的层次化文本分类计算方法,其特征在于,包括:
步骤1:采用图嵌入算法SDNE对文本类别层次树中每个节点进行编码得到类别嵌入向量;
步骤2:采用对前向GRU与后向GRU的最后一个隐藏状态进行拼接的方式来对文本进行编码,得到文本向量;
步骤3:将文本向量表示与类别嵌入向量进行拼接,得到新的文本表示;
步骤4:采用多层感知器和SoftMax层基于文本表示对文本进行分类,输出分类结果。
2.根据权利要求1所述文本分类计算方法,其特征在于,所述步骤1包括:将每个节点编码为一个低维稠密向量,采用深度自编码器,并改造损失函数,通过减小一条边上两个节点的向量表示的差异来保存图的局部结构特征。
3.根据权利要求1所述文本分类计算方法,其特征在于,所述类别嵌入向量保存了类别在层次体系中的结构信息,这些结构信息能反映类别在层次体系中的位置信息以及类别之间的关系。
4.根据权利要求1所述文本分类计算方法,其特征在于,所述步骤2包括:将文本表示与上一层的分类结果的类别嵌入一起用于本层的分类。
5.根据权利要求2所述文本分类计算方法,其特征在于,所述深度自编码器首先通过多次非线性变换将输入数据x编码到一个较低维度的表示空间,得到数据的低维度表示y,然后再次通过多次非线性变换进行解码,试图还原出输入数据,记解码得到的结果是通过尽可能的减少x和的差异来保证低维度的y中保存了足够多的原始数据信息。
6.根据权利要求1~5任一所述文本分类计算方法,其特征在于,所述GRU中使用门机制,包括更新门和重置门,更新门用于控制前一时刻的状态信息被保留到当前状态中的程度,更新门的值越大说明前一时刻的状态信息保留越多;重置门控制前一状态有多少信息被写入到当前的候选状态上,重置门越小,前一状态的信息被写入的越少。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910675336.0A CN110597983B (zh) | 2019-07-25 | 2019-07-25 | 一种基于类别嵌入的层次化文本分类计算方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910675336.0A CN110597983B (zh) | 2019-07-25 | 2019-07-25 | 一种基于类别嵌入的层次化文本分类计算方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110597983A true CN110597983A (zh) | 2019-12-20 |
CN110597983B CN110597983B (zh) | 2023-09-15 |
Family
ID=68852861
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910675336.0A Active CN110597983B (zh) | 2019-07-25 | 2019-07-25 | 一种基于类别嵌入的层次化文本分类计算方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110597983B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112100387A (zh) * | 2020-11-13 | 2020-12-18 | 支付宝(杭州)信息技术有限公司 | 用于文本分类的神经网络系统的训练方法及装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109062897A (zh) * | 2018-07-26 | 2018-12-21 | 苏州大学 | 基于深度神经网络的句子对齐方法 |
CN109376242A (zh) * | 2018-10-18 | 2019-02-22 | 西安工程大学 | 基于循环神经网络变体和卷积神经网络的文本分类算法 |
-
2019
- 2019-07-25 CN CN201910675336.0A patent/CN110597983B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109062897A (zh) * | 2018-07-26 | 2018-12-21 | 苏州大学 | 基于深度神经网络的句子对齐方法 |
CN109376242A (zh) * | 2018-10-18 | 2019-02-22 | 西安工程大学 | 基于循环神经网络变体和卷积神经网络的文本分类算法 |
Non-Patent Citations (4)
Title |
---|
TRANG UYEN TRAN, ET AL.: "Aspect Extraction with Bidirectional GRU and CRF", 《2019 IEEE-RIVF INTERNATIONAL CONFERENCE ON COMPUTING AND COMMUNICATION TECHNOLOGIES (RIVF)》 * |
曲昭伟 等: "基于迁移学习的分层注意力网络情感分析算法", 《计算机应用》 * |
王金华 等: "基于KNN+层次SVM的文本自动分类技术", 《计算机应用与软件》 * |
车蕾 等: "面向文本结构的混合分层注意力网络的话题归类", 《中文信息学报》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112100387A (zh) * | 2020-11-13 | 2020-12-18 | 支付宝(杭州)信息技术有限公司 | 用于文本分类的神经网络系统的训练方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN110597983B (zh) | 2023-09-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109308318B (zh) | 跨领域文本情感分类模型的训练方法、装置、设备及介质 | |
CN112529168B (zh) | 一种基于gcn的属性多层网络表示学习方法 | |
Thoma | Analysis and optimization of convolutional neural network architectures | |
KR102130162B1 (ko) | 인공 신경망들에 대한 관련성 스코어 할당 | |
US11227108B2 (en) | Convolutional neural network architecture with adaptive filters | |
CN113487088A (zh) | 基于动态时空图卷积注意力模型的交通预测方法及装置 | |
Escalera et al. | Subclass problem-dependent design for error-correcting output codes | |
US9710760B2 (en) | Multi-facet classification scheme for cataloging of information artifacts | |
CN109389151B (zh) | 一种基于半监督嵌入表示模型的知识图谱处理方法和装置 | |
CN111383102B (zh) | 金融信贷风险识别方法、模型构建方法和装置 | |
AU2003221986A1 (en) | Processing mixed numeric and/or non-numeric data | |
CN111104975B (zh) | 一种基于广度学习的信用评估方法 | |
CN115661550B (zh) | 基于生成对抗网络的图数据类别不平衡分类方法及装置 | |
Tyagi | Automated multistep classifier sizing and training for deep learner | |
CN114925205B (zh) | 基于对比学习的gcn-gru文本分类方法 | |
CN115456043A (zh) | 分类模型处理、意图识别方法、装置和计算机设备 | |
CN107392229B (zh) | 一种基于最面向社会关系抽取的网络表示方法 | |
Zhang et al. | An intrusion detection method based on stacked sparse autoencoder and improved gaussian mixture model | |
CN113505307B (zh) | 一种基于弱监督增强的社交网络用户地域识别方法 | |
Alcobe | Incremental methods for Bayesian network structure learning | |
Arul | Deep learning methods for data classification | |
CN110597983A (zh) | 一种基于类别嵌入的层次化文本分类计算方法 | |
CN112925907A (zh) | 基于事件图卷积神经网络的微博评论观点对象分类方法 | |
CN113204975A (zh) | 一种基于远程监督的敏感文风识别方法 | |
CN113779387A (zh) | 基于知识图谱的行业推荐方法及系统 |
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 |