本发明涉及自然语言处理技术领域,特别是涉及一种基于注意力编码和图卷积网络的特定目标情感分类方法。
背景技术:
情感分析是自然语言处理(naturallanguageprocessing,nlp)中的重要任务,其目的在于对带有情感色彩的主观性文本进行分析。其中,特定目标的情感分析属于细粒度情感分析,与传统的情感分析不同,其目的主要在于识别句子中特定目标的情感极性。
目前,有众多神经网络与注意力机制相结合的方法用以解决特定目标的情感分析问题,这些方法虽然能够克服浅层学习模型的缺陷,区分了不同词对于特定目标情感分析任务的重要性,但是依旧存在如下问题:一方面,现有方法不能充分捕捉上下文的语义信息,没有关注长距离信息依赖和信息并行计算的问题;另一方面,现有方法均没有考虑上下文和特定目标与句法信息之间的联系,且由于缺乏句法的约束技术,可能会将句法上不相关的上下文单词识别为判断目标情感分类的线索,降低了分类的准确性。
技术实现要素:
为克服相关技术中存在的问题,本发明实施例提供了一种基于注意力编码和图卷积网络的特定目标情感分类方法及装置。
根据本发明实施例的第一方面,提供一种基于注意力编码和图卷积网络的特定目标情感分类方法,包括如下步骤:
获取上下文对应的词向量和特定目标对应的词向量;
将所述上下文对应的词向量和特定目标对应的词向量输入预设双向循环神经网络模型,得到上下文对应的隐藏状态向量和特定目标对应的隐藏状态向量;
基于结合逐点卷积的预设图卷积神经网络,提取所述上下文对应的句法依存树中的句法向量;
对所述上下文对应的隐藏状态向量、所述特定目标对应的隐藏状态向量和所述句法向量进行多头自注意力编码,分别得到上下文语义信息编码、特定目标语义信息编码和句法信息编码;
对所述上下文语义信息编码和句法信息编码、所述特定目标语义信息编码和句法信息编码分别进行多头交互注意力编码,得到上下文-句法信息编码和特定目标-句法信息编码;
将所述上下文语义信息编码、所述上下文-句法信息编码和所述特定目标-句法信息编码取平均池化后再进行拼接,得到所述特定目标对应的特征表示;
将所述特征表示输入预设归一化指数函数中,得到特定目标的情感分类结果。
可选的,将所述上下文对应的词向量
其中,n表示上下文对应的词向量的维度,m表示特定目标对应的词向量的维度,
可选的,根据特定目标在上下文中的位置和位置权重分配函数,得到上下文中每个单词对应的位置权重;
获取上下文对应的句法依存树;
根据所述句法依存树,得到所述上下文中的单词对应的邻接矩阵,其中,所述邻接矩阵反应所述上下文中的单词的邻接关系;
将所述邻接矩阵和所述每个单词对应的位置权重输入预设图卷积神经网络,得到输出层的输出结果;
对所述输出结果进行逐点卷积,得到所述句法向量。
可选的,根据特定目标在上下文中的位置和位置权重分配函数,得到上下文中每个单词对应的位置权重;其中,所述位置权重分配函数f(·)如下:
τ 1表示特定目标的起始位置,m表示特定目标中单词的个数,n表示上下文中单词的个数,qi表示上下文中第i个单词的位置权重。
可选的,将所述邻接矩阵、每个单词的位置权重和上一层的输出结果输入至预设图卷积运算公式中,得到当前层的输出结果,重复执行输入操作直至得到输出层的输出结果;其中,所述预设图卷积运算公式如下:
aij表示邻接矩阵的第i行第j列的值,a∈rn×n表示邻接矩阵a为n行n列的矩阵,aij表示预设图卷积神经网络的上一层输出结果,ql表示上下文中第j个单词的位置权重,
可选的,将预设图卷积网络的输出层的输出结果输入预设逐点卷积公式,得到所述句法向量;其中,所述预设逐点卷积公式如下:
pwc(h)=σ(h*wpwc bpwc)
hl表示预设图卷积网络的输出层的输出结果,
可选的,将所述上下文对应的隐藏状态向量hc、所述特定目标对应的隐藏状态向量ht和所述句法向量
hcs=mha(hc,hc)
hts=mha(ht,ht)
oh=attentionh(k,q)
attention(k,q)=softmax(fs(k,q))k
fs(ki,qj)=tanh([ki;qj]·watt)
fs(ki,qj)表示多头注意力的第一输入向量k={k1,k2,...,kn}与多头注意力的第二输入向量q={q1,q2,...,qm}的语义相关性,当进行多头自注意力编码时k=q,当进行多头交互注意力编码时k≠q,“;”是指向量的拼接,
可选的,将所述上下文语义信息编码hcs和句法信息编码hgs、所述特定目标语义信息编码hts和句法信息编码hgs分别输入预设多头注意力编码公式,得到上下文-句法信息编码hgt和特定目标-句法信息编码hcg;其中,
hgt=mha(hgs,hts)
hcg=mha(hgs,hcs)
可选的,对上下文-句法信息编码hcg,特定目标-句法信息编码hgt以及上下文语义编码hcs输入预设平均池化计算公式,并将输出结果进行拼接,得到所述特定目标对应的特征表示u;其中,预设平均池化计算公式如下:
可选的,将所述特征表示先输入预设转换公式,再将特征表示的转换结果输入预设归一化指数函数中,得到特定目标的情感分类结果,其中,所述预设转换公式和预设归一化指数函数如下:
相对于现有技术,本发明实施例通过预设双向循环神经网络模型,得到上下文对应的隐藏状态向量和特定目标对应的隐藏状态向量,再结合多头自注意力的并行计算和长距离依赖的优点,对上下文对应的隐藏状态向量和特定目标对应的隐藏状态向量进行多头自注意编码,提取到丰富充分的上下文语义信息和特定目标语义信息。再通过逐点卷积的图卷积神经网络,提取所述上下文对应的句法依存树中的句法向量,并对句法向量进行多头自注意力编码,得到句法信息编码,之后,使用多头交互注意力分别对句法信息编码和上下文语义信息编码、句法信息编码和特定目标语义信息编码进行交互融合,将融合后的结果与上下文语义信息编码拼接,得到最终的特征表示,使得该特征表示充分考虑了上下文和特定目标与句法信息之间的联系,防止了将句法上不相关的上下文单词识别为判断目标情感分类的线索,提高了情感分类的准确性。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本发明。
为了更好地理解和实施,下面结合附图详细说明本发明。
附图说明
图1为本发明一个示例性实施例提供的基于注意力编码和图卷积网络的特定目标情感分类方法的流程示意图;
图2为本发明一个示例性实施例提供的基于注意力编码和图卷积网络的特定目标情感分类方法中s103的流程示意图;
图3为本发明一个示例性实施例提供的句法依存树的示意图;
图4为本发明一个示例性实施例提供的邻接矩阵的示意图;
图5为本发明一个示例性实施例提供的基于注意力编码和图卷积网络的特定目标情感分类模型的整体结构示意图;
图6为本发明一个示例性实施例提供的图卷积神经网络的示意图;
图7为本发明一个示例性实施例提供的基于注意力编码和图卷积网络的特定目标情感分类装置的结构示意图;
图8为本发明一个示例性实施例提供的基于注意力编码和图卷积网络的特定目标情感分类设备的结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。
在本发明使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本发明可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本发明范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”/“若”可以被解释成为“在……时”或“当……时”或“响应于确定”。
请参阅图1,图1为本发明一个示例性实施例提供的基于注意力编码和图卷积网络的特定目标情感分类方法的流程示意图,所述方法由情感分类设备执行,包括如下步骤:
s101:获取上下文对应的词向量和特定目标对应的词向量。
词嵌入是单词的一种数字化表示方式,其是将一个单词映射到一个高维的向量中以实现对单词的表示,这个向量被称为词向量。
在本申请实施例中,情感分类设备首先确定文本内的上下文和特定目标,其中,上下文可以为文本中的一句话,特定目标为上下文中的至少一个单词,例如:上下文为“thepriceisreasonablewhiletheserviceispoor”,特定目标为“price”和“service”。之后,情感分类设备通过词嵌入工具将该上下文和特定目标转换为对应的词向量,若上下文中包括n个单词,上下文对应的词向量则为n个高维向量,若特定目标包括m个单词,特定目标对应的词向量则为m个高维向量。
词嵌入工具可以为glove或word2vec等,在本申请实施例中,基于glove的并行化处理以及利于处理大数据集的优势,采用glove对上下文和特定目标进行词向量转换,获取上下文对应的词向量和特定目标对应的词向量。
s102:将所述上下文对应的词向量和特定目标对应的词向量输入预设双向循环神经网络模型,得到上下文对应的隐藏状态向量和特定目标对应的隐藏状态向量。
循环神经网络(recurrentneuralnetwork,rnn)是一类以序列数据为输入,在序列的演进方向进行递归且所有节点(循环单元)按链式连接的递归神经网络,常见的循环神经网络包括双向循环神经网络(bidirectionalrnn,bi-rnn)、长短期记忆网络(longshort-termmemorynetworks,lstm)、双向长短期记忆网络(bidirectionallongshort-termmemorynetworks,bi-lstm)等。
本申请实施例中,可以采用双向循环神经网络(bidirectionalrnn,bi-rnn)或双向长短期记忆网络(bidirectionallongshort-termmemorynetworks,bi-lstm)作为预设双向循环神经网络模型,得到上下文对应的隐藏状态向量和特定目标对应的隐藏状态向量,初步获取上下文及特定目标中所包含的语义信息。双向的循环神经网络模型的隐藏层要保存两个值,一个值参与正向计算,另一个值参与反向计算,即在一个循环网络包括前向循环神经网络和后向神经网络,双向的循环神经网络更适用于对时序数据的建模,更利于捕捉双向的语义依赖。
在一个可选的实施例中,由于在进行特定情感目标分类的过程中,需要考虑单词在上下文中的前后顺序,因而若采用bi-lstm,则能够传递相隔较远的信息,同时避免长期依赖的问题。例如,上下文“我不觉得这个画展好”,通过bi-lstm模型中的前向神经网络能够获知“不”字是对后面“好”的否定,从而得出该句子的情感极性是贬义。再例如:“我觉得这个酒店房间脏得不行,没有前面那家好”,通过bi-lstm中的后向神经网络,能够获知“不行”是对“脏”的程度的一种修饰。因而,通过利用bi-lstm预设双向循环神经网络模型,能够使得到的上下文对应的隐藏状态向量和特定目标对应的隐藏状态向量更准确地描述上下文及特定目标中所包含的语义信息。
具体地,将所述上下文对应的词向量
其中,n表示上下文对应的词向量的维度,m表示特定目标对应的词向量的维度,
s103:基于结合逐点卷积的预设图卷积神经网络,提取所述上下文对应的句法依存树中的句法向量。
语义依存分析(semanticdependencyparsing,sdp)又称依存树,用于分析上下文中单词之间的语义关联,并将语义关联以依存结构呈现。具体过程为:(1)对上下文进行分词,例如:“猴子喜欢吃香蕉。”,分词后为“猴子喜欢吃香蕉。”;(2)对每个单词进行词性标注,例如:猴子/nn喜欢/vv吃/vv香蕉/nn。/pu;(3)由词性标注生成短语句法树;(4)将短语句法树转化成句法依存树。
图卷积神经网络(gcn)用于对图结构类型的数据进行处理,其中图结构即拓扑结构,也可以称之为非欧几里得结构,常见的图结构包括例如社交网络、信息网络等。逐点卷积是将图卷积神经网络的输出结果再进行一次卷积操作,以更好的整合句子中的句法。
在本申请实施例中,情感分类设备获取上下文对应的句法依存树,并利用先利用预设图卷积神经网络获取句法依存树中的初始句法向量,之后再对初始句法向量进行逐点卷积,得到上下文对应的句法向量。其中,将训练好的图卷积神经网络作为预设图卷积神经网络,具体训练方式与现有神经网络的训练方式相同。
结合逐点卷积的预设图卷积神经网络能够把句法依存树中展示的句法信息提取出来,得到句法向量,从而在后续避免将句法上不相关的单词作为判断情感极性的线索,提高特定目标情感分类的准确性。
在一个可选的实施例中,为准确获取所述句法向量,步骤s103具体包括s1031~s1035,请参阅图2,图2为本发明一个示例性实施例提供的基于注意力编码和图卷积网络的特定目标情感分类方法中s103的流程示意图,步骤s1031~s1035如下:
s1031:根据特定目标在上下文中的位置和位置权重分配函数,得到上下文中每个单词对应的位置权重。
根据特定目标在上下文中的位置的不同,因而上下文中每个单词对于特定目标的情感分类的重要程度也不同。具体地,根据特定目标在上下文中的位置和位置权重分配函数,得到上下文中每个单词对应的位置权重。位置权重分配函数可以根据不同特定目标情感分类的需求不同进行预先设置。例如:可以设置位置权重分配函数为f(a),a为上下文中每个单词与最近的特定目标之间相隔单词个数,从而根据相隔的单词个数,得到不同的位置权重。
在一个可选的实施例中,根据特定目标在上下文中的位置和位置权重分配函数,得到上下文中每个单词对应的位置权重词向量;其中,所述位置权重分配函数f(·)如下:
τ 1表示特定目标的起始位置,m表示特定目标中单词的个数,n表示上下文中单词的个数,qi表示上下文中第i个单词的位置权重。
通过上述置权重分配函数f(·)得到更准确地分析出不同位置的单词的重要程度,更合理地分配上下文中每个单词对应的位置权重。
s1032:获取上下文对应的句法依存树。
情感分类设备获取上下文对应的句法依存树。
在本申请实施例中,可以通过spacy进行句法依存树的获取。句法依存树能够形象的体现出上下文中单词的依存关系。请参阅图3,图3为本发明一个示例性实施例提供的句法依存树的示意图。如图所示,上下文为“我今天很开心”,构建的句法依存树中,开心为句法依存树的根部,其包括三个分枝分别为“我”(主语)、“今天”(状语)和“不”(状语),“不”的分枝为“很”(状语),用于进一步修饰“不”。
s1033:根据所述句法依存树,得到所述上下文中的单词对应的邻接矩阵,其中,所述邻接矩阵反应所述上下文中的单词的邻接关系。
在本申请实施例中,情感分类设备根据所述句法依存树,得到所述上下文中的单词对应的邻接矩阵。其中,邻接矩阵反应上下文中的单词的邻接关系。需要说明的是,单词与自身默认存在邻接关系。
请参阅图4,图4为本发明一个示例性实施例提供的邻接矩阵的示意图,图4所示的邻接矩阵对应图3所示的句法依存树。如图所示,其对角线上的数值均为1,表示每个单词与自身均存在邻接关系。图3中句法依存树的根部为“开心”,其包括三个分枝分别为“我”、“今天”和“不”,因而在对应的邻接矩阵中,“开心”所在行与“我”、“今天”、“不”所在列值的交叉位置处,值均为1。通过上下文中的单词对应的邻接矩阵,能够精准快速地获取单词之间的邻接关系。
s1034:将所述邻接矩阵和所述每个单词对应的位置权重输入预设图卷积神经网络,得到输出层的输出结果。
在本申请实施例中,情感分类设备将所述邻接矩阵和所述每个单词对应的位置权重输入预设图卷积神经网络,得到输出层的输出结果。其中,预设图卷积神经网络的隐藏层设置为1层,激活函数可根据实际情况进行设置。
具体地,情感分类设备将邻接矩阵、每个单词的位置权重以及上下文对应的隐藏状态向量hc输入预设图卷积神经网络的输入层,并将输入层的输出结果、邻接矩阵和每个单词的位置权重传入隐藏层,隐藏层再将其输出结果、邻接矩阵和每个单词的位置权重传递至输出层,最终得到输出层的输出结果,即句法依存树中的初始句法向量。
在一个可选的实施例中,预设图卷积神经网络的隐藏层可以为多层,激活函数为relu()。
具体地,情感分类设备将所述邻接矩阵、每个单词的位置权重和上一层的输出结果输入至预设图卷积运算公式中,得到当前层的输出结果,重复执行输入操作直至得到输出层的输出结果;其中,所述预设图卷积运算公式如下:
aij表示邻接矩阵的第i行第j列的值,a∈rn×n表示邻接矩阵a为n行n列的矩阵,aij表示预设图卷积神经网络的上一层输出结果,ql表示上下文中第j个单词的位置权重,
s1035:对所述输出结果进行逐点卷积,得到所述句法向量。
情感分类设备对对所述输出结果(即初始句法向量)进行逐点卷积,得到所述句法向量。其中,逐点卷积操作是指逐个对初始句法向量
在一个可选的实施例中,情感分类设备将预设图卷积网络的输出层的输出结果输入预设逐点卷积公式,得到所述句法向量;其中,所述预设逐点卷积公式如下:
pwc(h)=σ(h*wpwc bpwc)
hl表示预设图卷积网络的输出层的输出结果,
s104:对所述上下文对应的隐藏状态向量、所述特定目标对应的隐藏状态向量和所述句法向量进行多头自注意力编码,分别得到上下文语义信息编码、特定目标语义信息编码和句法信息编码。
注意力机制的本质来自于人类视觉注意力机制,将注意力机制应用于情感分类,目的在于能够使在分类过程中分配更多的注意力到关键单词。具体地,可以将一句文本想象成是由一系列的<key,value>数据对组成,此时给定某个元素query(查询),通过计算query和各个key的相似性或者相关性,得到每个key对应的value的权重系数,再通过softmax函数归一化后,对权重系数和相应value进行加权求和,得到注意力结果。目前的研究中,key和value常常都是相等的,即key=value。
多头注意力编码(multi-headattention)表示进行多次注意力编码运算,每运算一次代表一头,头之间的参数不进行共享,最后将结果进行拼接,在进行一次线性变换得到多头编码结果。
多头注意力编码又分为多头自注意力编码和多头交互注意力编码。其中,多头自注意力的query与key相同,多头交互注意力编码的query与key不相同。对于多头自注意力编码,其需要实现某一句文本中的每个词与该句文本的所有词之间的注意力值的计算;对于多头交互注意力编码,其需要实现某一句文本中的每个词与其他文本的所有词之间的注意力值的计算。
本申请实施例中,情感分类设备对所述上下文对应的隐藏状态向量、所述特定目标对应的隐藏状态向量和所述句法向量进行多头自注意力编码,分别得到上下文语义信息编码、特定目标语义信息编码和句法信息编码。
具体地,(1)情感分类设备以上下文对应的隐藏状态向量为query和key,进行多头自注意力编码,得到上下文语义信息编码;(2)情感分类设备以特定目标对应的隐藏状态向量为query和key,进行多头自注意力编码,得到特定目标语义信息编码;(3)情感分类设备以句法向量为query和key,进行多头自注意力编码,得到句法信息编码。
通过对所述上下文对应的隐藏状态向量、所述特定目标对应的隐藏状态向量和所述句法向量进行多头自注意力编码,能够提取到更为丰富的语义信息和情感信息。
在一个可选的实施例中,情感分类设备将所述上下文对应的隐藏状态向量hc、所述特定目标对应的隐藏状态向量ht和所述句法向量
hcs=mha(hc,hc)
hts=mha(ht,ht)
oh=attentionh(k,q)
attention(k,q)=softmax(fs(k,q))k
fs(ki,qj)=tanh([ki;qj]·watt)
fs(ki,qj)表示多头注意力的第一输入向量k={k1,k2,...,kn}与多头注意力的第二输入向量q={q1,q2,...,qm}的语义相关性,当进行多头自注意力编码时k=q,当进行多头交互注意力编码时k≠q,“;”是指向量的拼接,
s105:对所述上下文语义信息编码和句法信息编码、所述特定目标语义信息编码和句法信息编码分别进行多头交互注意力编码,得到上下文-句法信息编码和特定目标-句法信息编码。
情感分类设备对上下文语义信息编码和句法信息编码、所述特定目标语义信息编码和句法信息编码分别进行多头交互注意力编码,得到上下文-句法信息编码和特定目标-句法信息编码。
具体地,(1)情感分类设备以句法信息编码为key,以上下文语义信息编码为query,进行多头交互注意编码,得到上下文-句法信息编码,使句法信息编码与上下文语义编码进行交互融合,充分考虑句法信息与上下文的紧密联系。(2)情感分类设备以句法信息编码为key,以特定目标语义信息编码为query,进行多头交互注意编码,得到特定目标-句法信息编码,使句法信息编码与上特定目标语义信息编码进行交互融合,充分考虑句法信息与特定目标的紧密联系。
在一个可选的实施例中,情感分类设备将所述上下文语义信息编码hcs和句法信息编码hgs、所述特定目标语义信息编码hts和句法信息编码hgs分别输入预设多头注意力编码公式,得到上下文-句法信息编码hgt和特定目标-句法信息编码hcg;其中,
hgt=mha(hgs,hts)
hcg=mha(hgs,hcs)
s106:将所述上下文语义信息编码、所述上下文-句法信息编码和所述特定目标-句法信息编码取平均池化后再进行拼接,得到所述特定目标对应的特征表示。
情感分类设备将所述上下文语义信息编码、所述上下文-句法信息编码和所述特定目标-句法信息编码取平均池化后再进行拼接,得到所述特定目标对应的特征表示。其中,平均池化操作为同一维度的值进行平均值化,拼接操作为将向量首尾相接,例如:向量[1,1],[2,2],[3,3],拼接后得到[1,1,2,2,3,3]。
在一个可选的实施例中,情感分类设备对上下文-句法信息编码hcg,特定目标-句法信息编码hgt以及上下文语义编码hcs输入预设平均池化计算公式,并将输出结果进行拼接,得到所述特定目标对应的特征表示u;其中,预设平均池化计算公式如下:
s107:将所述特征表示输入预设归一化指数函数中,得到特定目标的情感分类结果。
情感分类设备将所述特征表示输入预设归一化指数函数中,得到特定目标的情感分类结果。其中,预设归一化指数函数为softmax()函数,通过该预设归一化指数函数,得到不同特定目标下情感极性的概率分布,从而得到特定目标的情感分类结果。
在一个可选的实施例中,情感分类设备将所述特征表示先输入预设转换公式,再将特征表示的转换结果输入预设归一化指数函数中,得到特定目标的情感分类结果,其中,所述预设转换公式和预设归一化指数函数如下:
请同时参阅图5和图6,图5为本发明一个示例性实施例提供的基于注意力编码和图卷积网络的特定目标情感分类模型的整体结构示意图,图6为本发明一个示例性实施例提供的图卷积神经网络的示意图。基于注意力编码和图卷积网络的特定目标情感分类模型(以下简称aegcn模型)对应本申请实施例中所提出的基于注意力编码和图卷积网络的特定目标情感分类方法,例如:步骤s101~s107。具体地,该模型首先通过预设双向循环神经网络模型,得到上下文对应的隐藏状态向量和特定目标对应的隐藏状态向量,再结合多头自注意力的并行计算和长距离依赖的优点,对上下文对应的隐藏状态向量和特定目标对应的隐藏状态向量进行多头自注意编码,提取到丰富充分的上下文语义信息和特定目标语义信息。再通过结合逐点卷积的图卷积神经网络,提取所述上下文对应的句法依存树中的句法向量,并对句法向量进行多头自注意力编码,得到句法信息编码,之后,使用多头交互注意力分别对句法信息编码和上下文语义信息编码、句法信息编码和特定目标语义信息编码进行交互融合,将融合后的结果与上下文语义信息编码拼接,得到最终的特征表示,使得该特征表示充分考虑了上下文和特定目标与句法信息之间的联系,防止了将句法上不相关的上下文单词识别为判断目标情感分类的线索,提高了情感分类的准确性。
下面将对本申请实施例提出的基于注意力编码和图卷积网络的特定目标情感分类方法进行实验论证,论证过程如下:
(1)选取五个数据集twitter,rest14和lap14(semeval2014task4),rest15(semeval2015task12),rest16(semeval2016task5)。
其中,twitter数据集最初由tang等人建立,包含了来自社交软件twitter的推文,一共包括6940条评论,每条评论都有标记出其中的特定目标以及特定目标的情感极性。
semeval-2014task4数据集主要用于细粒度情感分析,包含lap14和rest14,每个领域的数据集都分为训练数据、验证数据(从训练数据分离出来)和测试数据,一共包含7794条评论,每条评论都有标记出其中的特定目标以及特定目标的情感极性。
semeval-2015task12数据集主要用于细粒度情感分析,包含rest15,每个领域的数据集都分为训练数据、验证数据(从训练数据分离出来)和测试数据,一共包含1746条评论,每条评论都有标记出其中的特定目标以及特定目标的情感极性。
semeval-2016task5,数据集主要用于细粒度情感分析,包含rest16,每个领域的数据集都分为训练数据、验证数据(从训练数据分离出来)和测试数据,一共包含2454条评论,每条评论都有标记出其中的特定目标以及特定目标的情感极性。
(2)对数据集中的数据进行预处理,具体地,在glove工具中进行初始化处理,将数据中的每个单词均转化成维度为300的高维向量。并利用均匀分布对实验中利用到的模型进行权重的初始化设置。
(3)搭建图卷积神经网络结构,所有隐藏层维度大小均为300。adam为优化器,其学习率为0.001。l2正则项的权重设置为0.00001。同时为了防止过拟合,参数dropoutrate为0.5。参数batchsize的系数为32。多头注意力中head的个数为3,gcn层数设定为2。
(4)对比实验结果。
本发明选用accuracy和macro-averagedf1作为评价指标。其中,accuracy为二分类评价指标,其计算方式为正确分类的句子数与句子总数的比值,macro-averagedf1为多分类评价指标,其计算方式如下:
其中,tpi是指分类i的truepositive,truepositive指被预测分类为i且真实分类为i的句子的数量,fpi是指分类i的falsepositive,falsepositive指被预测分类为i但真实分类不为i的句子的数量,tni是指分类i的truenegative,truenegative指被预测分类不为i且真实分类不为i的句子的数量,fni是指分类i的falsenegative,falsenegative指被预测分类不为i但真实分为i的句子的数量,n为句子的总数量。
请参阅下方表1,通过表1可以得出,本申请提出的基于注意力编码和图卷积网络的特定目标情感分类方法,性能要优于传统的机器学习的方法。在表中svm模型是使用支持向量机进行分类,它依赖大量人工特征提取。本申请提出的基于注意力编码和图卷积网络的特定目标情感分类方法无人工特征提取,并且在twitter,lap14和restaurant数据集上相比于svm准确率分别高出9.76%,5.42%和0.88%。说明基于注意力编码和图卷积网络的特定目标情感分类方法更适用于特定目标情感分析的研究。
本申请提出的基于注意力编码和图卷积网络的特定目标情感分类方法使用双向lstm结合多头注意力机制对语义编码,相比标准多注意力机制的方法以及只使用多头注意力机制进行语义编码的方法效果较好。以memnet为例,其在五个数据集上的准确率和f1值均低于本文方法。以aen为例,在三个数据集(twitter,lap14和rest14)中本文方法仅有一项指标(rest14,f1)低(0.82%)。
由于结合了句法信息,比起没有考虑句法信息的方法,本申请提出的基于注意力编码和图卷积网络的特定目标情感分类方法所取得的效果也较好。以aoa为例,在五个数据集上的准确率和f1值中仅有rest16的准确率略高于本申请提出的方法(高出0.11%)。此外,ian在五个数据集上的准确率和f1值都低于本申请提出的方法,本申请提出的方法在其中四个数据集上表现又都优于tnet-lf。
本发明提出的结合逐点卷积的gcn表现优于结合了aspect-specificmaskinglayer的gcn。asgcn模型在gcn的顶部强加apect-specificmaskinglayer,以此来获得融入了句法信息的特定目标的表示。但是这样就损失了带有句法信息的上下文表示。在五个数据集的准确率和f1值中,本文方法仅在rest14的f1,rest15的f1以及rest16的准确率这三个指标低于(0.87%,1.02%and1.60%respectively)asgcn,其他七项指标均优于asgcn,证实了本申请提出的方法的有效性。
表1
同上,针对本申请提出的基于注意力编码和图卷积网络的特定目标情感分类方法进行消融研究,结果如表2所示。
首先,在移除了gcn后,有三个数据集(lap14,rest14和rest15)的表现出现了下滑,但twitter和rest16表现更好。由于twitter数据集中句子比较口语化,以及结合前述实验结果所观察到的tnet-lf方法在数据集rest16的两个指标上都取得了最好的表现,可以推断出twitter数据集以及rest16数据集对于句法信息不是非常的敏感。
其次,在没有多头自注意力的情况下,twitter数据集的表现并不是很好,但是rest15数据集的结果却有所上升,这也反映出了twitter数据集非常依赖于语义信息以及本发明对于多头自注意力机制的应用能够很好地提取到丰富的语义信息,也可以推测出rest15数据集相比于其他数据集对句法信息更加敏感。
最后,可以看出如果移除了多头交互注意力,本发明在五个数据集上的表现都不好,这也说明多头交互注意力对于本发明非常重要,也可以看出句法信息和语义信息的交互对于类似于lap14,rest14以及rest15这样的数据集来说非常重要。
消融研究的实验结果表明,本申请实施例中提出的基于注意力编码和图卷积网络的特定目标情感分类方法中每一步骤都是必不可缺并且有效的。
表2
请参见图7,图7为本发明一个示例性实施例提供的基于注意力编码和图卷积网络的特定目标情感分类装置的结构示意图。包括的各单元用于执行图1和图2对应的实施例中的各步骤,具体请参阅图1和图2各自对应的实施例中的相关描述。为了便于说明,仅示出了与本实施例相关的部分。参见图7,基于注意力编码和图卷积网络的特定目标情感分类装置7包括:
获取单元71,用于获取上下文对应的词向量和特定目标对应的词向量;
第一神经网络单元72,用于将所述上下文对应的词向量和特定目标对应的词向量输入预设双向循环神经网络模型,得到上下文对应的隐藏状态向量和特定目标对应的隐藏状态向量;
第二神经网络单元73,用于基于结合逐点卷积的预设图卷积神经网络,提取所述上下文对应的句法依存树中的句法向量;
第一编码单元74,用于对所述上下文对应的隐藏状态向量、所述特定目标对应的隐藏状态向量和所述句法向量进行多头自注意力编码,分别得到上下文语义信息编码、特定目标语义信息编码和句法信息编码;
第二编码单元75,用于对所述上下文语义信息编码和句法信息编码、所述特定目标语义信息编码和句法信息编码分别进行多头交互注意力编码,得到上下文-句法信息编码和特定目标-句法信息编码;
拼接单元76,用于将所述上下文语义信息编码、所述上下文-句法信息编码和所述特定目标-句法信息编码取平均池化后再进行拼接,得到所述特定目标对应的特征表示;
分类单元77,用于将所述特征表示输入预设归一化指数函数中,得到特定目标的情感分类结果。
可选的,第二神经网络单元73包括:
位置权重分配单元731,用于根据特定目标在上下文中的位置和位置权重分配函数,得到上下文中每个单词对应的位置权重;
第一获取单元732,用于获取上下文对应的句法依存树;
第二获取单元733,用于根据所述句法依存树,得到所述上下文中的单词对应的邻接矩阵,其中,所述邻接矩阵反应所述上下文中的单词的邻接关系;
第三神经网络单元734,用于将所述邻接矩阵和所述每个单词对应的位置权重输入预设图卷积神经网络,得到输出层的输出结果;
逐点卷积单元735,用于对所述输出结果进行逐点卷积,得到所述句法向量。
请参见图8,图8是本发明一个示例性实施例提供的基于注意力编码和图卷积网络的特定目标情感分类设备的示意图。如图8所示,该实施例的基于注意力编码和图卷积网络的特定目标情感分类设备8包括:处理器80、存储器81以及存储在所述存储器81中并可在所述处理器80上运行的计算机程序82,例如基于注意力编码和图卷积网络的特定目标情感分类程序。所述处理器80执行所述计算机程序82时实现上述各个基于注意力编码和图卷积网络的特定目标情感分类方法实施例中的步骤,例如图1所示的步骤s101至s107。或者,所述处理器80执行所述计算机程序82时实现上述各装置实施例中各模块/单元的功能,例如图7所示单元71至77的功能。
示例性的,所述计算机程序82可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器81中,并由所述处理器80执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序82在所述基于注意力编码和图卷积网络的特定目标情感分类设备8中的执行过程。例如,所述计算机程序82可以被分割成获取单元、第一神经网络单元、第二神经网络单元、第一编码单元、第二编码单元、拼接单元和分类单元,各单元功能如下:
获取单元,用于获取上下文对应的词向量和特定目标对应的词向量;
第一神经网络单元,用于将所述上下文对应的词向量和特定目标对应的词向量输入预设双向循环神经网络模型,得到上下文对应的隐藏状态向量和特定目标对应的隐藏状态向量;
第二神经网络单元,用于基于结合逐点卷积的预设图卷积神经网络,提取所述上下文对应的句法依存树中的句法向量;
第一编码单元,用于对所述上下文对应的隐藏状态向量、所述特定目标对应的隐藏状态向量和所述句法向量进行多头自注意力编码,分别得到上下文语义信息编码、特定目标语义信息编码和句法信息编码;
第二编码单元,用于对所述上下文语义信息编码和句法信息编码、所述特定目标语义信息编码和句法信息编码分别进行多头交互注意力编码,得到上下文-句法信息编码和特定目标-句法信息编码;
拼接单元,用于将所述上下文语义信息编码、所述上下文-句法信息编码和所述特定目标-句法信息编码取平均池化后再进行拼接,得到所述特定目标对应的特征表示;
分类单元,用于将所述特征表示输入预设归一化指数函数中,得到特定目标的情感分类结果。
所述基于注意力编码和图卷积网络的特定目标情感分类设备8可包括,但不仅限于,处理器80、存储器81。本领域技术人员可以理解,图8仅仅是基于注意力编码和图卷积网络的特定目标情感分类设备8的示例,并不构成对基于注意力编码和图卷积网络的特定目标情感分类设备8的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述基于注意力编码和图卷积网络的特定目标情感分类设备8还可以包括输入输出设备、网络接入设备、总线等。
所称处理器80可以是中央处理单元(centralprocessingunit,cpu),还可以是其他通用处理器、数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现成可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器81可以是所述基于注意力编码和图卷积网络的特定目标情感分类设备8的内部存储单元,例如基于注意力编码和图卷积网络的特定目标情感分类设备8的硬盘或内存。所述存储器81也可以是所述基于注意力编码和图卷积网络的特定目标情感分类设备8的外部存储设备,例如所述基于注意力编码和图卷积网络的特定目标情感分类设备8上配备的插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)等。进一步地,所述存储器81还可以既包括所基于注意力编码和图卷积网络的特定目标情感分类设备8的内部存储单元也包括外部存储设备。所述存储器81用于存储所述计算机程序以及所述基于注意力编码和图卷积网络的特定目标情感分类设备所需的其他程序和数据。所述存储器81还可以用于暂时地存储已经输出或者将要输出的数据。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的实施例中,应该理解到,所揭露的装置/终端设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/终端设备实施例仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、u盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。本发明并不局限于上述实施方式,如果对本发明的各种改动或变形不脱离本发明的精神和范围,倘若这些改动和变形属于本发明的权利要求和等同技术范围之内,则本发明也意图包含这些改动和变形。
1.一种基于注意力编码和图卷积网络的特定目标情感分类方法,其特征在于,包括步骤:
获取上下文对应的词向量和特定目标对应的词向量;
将所述上下文对应的词向量和特定目标对应的词向量输入预设双向循环神经网络模型,得到上下文对应的隐藏状态向量和特定目标对应的隐藏状态向量;
基于结合逐点卷积的预设图卷积神经网络,提取所述上下文对应的句法依存树中的句法向量;
对所述上下文对应的隐藏状态向量、所述特定目标对应的隐藏状态向量和所述句法向量进行多头自注意力编码,分别得到上下文语义信息编码、特定目标语义信息编码和句法信息编码;
对所述上下文语义信息编码和句法信息编码、所述特定目标语义信息编码和句法信息编码分别进行多头交互注意力编码,得到上下文-句法信息编码和特定目标-句法信息编码;
将所述上下文语义信息编码、所述上下文-句法信息编码和所述特定目标-句法信息编码取平均池化后再进行拼接,得到所述特定目标对应的特征表示;
将所述特征表示输入预设归一化指数函数中,得到特定目标的情感分类结果。
2.根据权利要求1所述的基于注意力编码和图卷积网络的特定目标情感分类方法,其特征在于,所述将所述上下文对应的词向量和特定目标对应的词向量输入预设双向循环神经网络模型,得到上下文对应的隐藏状态向量和特定目标对应的隐藏状态向量,包括步骤:
将所述上下文对应的词向量
其中,n表示上下文对应的词向量的维度,m表示特定目标对应的词向量的维度,
3.根据权利要求1所述的基于注意力编码和图卷积网络的特定目标情感分类方法,其特征在于,所述基于结合逐点卷积的预设图卷积神经网络,提取所述上下文对应的句法依存树中的句法向量,包括步骤:
根据特定目标在上下文中的位置和位置权重分配函数,得到上下文中每个单词对应的位置权重;
获取上下文对应的句法依存树;
根据所述句法依存树,得到所述上下文中的单词对应的邻接矩阵,其中,所述邻接矩阵反应所述上下文中的单词的邻接关系;
将所述邻接矩阵和所述每个单词对应的位置权重输入预设图卷积神经网络,得到输出层的输出结果;
对所述输出结果进行逐点卷积,得到所述句法向量。
4.根据权利要求3所述的基于注意力编码和图卷积网络的特定目标情感分类方法,其特征在于,所述根据特定目标在上下文中的位置和位置权重分配函数,得到上下文中每个单词对应的位置权重,包括步骤:
根据特定目标在上下文中的位置和位置权重分配函数,得到上下文中每个单词对应的位置权重;其中,所述位置权重分配函数f(·)如下:
τ 1表示特定目标的起始位置,m表示特定目标中单词的个数,n表示上下文中单词的个数,qi表示上下文中第i个单词的位置权重。
5.根据权利要求4所述的基于注意力编码和图卷积网络的特定目标情感分类方法,其特征在于,所述将所述邻接矩阵和所述每个单词的位置权重输入预设图卷积神经网络,得到输出层的输出结果,包括步骤:
将所述邻接矩阵、每个单词的位置权重和上一层的输出结果输入至预设图卷积运算公式中,得到当前层的输出结果,重复执行输入操作直至得到输出层的输出结果;其中,所述预设图卷积运算公式如下:
aij表示邻接矩阵的第i行第j列的值,a∈rn×n表示邻接矩阵a为n行n列的矩阵,aij表示预设图卷积神经网络的上一层输出结果,ql表示上下文中第j个单词的位置权重,
6.根据权利要求3所述的基于注意力编码和图卷积网络的特定目标情感分类方法,其特征在于,所述对所述输出结果进行逐点卷积,得到所述句法向量,包括步骤:
将预设图卷积网络的输出层的输出结果输入预设逐点卷积公式,得到所述句法向量;其中,所述预设逐点卷积公式如下:
pwc(h)=σ(h*wpwc bpwc)
hl表示预设图卷积网络的输出层的输出结果,
7.根据权利要求1所述的基于注意力编码和图卷积网络的特定目标情感分类方法,其特征在于,对所述上下文对应的隐藏状态向量、所述特定目标对应的隐藏状态向量和所述句法向量进行多头自注意力编码,分别得到上下文语义信息编码、特定目标语义信息编码和句法信息编码,包括步骤:
将所述上下文对应的隐藏状态向量hc、所述特定目标对应的隐藏状态向量ht和所述句法向量
hcs=mha(hc,hc)
hts=mha(ht,ht)
oh=attentionh(k,q)
attention(k,q)=softmax(fs(k,q))k
fs(ki,qj)=tanh([ki;qj]·watt)
fs(ki,qj)表示多头注意力的第一输入向量k={k1,k2,...,kn}与多头注意力的第二输入向量q={q1,q2,...,qm}的语义相关性,当进行多头自注意力编码时k=q,当进行多头交互注意力编码时k≠q,“;”是指向量的拼接,
8.根据权利要求7所述的基于注意力编码和图卷积网络的特定目标情感分类方法,其特征在于,所述对所述上下文语义信息编码和句法信息编码、所述特定目标语义信息编码和句法信息编码分别进行多头交互注意力编码,得到上下文-句法信息编码和特定目标-句法信息编码,包括步骤:
将所述上下文语义信息编码hcs和句法信息编码hgs、所述特定目标语义信息编码hts和句法信息编码hgs分别输入预设多头注意力编码公式,得到上下文-句法信息编码hgt和特定目标-句法信息编码hcg;其中,
hgt=mha(hgs,hts)
hcg=mha(hgs,hcs)
9.根据权利要求1所述的基于注意力编码和图卷积网络的特定目标情感分类方法,其特征在于,所述将所述上下文语义信息编码、所述上下文-句法信息编码和所述特定目标-句法信息编码取平均池化化后再进行拼接,得到所述特定目标对应的特征表示,包括步骤:
对上下文-句法信息编码hcg,特定目标-句法信息编码hgt以及上下文语义编码hcs输入预设平均池化计算公式,并将输出结果进行拼接,得到所述特定目标对应的特征表示u;其中,预设平均池化计算公式如下:
10.根据权利要求1所述的基于注意力编码和图卷积网络的特定目标情感分类方法,其特征在于,所述将所述特征表示输入预设归一化指数函数中,得到特定目标的情感分类结果,包括步骤:
将所述特征表示先输入预设转换公式,再将特征表示的转换结果输入预设归一化指数函数中,得到特定目标的情感分类结果,其中,所述预设转换公式和预设归一化指数函数如下: