技术领域
[0001] 本发明属于文本处理技术领域,具体涉及一种基于注意力机制的文本分类方法。
相关背景技术
[0002] 在所有的互联网信息中文本作为一种方便交流、传输容易的载体,各种各样的帖子、评论和邮件不断传输于互联网中。目前获取用于训练的数据样本已经不再是问题,越来越多的研究者都开始致力于从挖掘文本信息中获取巨大价值。在海量的文本信息中准确的对原始文档进行标注和分类任务凸显了更多价值,不过只是依赖人类手动对自然文本进行分类在数据量剧增的时候效果经常不理想,而且这种做法也需要太多精力和时间,所以这种做法逐渐被舍弃。同时越来越多的互联网平台开始致力于将准确的文本信息推送于需要的用户,方便用户迅速高效的获取所关注的信息。
[0003] 在这些自然语言处理领域中文本分类受到了越来越多的关注,其主要目标是通过分析文本核心概念内容然后将它分给所属的类别。文本分类技术在很多场景都得到了广泛的使用,非常高效的管理和组织了文本信息。近些年技术的不断扩张在创造了丰富文本信息的同时,一些人为的或非人为的垃圾信息也开始充斥着各个互联网环境。人们在尝试获取所需信息时面对如此复杂的信息,文本分类就可以有助于快速过滤无关信息,大大提高用户获取消息的效率。
[0004] 文本分类从广义的角度来说就是寻找各个文本之间等价关系的操作,通过文本蕴含的信息再根据某种准则将其聚合在一起。以搜索引擎为例,通过对输入文本数据查找相关文本就是文本分类技术的一个具体应用。具体来说文本分类的主要任务就是通过某种方式自动的将未作标记的文本划分至已经预先定义好的类中。通过学习被标记好的文本集获得文本与各个特征之间的关系模型,这样对于未标记的文本就可以使用这个关系模型获取它所属的类别,也就是划分到具体的类中。这种分类操作与数组中的映射非常相似,不同点在于一个文本可能映射到一个或多个类上去,分别代表着文本的单标签和多标签分类。
[0005] 文本分类的数学定义如下:令文本数据集合表示为D={d1,d2,d3...dm},di表示输入文本集合中的第i(i=1,2,…,m)篇文本数据,提前收集好的所有文本类别总体为C={c1,c2,c3...cn},cj(j=1,2,…,n)表示类集合中的第j种类别。文本分类最终的目的就是对于任意文本求出在所有类别中的正负性。如图1所示,文本分类的处理过程主要包括:对训练文本进行文本预处理,再获取其文本表示,将训练文本的文本表示输入到分类器中,对分类器进行训练,当性能满足需求时,得到训练好的分类器(文本分类器);再对测试文本进行文本预处理后,获取其文本表示将测试文本的文本表示输入至训练好的分类器中,以获取测试文本的文本分类结果。基于该分类结构可以了解该训练好的分类器的分类性能。
[0006] 在文本分类处理时,文本表示是获得良好分类性能的基础。传统的文本表示忽略了文本中词与词之间的位置关系,使得一些原本意义相近的词在向量空间相距甚远。分布式文本统计过将文本中单词从一个高维空间向低维映射,再降低单词表示维度的同时降低意义相近词的空间距离,大大提升了后续分类器训练性能。
[0007] 2003年NNLM语言模型首次将神经网络运用于词向量训练,然而这种模型存在模型参数过多并且训练复杂的缺点,针对这个问题Mikolov提出了word2vec模型。原始NNLM模型可以理解为用一个简单模型先训练出词向量,之后训练的N‑gram神经网络模型就在NNLM模型的词向量表达上进行,对NNLM模型训练的计算瓶颈就在后者。为了减少模型的计算量加速模型的训练过程,word2vec模型的做法是移除了计算量大性的隐藏层,对于输入文本的词嵌入表示将其与Softmax层直接连接起来。这种处理方式忽略了文本种每个单词和其他词汇之间的序列位置信息,在模型的词嵌入层将所有词向量表示汇总到一块了。最后是将未来词汇也纳入学习范围。
[0008] Word2vec模型虽然考虑了文本中每个单词的上下文信息特征,但却忽略了对全局特征信息的提取。Glove模型则从这个角度出发,即在对语料库进行充分全局统计的基础上,同时对于局部特征信息也使用滑动窗口来收集。Glove首先根据语料库构建了共现矩阵(Co‑occurrence Matrix)X,矩阵中的元素Xij代表单词wi和附近单词词wj在一个指定大小的上下文窗口内一起出现的次数。一种自然而然的想法是以1作为这个最低次数单位,但Glove使用衰减函数使得上下文窗口中相距越远的两个单词所占总计数的权重越小。
[0009] Glove模型采用的训练方法和监督学习训练一样,都是基于梯度下降减少损失函数。Glove模型最终训练得到的两个词向量是对称的,唯一区别是初始化的值不同。大量实验表明Glove模型设置的词向量维度在300,上下文窗口在6到10之间时模型训练的词向量效果最好,准确度更高。相比于Word2vec模型,Glove模型因为其结构特性使得它可以充分利用机器的并行特性来加速模型训练,对于较大的训练数据会快上不少。但是Glove模型因为使用了全局信息所以所使用内存较前者更多。
[0010] 用于文本的分类器大部分都是基于神经网络实现,其中神经网络比较常用的是卷积神经网络(CNN)和循环神经网络(RNN)。
[0011] 其中,传统的卷积神经网络在处理大尺度的图像时会面临三个主要问题:(1)对图像的展开操作会丢失图像的空间信息;(2)参与训练的参数太多,训练非常困难;(3)过拟合风险大大提高,这是因为需要训练的参数过多。而这些问题可以通过使用卷积神经网络的来获得一定程度的解决,它以其擅长捕获局部特征的特点不仅在图像处理领域发挥了总大作用,同时也开始被应用在其他的深度学习领域。卷积神经网络因为不需要手动选取特征同时共享卷积核,所以在分类任务上表现出色。但同时因为需要设置很多超参数,所以对计算能力提出了较高的要求。卷积神经网络主要通过将输入层、卷积层,激活层、池化(Pooling)层和全连接层(全连接层和常规神经网络中的一样)顺序相连,就可以组合成一个功能强大的卷积神经网络。
[0012] 虽然卷积神经网络在一定程度上已经能够应付一些自然语言处理问题,然而它并不能很好的处理文本中的序列问题。全连接神经网络和卷积神经网络的一个很重要的问题是它们前一个输入和后一个输入是独立的,而在自然语言处理领域里文本前面的输入通常和后文有很大的关联。在尝试理解文本中某句话是,只是让模型理解句子中孤立的每个词是不够的,还需要理解词与词之间的序列信息。循环神经网络(RNN)可以说是专门为处理文本的序列信息而生,它是一种传统神经网络的变体。
[0013] 在传统Seq2seq模型中使用RNN生成中间语义向量c,这会导致的最大问题是这个定长语义向量不一定蕴含足够的文本信息,并以此支撑解码器的解码工作。除此之外RNN天然存在的远程梯度消失的问题,这直接导致保持较长试期的有效信息变得困难特别是在长句子上来。对于上述提到的种种问题,注意力机制开始被提出来用于解决这些瓶颈。
[0014] 注意力机制想法来源与人类在观察事物时的做法,人类观察事物时并不是对图像的每个部分都仔细扫描一遍,而是根据需求特别注重图像的关键部分。同理注意力的机制也非常类似与人类翻译文章的做法,即将注意力集中在待翻译部分的上下文信息中。
具体实施方式
[0076] 为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
[0077] 本发明实施例中,针对现有文本分类的不足,提出了一种基于混合合成注意力机制的文本分类方法,该方法使用合成的自注意力矩阵而不是通过Token(分词或单词)之间的点积操作来获得注意力权重矩阵,这种合成注意力权重分为固定权重和随机初始化两种。固定权重注意力计算过程图2所示。
[0078] 固定权重注意力计算的Transformer中的注意力权重计算是在文本的样本层面计算的,也就是说注意力权重的计算矩阵是由Token和Token之间的交互产生的。在文本中这种特定交互又往往在不同的Token与Token之间变动,所以缺少了全局的语境信息。由于这种合成注意力矩阵只依赖简单的前馈层传播,所以省去了常规的Token之间耗时且占用内存的点积操作。合成注意力的关键在于移除了Transformer的Q(查询),K(键),V(值)概念,取而代之的是合成了一个对齐矩阵代表输入文本的词与词之间的注意力强度。固定权重注意力权重的注意力矩阵的计算方式是对于给定的输入X,使用两个权重矩阵分别为W1,W2计算得到,计算公式为:
[0079] B=relu(XW1+b1)W2+b2
[0080] 其中,B表示关系矩阵,relu()表示RLU激活函数,W1和W2表示两个权重矩阵,b1和b2表示两个偏置项。
[0081] 得到了Token之间的关系矩阵B之后,就可以计算得到Token之间的注意力关系Y,计算公式如下;
[0082] Y=softmax(B)G(X)
[0083] 其中,softmax()表示softmax函数,G(X)表示对X做线性变换得到G(X)。
[0084] 另一种合成注意力计算过程如图3所示。随机初始化注意力矩阵的方式是完全随机初始化一个对齐矩阵R,矩阵R也可以不随着模型的训练而做调整,和固定权重注意力权重计算的方式类似,计算公式如下。
[0085] Y=softmax(R)G(X)
[0086] 随机初始化一个这样的对齐矩阵的好处是不再依赖任何单个Token和Token之间的交互,而是直接去学习一个基于任务特定并且跨实例有效的对齐。本发明实施例中,针对这两种合成注意力矩阵的方式,使用自适应融合策略融合文本表示最后进行文本分类。
[0087] 为了减少传统注意力机制中计算Token和Token之间的注意力联系的点积操作运算带来的消耗,本发明实施例设置的文本分类模型在使用位置编码的词嵌入表示后分别在两种注意力机制的基础上提取了全局和局部语义信息,分别是基于固定权重合成注意力机制和基于随机初始化合成注意力机制。再分别将两者的文本表示使用自适应的融合策略进一步提取关键有效信息,从而实现模型在文本分类能力上的提高。
[0088] 如图4所示,本发明实例中,采用的文本分类模型包括:词嵌入模块、特征提取网络(Bi‑GRU)、自注意力机制层和文本分类器,其中文本分类器可采用基于CNN的分类器,具体结构可采用本领域的任一惯用模型,本发明实施例不做限定。例如该文本分类器依次包括:卷积神经网络、最大池化和softmax函数层,用于输出每个文本类型的预测概率。
[0089] 本发明实施例中,采用的词嵌入实现是使用Google的开源词向量工具包Word2vec。词嵌入模块首先将文本中的词语通过某种映射使得其对应训练集中的词典ID,也就是将文本中的自然语言序列转换为计算机能理解的ID序列。词向量的初始化使用的是Skip‑gram预训练技术,在训练时也需要指定词向量维度。通常这个维度选择在64,128和300之间,考虑到词向量所选维度越大需要的成本就越高,同时词向量维度太少又可能忽略一些重要信息,本实施例中选择的词向量维度为300。选择的词向量维度也表示着对每个词语都考虑了300种特征,这个词向量在模型中也可以不随着模型的训练而做出相应的调整,本实例中,选择对词向量随着模型训练动态调整来提高最后模型的分类能力。每个词语根据其ID就可以在训练后的词向量矩阵中其向量表示,对一段文本中的每个词语都做相同处理就可以得到整个文本的二维矩阵形式,也就是文本的向量表示(Word Embedding)。
[0090] 通过词嵌入模块得到输入文本的词向量后,在本模块建立这些单词之间的联系。对于文本中序列信息的获取一般使用循环神经网络,而传统的循环神经网络存在较长期的记忆信息对当前计算影响较小。同时这种神经网络训练复杂,一些循环神经网络会面临的问题会更容易出现。改进的一种做法是使用长短期记忆网络,它通过门控遗忘不重要的信息同时记忆较长时期的重要信息,能够处理长序列存在的依赖信息。不过长短期记忆网络因为传播方向是单向的,对于上下文信息的获取比较乏力,而在文本分类任务中最终分类结果和文本上下文信息联系紧密,所以本发明实施例采用双向GRU网络(Bi‑GRU)来完成单词间联系的建立。Bi‑GRU的具体做法是用循环神经网络分别按正序和逆序的方式根据输入文本进行训练,再将两者分别训练出的结果拼接起来作为Bi‑GRU的最终结果。因为对输入文本的进行了两个方向训练,使得序列中每个单词前后两个方向的语义信息都被有效抽取出来,因此对于捕获输入文本的上下文语义信息Bi‑GRU作用通常不错,通过这种方式提炼的文本特征对后续文本分类有很大帮助。
[0091] 在自注意力机制中,Q,K,V都是由文本转换而来,通过,Q,K,V之间的点积操作获取文本中任务距离远的Token之间的注意力联系,不过这个过程可以由合成注意力对齐矩阵的方式实现。对于当前的输入X∈Rn×d,计算其对应的合成注意力矩阵,计算公式如下所示。
[0092] B=relu(XW1+b1)W2+b2
[0093] 其中,待训练的权重矩阵分别为W1∈Rd×d,W2∈Rd×n,b1∈Rn×d,b2∈Rn×n,relu表示d×d常用的Relu非线性激活函数,R 表示实数域,上标n表示词数量,d表示每个词的向量表示的维度。
[0094] 经过计算可以得到合成注意力矩阵B∈Rn×n其展开形式如下,其中bi表示第i个单词和其他所有单词的注意力联系。
[0095] B=[b1,b2,...,bn]
[0096] 类比于Transforme中由输入X转换得到的V,使用待训练的权重矩阵WG∈Rd×d对X做n×d线性变换得到G(X)∈R ,计算公式如下。
[0097] G(X)=X(WG)
[0098] 通过B,G(X)即可计算固定权重合成的注意力结果E,计算公式如下。
[0099] E=softmax(B)G(X)
[0100] 其中E∈Rn×d,其中ei表示第i个单词在文本中的表示,E展开形式如下。
[0101] E=[e1,e2,...,en]
[0102] 最后为了在当前模块提取更多的有用信息,采用多头注意力机制也就是多个上述流程同步进行计。为了减少计算量只使用2个平行的子固定权重合成注意力机制,得到F∈Rn×(4d),其中Ei表示第i个子固定权重合成注意力计算结果,F展开形式如下。
[0103] F=[E1,E2]
[0104] 使用待训练权重矩阵I∈R(2d)×d与F做运算得到本模块最终输出U∈Rn×d,计算公式如下所示。
[0105] U=FI
[0106] 本模块也使用Add&Norm结构,其中,Add是一种关注网络当前差异的残差结构,方便网络训练,计算公式如下所示。
[0107] U=X+U
[0108] Norm结构是Layer Normalization,它将每层神经元的输入都转成一样的均值方差,方便网络快速收敛,总的Add&Norm计算方式如下。
[0109] U=LayerNorm(X+U)
[0110] 本模块同样采用Feed Forward层(前馈层),其计算公式下所示。
[0111] U=relu(UW1+b1)W2+b2
[0112] 其中,W1,W2∈Rd×d,b1,b2∈Rn×d是待训练参数,这个得到的U∈Rn×d就是本模块的最终输出,也就是经过固定权重合成注意力计算后的文本表示。
[0113] 注意力对齐矩阵也可以是一个完全随机化的对齐,并不需要从输入中学习来,这n样可以更直接学到跨Token有效的基于当前任务的对齐关系。首先还是需要对输入的X∈R×d n×d d×d
做变换得到D(X)∈R ,本实施例中,采用一个待训练的权重矩阵WD∈R 对X做线性变换n×d
得到D∈R ,计算公式如下。
[0114] D(X)=X(WD)
[0115] 对于当前的输入X∈Rn×d,随机初始化一个R∈Rn×n的对齐矩阵,直接可以计算出当n×d前注意力头的输出J∈R ,计算公式如下所示。
[0116] J=sofmax(R)D(X)
[0117] 其中J∈Rn×d,其中ji表示第i个单词在文本中的表示,J展开形式如下。
[0118] J=[j1,j2,...,jn]
[0119] 这个模块基于同样的考虑也使用了多头注意力机制,所以也采用了2个平行的子n×(2d)随机初始化合成注意力机制,得到K∈R ,其中Ji表示第i个子随机初始化权重合成注意力计算结果,K展开形式如下。
[0120] K=[J1,J2]
[0121] 使用待训练权重矩阵M∈R(2d)×d与K做运算得到本模块最终输出V,计算公式如下所示。
[0122] V=KM
[0123] V同样经过Add&Norm结构和Feed Forward层,得到的V∈Rn×d就是本模块的最终输出,计算公式如下。
[0124] V=relu(LayerNorm(X+V)W1+b1)W2+b2
[0125] V就是经过随机初始化权重合成注意力计算后的文本表示,LayerNorm()表示过层次归一化操作。通过固定权重注意力和随机初始化注意力计算已经得到了两种不同的文本表示U和V,U重点从输入中学到了Token之间的注意力联系,V则致力于对与任务中跨Token的学习。为了对者两种优势取长补短,本发明实施设置了一种自适应的模型融合策略,为了构建表达能力更强的文本表示从这两种不同合成注意力机制得到的文本表示中分别抽取有价值的信息。计算公式如下。
[0126] z=σ(W1tanh(W2U+W3V))
[0127] Z=z⊙U+(1‑z)⊙V
[0128] 其中,σ是一种非线性激活函数,W1,W2,W3是需要训练的权重矩阵,U表示固定权重合成注意力的文本表示对文本表示Z的贡献,V表示随机权重合成注意力的文本表示对文本表示Z的贡献。z作为一个控制门,当基于固定权重获取的文本表示不充分时,随机初始化权重获取的文本表示可以对它进行补充。而当基于固定权重获取的文本表示充分时,则将其作为主要的文本表示。
[0129] 得到网络最后的输出Z经过卷积神经网络和最大池化后经过softmax运算得到预测的文本类别标签yi。
[0130] yi=softmax(WC1Z+bC1)
[0131] 其中,WC1是需要训练的权重矩阵,bC1是其偏置项。因为使用softmax函数进行文本的多分类,所以使用多类别交叉熵损失函数训练模型,计算公式如下。
[0132] Loss=‑∑i=1ilog(yi)
[0133] 其中,li是文本对应的真实类别,yi时模型softmax输出。模型将通过不断学习,调整模型的各项参数使得损失函数不断减少,直至模型收敛从而取得很好的结果。
[0134] 另一方面,本发明还提供了一种基于协作注意力机制的文本分类方法。
[0135] 随着Transformer模型结构的不断发展,在享受Multi‑Head Attention带来的好处的同时,研究人员也逐渐发现Multi‑Head Attention增加了模型计算成本,最终限制了模型的能力。一些研究人员从量化不同注意力头的重要程度上进行了思考,更激进的研究学者则在考虑是否可以直接Multi‑Head Attention的基础上提出了迭代式注意力头剪枝的方法。通过这些研究学者的研究结果可以发现,不同的注意力头是存在一定程度上的信息冗余,不过单纯的直接分析不同注意力头的权重矩阵是远远不够的。本实施例从提取Multi‑‑Head Attention出发,使用了协作注意力的计算方式。传统的Multi‑Head Attention每个注意力头的列维度为dk,定义Dk=Nh*dk。为了提取不同注意力头的通用信息使用混合向量 表示实数域, 表示使用协作注意力整合后输出的维度,使用协作注意力后整体注意力计算如下:
[0136]
[0137]
[0138] 其中,H(i)是每个注意力头捕捉到的信息,Attention()表示注意力函数,X、Y表示注意力函数的两个输入,本发明实施例中,Attention()用于计算输入的自注意力,即X=Y, 是被所有注意力头共享的权重矩阵,即 分别表示对应Q,K,V的权重矩阵,Din表示输入维度,dig()表示向量对角化矩阵操作, 输入Y的另一个权重矩O
阵CollabHead()表示注意力头拼接函数,Nh表示注意力头总数,W 表示拼接注意力头用到的权重矩阵,其中, 是被所有注意力头共享的权重矩阵,它们捕捉了所有注
意力头的通用信息,而 则使得整合注意力时各个注意力头之
间保持相互独立。这种协作注意力的方式的一个优势在于 可以灵活设置,可以根据任务场景需要很方便的进行改动。如果 则表示传统的Multi‑‑Head Attention
结构。协作注意力机制的另一个好处在于 是被所有注意力头所共享的,每次计算只需要计算一次,从而大大减少了模型的计算量。
[0139] 为了一定程度上解决多头注意力之间的冗余信息,使用了协作注意力机制优化了整合多头注意力的方法,将被所有注意力头所共享的信息提取了出来,从而让每个注意力头专注于捕获独有的信息。本发明实施例提供的基于协作注意力机制的文本分类方法中,所采用的分类模型在词嵌入表示后使用双向长短期记忆网络得到初级文本表示,之后使用两个串联的协作注意力模块提取全局和局部语义信息。通过Highway网络缓解模型网络深的梯度回流问题,提高模型训练速度,如图6所示。即本发明实施例中,基于协作注意力机制的文本分类模型包括词嵌入和位置编码模块,混合矩阵、前馈神经网络、Highway网络和文本分类器,其中文本分类器,其中文本分类器可以与基于混合合成注意力机制的文本分类方式中的相同。
[0140] 本实施例中,具体采用的词嵌入实现是使用Google的开源词向量工具包Word2vec。词嵌入模块首先将文本中的词语通过某种映射使得其对应训练集中的词典ID,也就是将文本中的自然语言序列转换为计算机能理解的ID序列。词向量的初始化使用的是Skip‑gram预训练技术,在训练时也需要指定词向量维度。通常这个维度选择在64,128和300之间,考虑到词向量所选维度越大需要的成本就越高,同时词向量维度太少又可能忽略一些重要信息,本实施例选择的词向量维度为300。选择的词向量维度也表示着对每个词语都考虑了300种特征,这个词向量在模型中可以也可以不随着模型的训练而做出相应的调整,本实施例选择对词向量随着模型训练动态调整来提高最后模型的分类能力。每个词语根据其ID就可以在训练后的词向量矩阵中其向量表示,对一段文本中的每个词语都做相同处理就可以得到整个文本的二维矩阵形式,也就是文本的向量表示。
[0141] 因为本模型并没有使用Bi‑LSTM或Bi‑GRU结构获取词向量信息,所以对于关键的位置信息参考Transformer添加了位置编码模块(位置Embedding),使用位置Embedding方便模型学习文本序列中绝对或相对的位置信息。
[0142] 基于协作注意力模块的文本表示由两个子模块组成,分别是协作注意力子模块和前馈神经网络子模块。两个子模块构成了一个局部整体,堆叠两次作为整个基于协作注意力模块的文本表示模块。
[0143] 作为一种可能的实现方式,本发明实例中,协作注意力的计算方式具体为:
[0144] 对于输入的文本特征表示矩阵 使用一个混合均值 表示各个注意力头之间的协作结算方式,M表示形式如下所示:
[0145]
[0146] 其中, 是由1和0两种元素构成的向量,向量中为1的元素位置就是对应注意力头的映射矩阵在拼接后的整体矩阵中的位置。将mi对角化为对角矩阵Mi:Mi=diag(mi)。基于协作注意力的所有注意力头共享 可以分别计算每个注意力头(i) (i) (i)
的Q ,K ,V ,其具体就算为:
[0147] 有了每个注意力头的Q(i),K(i),V(i),就可以计算其注意力分数Head(i):
[0148]
[0149] 将注意力头挨个拼接之后就得到了多头注意力的输出结果MultiHead(H,H),具体计算公式如下所示:
[0150]
[0151] 本发明实施例中,前馈神经网络子模块,使用一个两层的全连接层做前馈传播,计算公式如下所示。
[0152] T=relu(MultiHead(H,H)W1+b1)W2+b2
[0153] 其中W1,W2∈Rd×d,b1,b2∈Rn×d是待训练参数,这个得到的U∈Rn×d就是一个基于协作注意力模块的文本表示子模块的输出,U作为下一个基于协作注意力模块的文本表示模块的输入。
[0154] 考虑到模型网络层次较深,需要对训练中梯度回流难的问题做一定的优化。出于从LSTM中门控网络受到的启发,也使用门控机制来允许部分信息直接传到输出,剩下的则需要做一些非线性转换,这种控制信息流的方式可以帮助优化特征并提取有价值的信息,计算公式如下。
[0155] τ=σ1(TWτ+bτ)
[0156] Z=τ⊙σ2(TWh+bh)+(1‑τ)⊙T
[0157] 其中,σ1,σ2都为非线性激活函数,Wτ,Wh∈Rd×d为待训练的权重矩阵,bτ,bh∈Rn×d为两个偏置项,τ是整个Highway网络中的门控,决定了多少信息可以不经过非线性变换直接n×d流向输出,Z∈R 是Highway网络的输出。Highway网络在帮助深度神经网络加速收敛问题,特别是在传统网络在反向传播时收敛困难上显示除了很大的作用。
[0158] 得到网络最后的输出Z经过卷积神经网络和最大池化后经过softmax运算得到预测的文本类别标签yi。
[0159] yi=softmax(WC1Z+bC1)
[0160] 其中,WC1是需要训练的权重矩阵,bC1是其偏置项。因为使用softmax函数进行文本的多分类,所以使用多类别交叉熵损失函数训练模型,计算公式如下。
[0161] Loss=‑∑i=1ilog(yi)
[0162] 其中,li是文本对应的真实类别,yi时模型softmax输出。模型将通过不断学习,调整模型的各项参数使得损失函数不断减少,直至模型收敛从而取得很好的结果。
[0163] 在基于协作注意力机制的文本分类方法中,本实施例通过位置编码模块学习文本序列中绝对或相对的位置信息,通过写作注意力处理获取用于输入文本分类器的文本表示,以有效提升文本分类性能。
[0164] 最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
[0165] 以上所述的仅是本发明的一些实施方式。对于本领域的普通技术人员来说,在不脱离本发明创造构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。