基于卷积神经网络与多注意力机制的工单文本分类算法制造技术

技术编号:24497955 阅读:27 留言:0更新日期:2020-06-13 03:48
本发明专利技术提供基于卷积神经网络与多注意力机制的工单文本分类算法,包括训练集获取步骤,文本分词步骤,词向量训练步骤,句子拆分步骤,转换词向量步骤,句子级卷积神经网络步骤;句子级注意力机制步骤;句子级全连接步骤,文档处理步骤,类步骤,包括将步骤S9中获取的文档特征向量进行线性变换,然后用softmax函数产生在类集合C上各个分类的概率。将模型设计成两部分,即句子层级和文档层级。先在句子层级提取句子特征,然后在文档层级提取文档特征用于分类。这样的模型结构既能保证文本全部被输入模型,又能避免模型过于庞大而造成的计算上的浪费。

Work order text classification algorithm based on convolutional neural network and multi attention mechanism

【技术实现步骤摘要】
基于卷积神经网络与多注意力机制的工单文本分类算法
本专利技术涉及计算机自然语言处理文本分类领域,特别涉及基于卷积神经网络与多注意力机制的工单文本分类算法。
技术介绍
对于供电公司来说,用户的投诉代表着机遇同时带来巨大挑战,庞大的投诉工单使得分流人员需要阅读全部工单的同时进行准确分配到合适的处理部门,不仅效率低正确率也无法保证。及时并高效地处理好用户的投诉可以高企业的形象、增加口碑、及时调整自己的业务方向改进服务质量、提高同等竞争力有很大帮助。反之如果用户诉求无法及时解决,或者分配到错误的处理人手上不仅企业形象大打折扣,还会造成投诉工单的积压,口碑下滑甚至由于用户恐慌造成大面积投诉,产生负面消息。因此怎么样快速准确的对电力投诉文本进行分类是当今各供电公司面临的巨大挑战。随着近年来人工神经网络方法的兴起,各种基于人工神经网络的算法也被应用于自然语言处理的文本分类领域,并展现出优于其他传统分类方法的性能。其中最常见的实现方式是通过卷积神经网络对文本进行分类。卷积神经网由于能够通过卷积窗口捕捉文本中不同位置的局部特征,因此具有强大的句子建模能力。与其他人工神经网络模型相比,卷积神经网络可以更好地捕获文本的语义。但是由于卷积窗口大小限制,卷积神经网络模型无法捕捉到远距离字词之间的依赖关系,从而造成在提取文本特征时的信息损失。其次,卷积神经网络默认提取的所有文本特征重要性是相等的,这导致与分类相关的重要特征无法发挥与其重要性相当的作用。而无关的噪音特征可能会对文本分类的效果造成干扰。第三,卷积神经网络输入文本长度固定,如果文本长度较长就会有部分文本信息被舍弃。所以,利用此种手段对电力投诉文本进行分类存在很大的缺陷。
技术实现思路
本专利技术的目的是在于针对为了解决电力投诉工单文本人工分类存在的诸多问题,提出基于卷积神经网络与多注意力机制的工单文本分类算法。该方法可分为句子级与文档级两个层级,先提取文本每个句子的特征,再提取文档特征。具体操作步骤如下:S1、训练集获取步骤,包括预先获取用于文本分类的训练集文件,包括电力投诉工单文本和对应标注好的的投诉类别标签;S2、文本分词步骤,包括使用python中文分词组件对通过步骤S1得到的文本进行分词,将每个文本都转换为词序列;S3、词向量训练步骤,包括使用gensim库中的word2vec组件中的skip-gram算法对通过步骤S2得到的词序列进行无监督训练,得到每个词对应的词向量;S4、句子拆分步骤,包括对获取到的词向量进行拆分得到词序列;S5、转换词向量步骤,包括将通过步骤S4得到的词序列中的每个词都转换为通过S3训练得到的对应的词向量;S6、句子级卷积神经网络步骤,包括将通过步骤S5中获取的2维矩阵分别作为句子级卷积神经网络的第一层;S7、句子级注意力机制步骤,包括通过注意力机制公式给在步骤S6中获取的中的卷积神经网络的输出的第一层中的各个词特征向量分配不同的注意力权重;S8、句子级全连接步骤,包括将将S7句子级注意力步骤的输出向量S通过全连接神经网络作线性变换,得到句子特征向量;S9、文档处理步骤,包括将步骤S8中获取的句子特征向量拼接成一个向量作为文档级部分的输入;S10、分类步骤,包括将步骤S9中获取的文档特征向量进行线性变换,然后用softmax函数产生在类集合C上各个分类的概率。可选的,所述使用gensim库中的word2vec组件中的skip-gram算法对通过步骤S2得到的词序列进行无监督训练,得到每个词对应的词向量,包括:使用python中的gensim库中的word2vec组件中的skip-gram算法对通过步骤S2得到的词序列进行无监督训练,得到每个词对应的词向量,词向量的维数为d,skip-gram算法的原理为最大化平均对数概率如公式1所示对单词w1,w2,…,wN的词向量进行训练,其中N表示训练集中包含N个互不重复的词,式中:c为单词wt的上下文范围,表示词序列中词t的前c个词到词t后的c个词,t∈(1,N);式中:e(wt)表示词wt对应的词向量,所有词对应的词向量是随机初始化的,然后通过梯度下降不断迭代更新向量参数,直到目标函数公式2收敛。可选的,所述将通过步骤S5中获取的2维矩阵分别作为句子级卷积神经网络的第一层,包括:使用卷积窗口矩阵W∈Rh*d,h表示卷积窗口的大小,d表示词向量的维数,通过公式3对Xlayer1提取文本特征,结果Xlayer2是m个形状为n*d的2维矩阵,以此类推直到L层,输出的XlayerL作为卷积神经网络的最后输出,式中W∈Rh*d为卷积窗口矩阵,b∈Rd、c∈Rd为偏差,σ为非线性激活函数,V∈Rh*d为门单元矩阵。可选的,所述通过注意力机制公式给在步骤S6中获取的中的卷积神经网络的输出的第一层中的各个词特征向量分配不同的注意力权重,包括:通过公式4、5给在步骤S6中获取的中的卷积神经网络的输出XlayerL=[xL1,xL2,…,xLn]中的各个词特征向量分配不同的注意力权重,其中xLi表示第i个词特征向量,式中a为注意力向量,αi为分配给词特征向量xLi的注意力权重,n是人为设定的句子长度,s为各个词特征向量与注意力权重加权求和后得到的句子特征向量。与现有技术相比,本专利技术的有益效果是:本专利技术方法不仅有效解决了电力投诉工单文本的分类分类问题,还克服了现有技术卷积神经网络中存在的缺点和不足。首先,为了突破卷积窗口大小的限制,捕捉到远距离字词之间的依赖关系,增加了网络的深度,在网络的每一层都进行卷积操作。这样随着网络层数的增加每一层网络输出的特征都会比上一层捕获更多的字词之间远距离依赖关系。其次,为了让卷积神经网络提取的与分类相关的重要特征在分类时能占有更高的权重,无关的噪音特征能被选择性忽视,引入了多注意力机制从而能够给与分类相关的特征分配更多注意力,即赋予更高的权重。第三,卷积神经网络模型由于输入端的神经元个数是固定的,如果为了保证长文本能全部输入模型,就会使得输入端的神经元个数太多,模型的时间复杂度也会大大增加。为了解决这个问题,将模型设计成两部分,即句子层级和文档层级。先在句子层级提取句子特征,然后在文档层级提取文档特征用于分类。这样的模型结构既能保证文本全部被输入模型,又能避免模型过于庞大而造成的计算上的浪费。附图说明图1为本专利技术方法整体流程图。具体实施方式本专利技术的优先实施例结合附图说明如下:基于卷积神经网络与多注意力机制的工单文本分类算法,如图1所示,包括以下步骤:S1、训练集获取步骤,包括预先获取用于文本分类的训练集文件,包括电力投诉工单文本和对应标注好的的投诉类别标签;S2、文本分词步骤,包括使用python中文分词组件对通过步骤S1得到的文本进行分词,将每个文本都转换为词序列;S3、词向量训练步骤,包括使用gensim库中本文档来自技高网
...

【技术保护点】
1.基于卷积神经网络与多注意力机制的工单文本分类算法,其特征在于,所述工单文本分类算法包括:/nS1、训练集获取步骤,包括预先获取用于文本分类的训练集文件,包括电力投诉工单文本和对应标注好的的投诉类别标签;/nS2、文本分词步骤,包括使用python中文分词组件对通过步骤S1得到的文本进行分词,将每个文本都转换为词序列;/nS3、词向量训练步骤,包括使用gensim库中的word2vec组件中的skip-gram算法对通过步骤S2得到的词序列进行无监督训练,得到每个词对应的词向量;/nS4、句子拆分步骤,包括对获取到的词向量进行拆分得到词序列;/nS5、转换词向量步骤,包括将通过步骤S4得到的词序列中的每个词都转换为通过S3训练得到的对应的词向量;/nS6、句子级卷积神经网络步骤,包括将通过步骤S5中获取的2维矩阵分别作为句子级卷积神经网络的第一层;/nS7、句子级注意力机制步骤,包括通过注意力机制公式给在步骤S6中获取的中的卷积神经网络的输出的第一层中的各个词特征向量分配不同的注意力权重;/nS8、句子级全连接步骤,包括将将S7句子级注意力步骤的输出向量S通过全连接神经网络作线性变换,得到句子特征向量;/nS9、文档处理步骤,包括将步骤S8中获取的句子特征向量拼接成一个向量作为文档级部分的输入;/nS10、分类步骤,包括将步骤S9中获取的文档特征向量进行线性变换,然后用softmax函数产生在类集合C上各个分类的概率。/n...

【技术特征摘要】
1.基于卷积神经网络与多注意力机制的工单文本分类算法,其特征在于,所述工单文本分类算法包括:
S1、训练集获取步骤,包括预先获取用于文本分类的训练集文件,包括电力投诉工单文本和对应标注好的的投诉类别标签;
S2、文本分词步骤,包括使用python中文分词组件对通过步骤S1得到的文本进行分词,将每个文本都转换为词序列;
S3、词向量训练步骤,包括使用gensim库中的word2vec组件中的skip-gram算法对通过步骤S2得到的词序列进行无监督训练,得到每个词对应的词向量;
S4、句子拆分步骤,包括对获取到的词向量进行拆分得到词序列;
S5、转换词向量步骤,包括将通过步骤S4得到的词序列中的每个词都转换为通过S3训练得到的对应的词向量;
S6、句子级卷积神经网络步骤,包括将通过步骤S5中获取的2维矩阵分别作为句子级卷积神经网络的第一层;
S7、句子级注意力机制步骤,包括通过注意力机制公式给在步骤S6中获取的中的卷积神经网络的输出的第一层中的各个词特征向量分配不同的注意力权重;
S8、句子级全连接步骤,包括将将S7句子级注意力步骤的输出向量S通过全连接神经网络作线性变换,得到句子特征向量;
S9、文档处理步骤,包括将步骤S8中获取的句子特征向量拼接成一个向量作为文档级部分的输入;
S10、分类步骤,包括将步骤S9中获取的文档特征向量进行线性变换,然后用softmax函数产生在类集合C上各个分类的概率。


2.根据权利要求1所述的基于卷积神经网络与多注意力机制的工单文本分类算法,其特征在于,所述使用gensim库中的word2vec组件中的skip-gram算法对通过步骤S2得到的词序列进行无监督训练,得到每个词对应的词向量,包括:
使用python中的gensim库中的word2vec组件中的skip-gram算法对通过步骤S2得到的词序列进行无监...

【专利技术属性】
技术研发人员:王晓峰周艳范华尉耀稳霍凯龙陈杰翁利国施凌震徐舒妍姜川陶燕增
申请(专利权)人:国网浙江杭州市萧山区供电有限公司浙江中新电力工程建设有限公司自动化分公司国网浙江省电力有限公司杭州供电公司
类型:发明
国别省市:浙江;33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1