1.本技术属于自然语言处理技术领域,尤其涉及一种基于嵌入的新闻多标签分类方法及装置。
背景技术:
2.随着互联网时代的到来,人们每天可以几乎实时知道发生在世界各地的事情,而互联网平台上的新闻在这其中扮演了重要的角色。类似今日头条、搜狗新闻、新浪等平台上,每天都有大量的新闻文本产生,有体育、政治、经济、娱乐、艺术等等主题,而如何对新闻的主题进行准确的分类,在用户推荐系统、舆情分析等领域有着重要的作用。
3.文本分类是自然语言处理领域一个基本而重要的任务。新闻文本的多标签分类首先要对文本进行一些预处理,包括分句、分词、去除停用词等等。得到干净的文本之后需要对文本进行向量化,进行特征的提取。传统文本向量化主要基于词袋模型、tf-idf等统计方法来得到代表文本的一个定长的向量表示,最后使用支持向量机进行文本分类。而随着深度学习的迅猛发展,2013年提出的word2vec模型,成功将文本中每个单词用一个低维稠密的定长向量表示。这些定长的向量表示很好地涵盖了单词的上下文信息,成为将深度神经网络应用到文本领域的重要基础。之后的卷积神经网络(cnn)、循环神经网络(rnn)也成功应用于文本领域,并刷新了当时文本分类的最好结果。但是lstm和cnn这些模型对文本进行序列建模的时候往往只考虑了文本的信息,很少去关注标签的信息,尤其对于多标签分类而言,标签本身具有丰富的信息。因此,引入标签嵌入,在新闻文本分类过程当中增加标签信息,来进一步提升分类的精度,是本领域技术人员研究的一个课题。
技术实现要素:
4.为了克服现有文本分类方法中输入文本的语义信息不足问题,更全面捕获文本特征信息,提升新闻文本多标签分类性能,本技术提出了一种基于嵌入的新闻多标签分类方法及装置。
5.为了实现上述目的,本技术技术方案如下:
6.一种基于嵌入的新闻多标签分类方法,包括:
7.收集新闻文本数据,在预处理后,将文本及其标签用嵌入向量表示,得到文本嵌入向量矩阵和标签嵌入向量矩阵;
8.将文本嵌入向量矩阵输入到卷积神经网络模块,提取文本特征向量;
9.将文本嵌入向量矩阵输入到双向门控循环单元网络模块,得到文本单词的上下文嵌入表示;
10.将标签嵌入向量矩阵和文本单词的上下文嵌入表示输入到标签注意力模块,得到基于标签的文本特征向量;
11.拼接文本特征向量和文本基于标签的特征向量,输入到文本分类器模块,输出文本分类结果。
12.进一步的,所述文本单词的上下文嵌入表示,包括文本单词的正向上下文嵌入表示和反向上下文嵌入表示和反向上下文嵌入表示其中表示正向门控循环单元网络第t个单词的上文嵌入向量,表示反向门控循环单元网络第t个单词的下文嵌入向量,x
t
表示第t个单词的嵌入向量。
13.进一步的,所述基于标签的文本特征向量表示为:
14.f2=tanh(w3m);
[0015][0016]
其中,w3是可训练权重,tanh表示双曲正切激活函数,m为标签对应的特征向量,z1=lh1为正向标签注意力权重,z2=lh2为反向标签注意力权重,h1为文本单词的正向上下文嵌入表示,h2为文本单词的反向上下文嵌入表示。
[0017]
进一步的,所述卷积神经网络模块、双向门控循环单元网络模块、标签注意力模块和文本分类器模块构成神经网络分类模型,所述神经网络分类模型的损失函数为:
[0018][0019]
其中y
ij
表示第i个样本是否拥有第j个标签的预测情况,表示第i个文本是否拥有第j个标签的真实情况,q表示标签数量,b表示样本数量。
[0020]
进一步的,所述预处理,包括:
[0021]
对收集的新闻文本,取前n个单词,如果一个新闻文本不足n个单词,不足之处用0填充。
[0022]
本技术还提出了一种基于嵌入的新闻多标签分类装置,包括处理器以及存储有若干计算机指令的存储器,所述计算机指令被处理器执行时实现所述基于嵌入的新闻多标签分类方法的步骤。
[0023]
本技术的技术构思为:提出了考虑标签语义信息的多标签分类方法,将标签用预训练嵌入向量表示,并从标签嵌入向量表示和文本嵌入向量表示中学习得到文本特征向量,提高新闻多标签分类的准确性。
附图说明
[0024]
图1为本技术基于嵌入的新闻多标签分类方法流程图;
[0025]
图2为本技术神经网络分类模型结构示意图。
具体实施方式
[0026]
为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处描述的具体实施例仅用以解释本技术,并不用于限定本技术。
[0027]
在一个实施例中,如图1所示,提供了一种基于嵌入的新闻多标签分类方法,包括:
[0028]
步骤s1、收集新闻文本数据,在预处理后,将文本及其标签用嵌入向量表示,得到文本嵌入向量矩阵和标签嵌入向量矩阵。
[0029]
本步骤收集b个新闻文本数据,任意一个文本数据包括文本内容及其所属的多个标签类别,在每个新闻文本中取前n个单词,如果一个新闻文本不足n个单词,不足之处用0填充。对每个新闻原始文本进行包括分句、分词、去除停用词、去除标点符号等预处理,得到预处理文本内容。
[0030]
对预处理后的任意一个文本i,将标签和文本的单词用开源的chinese word vector中文预训练单词嵌入向量表示,进而得到文本i的文本嵌入向量其中,d表示单词嵌入维度,x
ik
表示文本i中第k个单词的嵌入向量,遍历整个文本数据集得到每个新闻文本的嵌入表示,则b个文本的嵌入向量矩阵可表示为x=[x1,x2,
…
,xb]。同时也得到标签嵌入矩阵其中q表示标签数量,lj表示第j标签的嵌入向量。
[0031]
步骤s2、将文本嵌入向量矩阵输入到卷积神经网络模块,提取文本特征向量。
[0032]
本实施例构建并训练用于新闻分类的神经网络分类模型,包括四个模块,分别是卷积神经网络模块(cnn模块)、bi-gru模块、标签注意力模块和文本分类器模块。
[0033]
本步骤利用cnn模块来提取文本特征向量,将文本嵌入向量x输入到卷积神经网络cnn,得到特征映射向量
[0034]
c=cnn(x,k,f),
[0035]
其中c=[c1,c2……
,ck],k是cnn的通道数,f表示卷积核个数;
[0036]
利用最大池化方法计算文本特征向量:
[0037]
f1=maxpool(c),
[0038]
其中,
[0039]
步骤s3、将文本嵌入向量矩阵输入到双向门控循环单元网络模块,得到文本单词的上下文嵌入表示。
[0040]
本步骤利用双向门控循环单元网络模块(bi-gru模块)得到文本单词的上下文嵌入表示。将文本单词嵌入矩阵x输入双向门控循环单元网络bi-gru,得到文本单词的正向上下文嵌入表示和反向上下文嵌入表示其中其中表示正向门控循环单元网络第t个单词的上文嵌入向量,表示反向门控循环单元网络第t个单词的下文嵌入向量,x
t
表示第t个单词的嵌入向量,分别表示前一个单词的上下文嵌入向量。
[0041]
步骤s4、将标签嵌入向量矩阵和文本单词的上下文嵌入表示输入到标签注意力模块,得到基于标签的文本特征向量。
[0042]
本步骤利用标签注意力模块计算文本基于标签的特征向量,首先计算正向标签注
意力权重z1=lh1和反向标签注意力权重z2=lh2,其中z1,l是步骤2得到的标签嵌入矩阵,然后计算每一个标签对应的特征向量:
[0043][0044]
其中,表示文本每个标签对应的特征向量。
[0045]
计算基于标签的文本特征向量:
[0046]
f2=tanh(w3m);
[0047]
其中,是可训练权重,tanh表示双曲正切激活函数。
[0048]
步骤s5、拼接文本特征向量和文本基于标签的特征向量,输入到文本分类器模块,输出文本分类结果。
[0049]
本步骤拼接特征向量f=[f1;f2],利用文本分类器模块计算文本分类结果:
[0050]
y=sigmoid(w4f),
[0051]
其中是可训练权重,表示2维分类结果向量,元素y
ij
表示第i个文本是否拥有第j个标签,y
ij
∈{0,1}(j=0,1,
…
,q-1)。
[0052]
在一个具体的实施例中,训练本技术神经网络分类模型时,损失函数如下:
[0053][0054]
其中y
ij
表示第i个样本是否拥有第j个标签的预测情况,表示第i个文本是否拥有第j个标签的真实情况,q表示标签数量,b表示样本数量。
[0055]
在训练时,输入训练样本,直到损失值不再下降或者小于指定的值,结束训练,获得分类模型。
[0056]
在训练好神经网络分类模型后,对于需要分类的新闻文本,执行步骤s1后输入分类模型,模型输出的y就是新闻多标签分类结果。
[0057]
在另一个实施例中,本技术还提供了一种基于嵌入的新闻多标签分类装置,包括处理器以及存储有若干计算机指令的存储器,所述计算机指令被处理器执行时实现所述基于嵌入的新闻多标签分类方法的步骤。
[0058]
关于基于嵌入的新闻多标签分类装置的具体限定可以参见上文中对于基于嵌入的新闻多标签分类方法的限定,在此不再赘述。上述基于嵌入的新闻多标签分类装置可全部或部分通过软件、硬件及其组合来实现。可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上对应的操作。
[0059]
存储器和处理器之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件互相之间可以通过一条或多条通讯总线或信号线实现电性连接。存储器中存储有可在处理器上运行的计算机程序,所述处理器通过运行存储在存储器内的计算机程序,从而实现本发明实施例中的网络拓扑布局方法。
[0060]
其中,所述存储器可以是,但不限于,随机存取存储器(random access memory,
ram),只读存储器(read only memory,rom),可编程只读存储器(programmable read-only memory,prom),可擦除只读存储器(erasable programmable read-only memory,eprom),电可擦除只读存储器(electric erasable programmable read-only memory,eeprom)等。其中,存储器用于存储程序,所述处理器在接收到执行指令后,执行所述程序。
[0061]
所述处理器可能是一种集成电路芯片,具有数据的处理能力。上述的处理器可以是通用处理器,包括中央处理器(central processing unit,cpu)、网络处理器(network processor,np)等。可以实现或者执行本发明实施例中公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
[0062]
以上所述实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术专利的保护范围应以所附权利要求为准。
转载请注明原文地址:https://tc.8miu.com/read-617.html