一种融合句法依存关系的方面级情感二元组抽取方法

文档序号:37174477发布日期:2024-03-01 12:24阅读:28来源:国知局
一种融合句法依存关系的方面级情感二元组抽取方法

本发明涉及一种融合句法依存关系的方面级情感二元组抽取方法,属于自然语言处理情感分析。


背景技术:

1、随着互联网及社交网络的发展,文本情感分析技术已成为自然语言处理领域的热门研究方向之一。借助情感分析技术,可以对文本所表达的情感进行精确理解,能够从一个侧面理解客户所思所想,进而挖掘客户喜好。

2、情感分析是自然语言处理的一个重要的子任务,其借助自然语言处理相关技术,对带有主观感情色彩的文本进行分析、处理与抽取。以粒度对情感分析技术进行分类,可将情感分析技术分为篇章级情感分析、句子级情感分析及方面级情感分析。方面级情感二元抽取任务作为方面级情感分析研究方向之一,其能同时提取句子中的方面词与该方面词对应的情感极性,因此也被称作端对端的方面级情感分析,其能直观的展现提出意见的人所针对的对象的某一特定方面,判断文本中多个词的情感极性。

3、目前,已有一些对方面级二元组抽取任务的研究,试图将句子中词与词之间的依赖信息引入模型中,让模型学习句法特征。现有方法经常使用句法依存树,并将树转换为邻接矩阵,为模型提供更全面的语法信息。这样的方法确实能够更好的编码单词之间的相关性。

4、然而,这些方法在转换为邻接矩阵的过程中,并未考虑到句法依存关系的种类问题。在句法依存关系中,方面词可能与多个词存在关系。若模型不对依存关系的重要性进行分析,不能平等对待词与词之间的关系,则无法捕捉到对方面词情感极性影响较大的词,并对方面级二元组抽取任务产生负面影响。


技术实现思路

1、本发明的目的是针对现有技术存在未能在方面级情感二元组抽取任务中充分利用句法依存树信息等技术缺陷,为解决有效捕获句子间单词的句法依存关系种类等技术问题,创造性地提出一种融合句法依存关系的方面级情感二元组抽取方法。

2、首先,对本发明涉及的有关内容和概念进行解释说明。

3、文本序列x。表达式为:{x=w1,w2,...,wn},表示需要进行方面级情感二元组抽取的句子,该句子中有n个单词w1,w2,...,wn,下标n为句子单词序列长度,wi为文本序列x中的第i个单词。

4、方面级情感二元组(a,s):其为方面词a与情感极性s组成的二元组。对于方面词a,其表达式为{a=wa1,wa2,...,wam},表示句子中涉及的方面主体,该词由n个单词wa1,wa2,...,wam组成,下标m为方面词序列长度,wi为文本序列x中的第i个单词。

5、情感极性s:表示方面词a在句中所表现的情感的极性,在此任务中其取值为积极(pos)、中性(neu)、消极(neg)三者之一。

6、句法依存关系:表达单词与单词之间的依赖关系,一个句法依存关系连接两个词,一为核心词,一为修饰词。将词法单元之间依照句法依存关系,由核心词指向修饰词建立单向连接,最终形成的树形结构,即为句法依存树。

7、输入文本序列的单词特征向量:指将输入文本序列向量化所使用的预训练向量,包括语义向量;其中,语义向量hi指单词wi的语义特征信息,wi为文本序列x中的第i个单词。

8、注意力:指获取外界信息的过程中,人类对外界信息中的特定部分集中关注的现象,在人类听取他人的言语时,倾听言语的一方会对某些词语多加关注。具体体现在,若句子中的单词wi与句中另一词wj存在句法依存关系,则在句子中的单词wi的表示hi融合句法依存信息时,赋予词wj的表示hj更高的权重。

9、本发明采用以下技术方案实现。

10、一种融合句法依存关系的方面级情感二元组抽取方法,包括以下步骤:

11、步骤1:可以利用spacy工具包等,得到文本序列x的句法依存树。

12、spacy工具包是一个开放的,可用于解决nlp任务的python库,可以通过该工具包实现对文本序列x的处理,得到句法依存树。

13、步骤2:对所训练的数据集,统计所有出现过的句法依存关系种类。

14、具体地,在统计前,将核心词与修饰词间不存在句法依存关系的情况编码为0,将核心词与修饰词为同一词的情况编码为1,同时将指向句法依存树的根节点的句法依存关系也视为句法依存种类。在统计过后,加入句法依存关系种类的统计结果,并一一编码,确保不同的句法依存关系,其对应的编码也各不相同,最终得到一个编码表d。

15、步骤3:将文本序列x的句法依存树根据编码表d进行编码,得到带有依存关系信息的n*n的带权邻接矩阵r。

16、r表达式为:

17、

18、其中,矩阵r中的元素rij的取值包括两种情况:若词i与词j之间不存在直接的句法依存关系,则取值为0;若存在直接的句法依存关系,则根据步骤2中得到的编码表d,根据词i与词j之间句法依存关系的种类,取编码表d中相对应的值。

19、步骤4:对于输入的需要进行方面级情感二元组抽取的句子,也就是文本序列,采用预训练的单词特征向量来表示文本序列中的每个单词的向量化表示。

20、对应文本序列{x=w1,w2,...,wn},步骤3得到其向量化表示代表词wi通过了预训练模型的表示向量。

21、步骤5:将步骤2得到的带权邻接矩阵r与步骤3中得到的向量化表示h(0)作为初始输入,输入由l个图卷积层搭建的网络。

22、具体地,网络中第l层图卷积网络层,以带权邻接矩阵r与向量h(l-1)为输入。

23、首先通过注意力机制,计算句子中对的注意力得分

24、

25、其中,rij为矩阵r中的元素。

26、随后,该图卷积层根据式3计算词的输出

27、

28、其中,δ()为深度学习的激活函数,w(l)为第l层图卷积网络层的训练参数。第l层图卷积层的向量的输出为:

29、通过网络层后,得到融合句法依存信息的每个单词的向量化表示h(l)。

30、步骤6:将步骤5中得到的每个单词的向量化表示通过softmax层,计算对应的概率向量,对每个单词进行序列标注。

31、概率向量的每一个元素表示对应单词在序列标注中所对应的标签的概率,如式4所示:

32、

33、

34、其中,yi表示单词wi的标签,标签取值范围为{′o′,′b-pos′,′b-neu′,′b-neg′,′i′},′o′表示该单词并非方面词,′b′表示方面词的首个词,′pos′表示该词情感极性为积极,′neu′表示该词情感极性为中性,′neg′表示该词情感极性为消极,′i′表示该词为并非首词的方面词;w表示权重矩阵;oi表示将向量化表示与标签空间对齐后得到的该词对应标签的概率分布向量,k表示概率分布向量的维度,代表向量oi的第k维。

35、最终得到的标签序列y为:

36、y={y1,y2,y3,…,yn}                (6)

37、步骤7:根据步骤6中序列标注的结果,得到句子中方面词对应的序列长度、起始位置与情感极性。

38、其中,所有方面词的起始位置ba的定义如下:

39、ba={i|yi=′b-pos′}∪{i|yi=′b-neu′}∪{i|yi=′b-neg′}∪{n}      (7)

40、其中,′b同样表示方面词的首个词。

41、随后,将ba中元素按从小到大的顺序排列,得到序列b′a。b′a中的第i个元素,也就是句子中方面词ai的起始位置其序列长度为:

42、

43、方面词ai对应的情感极性seni,其取值如下:

44、

45、其中,pos代表积极、neu代表中性、neg代表消极。

46、经过以上步骤,得到句子中方面词ai对应的序列长度起始位置与情感极性seni。

47、在得到句子中方面词对应的序列长度、起始位置与情感极性后,使用交叉熵作为损失函数,使用梯度下降的方式对参数进行更新,最小化模型的预测误差。

48、至此,从步骤1到步骤7,得到了给定句子的所有方面级情感二元组,完成了融合句法依存关系的方面级情感二元组抽取。

49、有益效果

50、本发明方法,对比现有技术,具有以下优点:

51、本方法考虑到句中其余词对方面词的句法依存种类信息可以帮助确定方面词的情感极性这一点,利用句法依存种类信息对包含有方面词的句子信息进行扩充,丰富了句子的语义表达,可更好地建模句子表示,提升方面级情感分析性能。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1