融合知识图谱与注意力机制的短文本分类模型

2021-01-15 07:17丁辰晖夏鸿斌
计算机工程 2021年1期
关键词:短文图谱注意力

丁辰晖,夏鸿斌,2,刘 渊,2

(1.江南大学 数字媒体学院,江苏 无锡 214122;2.江苏省媒体设计与软件技术重点实验室,江苏 无锡 214122)

0 概述

近年来,随着Twitter、微博等社交网络的出现,人们可以轻松便捷地在社交平台上发布文本、图片、视频等多样化的信息,社交网络已超越传统媒体成为新的信息聚集地,并以极快的速度影响着社会的信息传播格局[1]。如何对这些短文本进行准确分类,是自然语言处理(Natural Language Processing,NLP)领域中的一项关键技术。由于这些短文本篇幅较短,缺乏上下文信息,且内容口语化、特征属性多与噪声较大,因此精确提取文本特征,采用合适的分类模型对短文本进行分类是一个亟需解决的问题。

在文本分类这一领域中,一般的文本表示方法分为显式表示与隐式表示。对于显式表示方法,人们一般从知识库、词性标注、句法分析[2]等多个方面创造有效的特征,将短文本表示为稀疏向量,每一维度都是显式的特征。虽然文本的显式表示很容易被人理解,但是显式表示往往忽略了短文本的上下文,无法捕捉到深层的语义信息,此外还存在数据稀疏问题。例如,当实体特征在知识库中不存在时,则无法获得它的任何特征,此时显式表示将无法工作。现阶段在深度学习中隐式文本的隐式表示方法则更为常见,通过训练词向量将每个词映射成为密集的向量[3],使用词向量矩阵表示短文本,由于词向量中包含词义信息,神经网络模型可以从上下文中获取更丰富的语义信息,促进神经网络模型对短文本的理解。但是隐式表示方法仍然存在一些缺点,如短文本为{The Bulls won the NBA championship},在文中Bulls 是一个篮球队的名字,然而通过词向量输入的模型可能无法捕捉到这一信息,将其视为一种动物或一个新词,造成分类效果不够理想。单纯使用显示或隐式的文本表示方法都存在一定的问题,所以将两者相结合,利用一个内容丰富的知识库来丰富短文本的先验知识,获取短文本的概念集,再将短文本与概念集映射为词向量矩阵,从而使模型学习出更全面、更深层的语义,提升分类能力。

本文构建一种融合知识图谱和注意力机制的神经网络模型。将知识图谱与短文本分类模型相融合,从已有知识库中获取短文本的概念集作为输入,从而获得文本中的先验知识。在此基础上引入注意力机制,计算每个概念相对于概念集及短文本之间的相关性,对两者注意力权重进行加权融合,得出最终每个概念的权重,以提高相关概念的权重,使模型分类效果更具判别性。

1 相关工作

随着深度学习的发展,越来越多的学者使用深度学习方法进行文本分类的研究,其在绝大多数任务中的表现都优于传统方法,极大地促进了文本分类这一领域的发展。因为卷积神经网络(CNN)在NLP 和计算机视觉的各个领域都表现出了较好的性能,所以受到了研究人员的极大关注。文献[4]利用预训练的词向量,将卷积神经网络应用在语句分类任务中。文献[5]提出CNN 动态的k-max pooling 方法来解决Twitter 短文本的极性分类问题,CNN 可以处理不同长度的输入句子,并在句子上生成一个特征图,能够明确捕捉短期和长期关系,并取得了较好的效果。文献[6]使用字符级卷积神经网络进行文本分类,利用字符作为模型输入从而代替了词语作为输入,并在实验数据集上取得了良好的效果。文献[7]采用循环神经网络建立篇章级循环神经网络模型,该模型相比标准的循环神经网络模型具有更强的性能,在文本分类任务中具有较好的效果。

2017 年,Google 团队[8]提出使用注意力机制的Transformer 模型解决NLP 问题,随着注意力机制在NLP 领域中的广泛应用,越来越多的学者开始利用注意力机制解决NLP 方面的问题。2018 年,HUANG 等人[9]构建AOA_LSTM 模型,该模型使用双向LSTM 构建了句子的属性特征向量矩阵,并通过上下文编码和注意力计算更好地关注属性序列中的重要信息,挖掘出更深层的情感特征信息。2018年,文献[10]使用双向门控循环单元(Bi-directional-Gated Recurrent Unit,Bi-GRU)结合注意力机制,在餐饮电商评论短文本分类中取得了较好的效果。这些方法证明了深度学习结合注意力机制在短文本情感分类中可以取得更好的效果。

2016 年,微软研究院发布了概念图谱。概念图谱是一个大型的知识图谱系统,通过对来自数以亿计的网页和数年积累的搜索日记的数据进行学习而掌握大量的常识性知识。概念图谱表示形式为实例、概念和关系的三元组。实例与概念之间为IsA关系,如三元组(苹果,水果,IsA)表示苹果是一种水果。文献[11]提出了6 种基于概念图谱进行实例概念化的方法,并在微软知识图谱的官方网站提供了相应api 函数的调用。

2017 年,WANG 等人[12]提出一种融合概念图谱的CNN 短文本分类模型,通过从知识库中提前获取的短文本先验知识与CNN 提取的文本特征相结合,可以一定程度上解决短文本分类中缺乏上下文信息的缺点,在5 个公开数据集中获得了优异的效果。由此可见,通过知识图谱与深度学习相结合,可以缓解短文本缺乏上下文的问题,融合知识图谱的模型可以获取词向量以外的额外信息,在文本分类任务中具有较好的表现。

虽然融合了知识图谱的神经网络模型有着较好的表现,但是仍然存在一些问题。例如上文中{The Bulls won the NBA championship},虽然可以从知识库中获取到球队和动物这两个概念,但显然动物在短文本中是不恰当的概念,这些噪声会影响文本分类的结果。此外,例如输入短文本为{Steve Jobs is one of the co-founders of Apple},可以从知识库中检索到乔布斯的企业家和个人两个概念,虽然两个概念都正确,但显然在短文本中企业家的概念应该占更大的权重。

为解决上述问题,本文引入了注意力机制,同时借鉴Transformer 模型,提出一种融合知识图谱的注意力门控循环单元网络,通过计算短文本与其概念集中的概念的注意力权重,赋予与短文本密切相关的概念更高的权重,如上例中{Steve Jobs is one of the co-founders of Apple},Steve Jobs 的企业家和个人两个概念,增大企业家概念的权重,减小个人概念的权重,使得文本分类模型更具有判别性。

2 知识增强的文本分类模型

本文提出了一种融合知识图谱、注意力机制和双向GRU 的知识增强网络模型(Knowledge Enhanced Attention Bi-GRU,KEAT-GRU),该模型借鉴了神经网络翻译模型的设计思想[8],采用基于Transformer的编码器-解码器网络结构,同时融合概念图谱获取短文本的先验知识,如图1 所示,该网络模型主要由以下两部分构成:

1)短文本编码:使用字符向量与词向量拼接后作为输入,经过Bi-GRU 提取短文本特征,并利用多头自注意力层对重要文本信息进行加权,获得短文本特征。

2)概念化编码:通过调用微软概念图谱的API,获取短文本概念集并向量化,通过与短文本的特征向量进行Attention 计算,提升概念集中与短文本关系密切的概念的权重,最终得出概念集特征。

图1 文本分类模型结构Fig.1 Structure of text classification model

2.1 短文本编码

已有研究表明[13],使用卷积神经网络可以提取出单词字符中的形态学信息(例如单词的前缀后缀),将字符嵌入作为词向量的拓展,为缺少词向量的单词提供额外信息。因此,本文使用字符级词嵌入向量与词向量相拼接作为短文本编码模型的输入,输入短文本单词序列{x1,x2,…,xn},xi表示句中第i个单词,其中,xi单词中包含长度为L的字符,cj为单词xi中每个字符嵌入向量,每一个字符都代表其相应的一个特征。如图2 所示,使用一个标准卷积神经网络处理每一个单词中的字符序列,训练得出单词的字符级向量,计算公式如式(1)所示:

其中,WCNN与bCNN为训练参数,ke 表示卷积核大小,max 表示进行最大池化操作。

随后模型将单词xi映射为词向量ew:

对词向量与字符向量进行拼接:

图2 字符级卷积神经网络结构Fig.2 Structure of character-level convolution neural network

最终获得词向量矩阵E=[E1,E2,…,En]作为Bi-GRU 的输入。前向GRU 按照正常的顺序读取输入序列(E1~En),反向GRU 则按逆序读取输入序列(En~E1),每个t时刻的输入向量Ei经过门控循环单元的计算,获取每个时刻的前向隐藏状态和反向隐藏状态,将各个时刻的前向隐藏状态与其对应时刻的反向隐藏状态连接,得到该时刻的隐藏状态:

随后将每个时刻隐藏状态hj输入自注意力层,对每个时间步输入的词根据注意力计算进行加权,使重要的词语获得更高的权重,Attention 计算定义为:

其中,Q表示一次执行Attention 时的查询,K表示与值相对应同时又用来与查询计算相似度作为Attention 选取的依据,V表示被注意并被选取的数据。输入包含dk维的query 和key 以及dv维的value。

Multi-head Attention 运算结构如图3 所示。

图3 Multi-head Attention 运算结构Fig.3 Operation structure of Multi-head Attention

计算定义如下:

用h个不同的线性变换分别将dmodel维的key、value 和query 映射成dk维、dk维和dv维,随后计算得出h×dv维输出,进行拼接,最后进行一次线性变换得到最终的输出。hi为输入序列,即Bi-GRU 层输出的隐藏状态,目的是在输入序列内部进行注意力计算,寻找序列内部的联系。

通过自注意力层计算出注意力权重at,将Bi-GRU输出的t时刻的隐藏状态ht加权平均:

最终输出特征矩阵h′∈ℝn×2u。

2.2 短文本概念化编码

文本概念化需要通过已有知识库例如Yago[14]、Microsoft Concept Graph。本文使用微软发布的Concept Graph 知识图谱对短文本进行概念化,获取文本相关概念集。将每条短文本通过知识库获取文本的概念集合C=(c1,c2,…,cm),ci表示第i个概念集中的概念向量。为增加重点概念向量的权重,减小与短文本无关的概念向量对结果的影响,首先将短文本特征矩阵h′∈ℝn×2u经过最大池化层,转换为特征向量q∈ℝ2u,随后引入注意力机制,计算概念集中第i向量与其短文本特征向量q的关系权重:

其中,αi为第i个概念集中的概念向量与其短文本之间的注意力权重为权重矩阵为权重向量,da为超参数,b1为偏置。

在概念集内部加入自注意力机制并进行注意力计算,以获取每个概念ci在整个概念集中的重要性权重:

其中,βi为第i个概念集中的概念向量的注意力权重为权重矩阵为权重向量,db为超参数,b2为偏置,注意力机制赋予重要概念较大的权重,赋予不重要的概念极小的权重(接近于零),以突出概念集中重要概念。

在得到αi、βi注意力权重后,用式(12)将两者结合,以获取最终注意力权重:

其中,ai为最终第i个概念向量注意力权重,γ∈[0,1]是调节αi与βi的权重参数。

获取每个概念向量的注意力权重后,对每个概念向量进行加权计算:

2.3 模型训练

本文网络模型训练采用反向传播算法,同时引入L2 正则化以避免网络模型过拟合问题。L2 正则化通过在损失函数中加入L2 范数作为惩罚项,使得模型拟合更倾向于低维的模型,可以有效防止过拟合。相比于L1 正则化会产生稀疏性问题,L2 正则化可以使系数向量更加平滑,避免稀疏性问题。本文通过最小化交叉熵损失函数来优化网络模型,完成分类任务,交叉熵损失函数为:

其中,D为训练集大小,C为类别数,y为预测类别,y′为实际类别为正则项。

2.4 实验数据集

将本文方法在两个不同领域数据的公开数据集中进行实验,解决短文本情感分析的任务。

1)SemEval2017 数据集是国际语义评测比赛Task4 的Twitter 数据集,数据集的短文本中共包含积极、中性和消极3 种情感分类。

2)AGNews:文献[15]通过互联网获得了新闻文章语料库,其中包含来自2 000 多个新闻来源的496 835 个分类新闻文章,仅从标题和描述字段中选择该语料库中最大的4 个类来构建数据集。

3)Ohsumed:文献[16]发布的医学文献书目分类数据集,删除了带有多个标签的文档,仅将标题用于短文本分类。

4)国际计算机语言协会(Association for Computational Linguistics,ACL)公布的电影评论数据集和IMDB影评数据集,每一条评论包含正向和负向的感情倾向。

5)TagMyNews:文献[17]发布的英文新闻文本数据集,使用其新闻标题作为数据集,包含政治、艺术等7 个分类。

语料库统计如表1 所示。

表1 语料库统计Table 1 Corpora statistics

2.5 对比方法

各数据集对比方法如下:

1)CNN。文献[4]提出的卷积神经网络模型,是较为基础的卷积神经网络。

2)AT-CNN(Attention-based CNN)。文献[18]提出基于词注意力卷积神经网络,在词嵌入层后加入注意力层,可以获取较为重要的局部特征,取得较好的结果。

3)CNNs-LSTMs。文献[19]提出的CNN 与LSTM 相结合的模型,使用未标注数据集训练词向量,运用标注数据集在训练中微调参数,最终在Twitter 情感分类任务中取得优秀的成绩。

4)AT-LSTM(Attention-based LSTM)。文献[20]提出基于注意力机制的双向LSTM 网络,该模型在Twitter 的情感分类中取得了比传统LSTM 网络更好的分类效果。

5)KCNN(Knowledge Convolutional Neural Network)。文献[9]提出融合概念图谱的CNN 短文本分类模型,将知识库中提前获取的短文本先验知识与CNN提取的文本特征相结合,该模型在5 个公开数据集上获得优异的效果。

2.6 实验参数设置

模型使用的预训练词向量维度为300,字符向量维度为50 维,概念向量维度为100 维,权重随机初始化标准差为0.1 的正态分布随机数。同时所有词向量、字符向量及概念向量都在训练时进行微调。在词嵌入层,池化层设置dropout 值为0.3。隐藏层维度为100,L2 正则化权重为0.000 1,学习率为0.01,学习率的下降率为0.05。使用Adam 优化方法加快模型训练速度,通过每个batch 中50 个样本的方式进行模型的训练。

2.7 实验结果与分析

将本文模型与5 种对比模型在5 个公开数据集上进行实验,结果如表2 所示。

表2 各数据集准确率实验结果Table 2 Experimental results of accuracy of each data set

从表2 可以看出,本文提出的方法模型在不同领域的数据集上都取得了较好的效果,尤其在Ohsumed、TagMyNews 数据集中表现优异,这是由于这些数据集只使用新闻、文章标题构建,文本长度过短,缺乏上下文信息,在没有先验知识的情况下模型训练效果较差,由于在出现特有名词或者新词时,可能这些词在预训练词向量集中不存在,因此模型一般只能使用随机初始化的方法处理这一问题,这会导致模型分类判别效果变差。而KCNN 与本文模型由于都融入了知识图谱,可以获取文本中的先验知识,因此都取得了优异的分类效果。但是本文模型在Twitter 与Movie Review 数据集上提升不是很明显,主要有两方面原因,一方面是因为这两个数据集是用户的博文和评论,可能含有一定的上下文信息,另一方面因为两个数据集是情感分类方向,模型获取情感词特征对分类效果影响较大,而识别情感词往往可能不需要很多先验知识,预训练的词向量就可以很好地表达出情感特征。因此,KCNN 与本文模型在这两个数据集上的提升并不明显。

图4 为短文本概念化的3 个实例,其中前两条为新闻分类,第1 条短文本分类为商业新闻,第2 条分类为科技新闻,而第3 条为医学分类,这条短文本被分为寄生虫相关文献。从前两条新闻短文本可以看出,短文本中出现的单词可能使用词向量会表达出错误的语义,例如Apple 在短文本中为苹果公司,而词向量很可能将其表达为水果的词义,因此需要引入知识库以获取单词的先验知识,而从知识库中获取的概念集往往也会存在与短文本无关的概念,例如Hip Pop 的音乐风格概念与商业新闻无关,所以引入注意力机制,将每个概念与短文本、概念集进行attention 计算,把那些与短文本和概念集无关的概念权重减小,防止影响模型分类效果。对于第3 条医学分类的短文本,可以看出短文本中可能会出现某个领域的专业特殊词汇,例如文本中的Ascaris lumbricoides 这一词汇,它们往往在预训练词向量中找不到,因此模型分类能力会变差,而本文模型由于结合知识库,可以获取短文本的先验知识,从而解决这一问题。

图4 短文本概念化实例Fig.4 Examples of short text conceptualization

从上文可以看出,本文模型对比KCNN 模型在各个领域数据集中均有一定的提升。由于本文模型借鉴Transformer 结构,使用双向GRU 与多头自注意力相结合,对短文本进行编码,在输入序列内部做Attention 计算,给重点词增加较高的Attention 权重,从而获取序列内部之间的联系,同时multi-Head 部分把每一个由self-attention 计算出来的head 使用不同的线性变换,学习出不同的词语关系。本文模型同时使用注意力机制对输入的概念集进行编码,通过计算短文本与其概念集中的概念的注意力权重,赋予与短文本密切相关的概念更高的权重,可以一定程度上解决KCNN 模型中输入的噪声概念,使重要的概念获取更高的权重,因此文本模型有一定的优越性。

从上文实验结果可以看出,AT-CNN 模型的分类效果全面优于CNN 模型,由于CNN 将所有词都同等对待,提取每一处的局部特征,无法判别输入文本的特征词与类别的相关性,没有识别关键字的能力,因此在文本分类任务中表现一般。而融合注意力机制的模型AT-CNN,提升了网络的特征选择能力,使其在文本分类任务中有更为出色的效果。在Twitter 的分类任务中,相比于CNN 模型,准确率提升了3.4%,在Movie Review 和TagMyNews 数据集中,分别提升了1.7%和2.3%,验证了注意力机制的有效性。结合一般形式注意力机制的AT-LSTM 模型有着较好的表现,AT-LSTM 相比CNNs-LSTMs 也有较好的提升,在Ohsumed 数据集中,准确率提升1.2%,这说明注意力机制在模型训练时可以关注特定目标的特征信息,从而使网络更好地识别文本的类别。

为验证短文本概念集两种注意力机制的有效性,本文研究了调节两种注意力权重的参数γ对本文模型结果的影响,经过手动调节参数γ,将γ从0 变为1,间隔为0.25,实验结果如表3 所示。从表3 可以看出,一般当γ=0.25 或γ=0.50 时模型效果最佳,具体参数选定需视数据集而定。当参数γ设为0 或1时,模型效果都较差。这是由于当γ=1 时,模型忽略了每个概念相对于概念集的重要性,从而导致了模型的性能下降。而当γ=0 时,模型忽略了概念相对于短文本之间的语义相似度,在这种情况下会导致与短文本无关的概念可能会被赋予较大的权重,影响模型的分类效果。

表3 参数γ 对模型的影响Table 3 Impact of parameter γ on the model

3 结束语

针对短文本分类任务,本文提出一种融合知识图谱与自注意力机制的GRU 模型。该模型通过双向GRU 编码短文本上下文信息,结合自注意力机制使模型关注短文本内部词语的关系,挖掘文本深层次的特征信息。同时使用注意力机制对短文本概念集编码,使模型可以获取短文本的先验知识,解决短文本缺乏上下文信息的问题。在5 个不同领域的评测数据集上的实验结果验证了本文方法的可行性和有效性。由于本文使用的第三方知识库为微软在2016 年发布的知识图谱库,可能会出现新词无法查询的问题,因此下一步计划使用YAGO3 新知识库对模型进行改进。

猜你喜欢
短文图谱注意力
让注意力“飞”回来
绘一张成长图谱
KEYS
Keys
“扬眼”APP:让注意力“变现”
补肾强身片UPLC指纹图谱
A Beautiful Way Of Looking At Things
主动对接你思维的知识图谱
短文改错
短文改错