基于知识增强的图卷积神经网络的文本分类
Knowledge-enhanced graph convolutional neural networks for text classification
通讯作者:
收稿日期: 2021-07-12
Received: 2021-07-12
作者简介 About authors
王婷(1997—),女,硕士生,从事文本分类研究.orcid.org/0000-0003-0318-141X.E-mail:
针对文本分类问题,提出新的基于知识增强的图卷积神经网络(KEGCN)分类模型. KEGCN模型在整个文本集上构建了一个包含单词节点、文档节点、外部实体节点的文本图,不同类型节点之间使用不同的相似性计算方法;在文本图构建完成后将其输入到2层图卷积网络中学习节点的表示并进行分类. KEGCN模型引入外部知识进行构图,捕获长距离不连续的全局语义信息,是第1个将知识信息引入图卷积网络进行分类任务的工作. 在4个大规模真实数据集20NG、OHSUMED、R52、R8上进行文本分类实验,结果表明,KEGCN模型的分类准确率优于所有的基线模型. 将知识信息融入图卷积神经网络有利于学习到更精准的文本表示,提高文本分类的准确率.
关键词:
A new knowledge-enhanced graph convolutional neural network (KEGCN) classification model was proposed aiming at the problem of text classification. In the KEGCN model, firstly a text graph containing word nodes, document nodes, and external entity nodes was constructed on the entire text set. Different similarity calculation methods were used between different types of nodes. After the text graph was constructed, it was input into the two-layer graph convolutional network to learn the representation of the node and classified. The KEGCN model introduced external knowledge to compose the graph, and captured the long-distance discontinuous global semantic information, and was the first work to introduce knowledge information into the graph convolution network for classification tasks. Text classification experiments were conducted on four large-scale real data sets, 20NG, OHSUMED, R52 and R8, and results showed that the classification accuracy of the KEGCN network model was better than that of all baseline models. Results show that integrating knowledge information into the graph convolutional neural network is conducive to learning more accurate text representations and improving the accuracy of text classification.
Keywords:
本文引用格式
王婷, 朱小飞, 唐顾.
WANG Ting, ZHU Xiao-fei, TANG Gu.
文本分类是自然语言处理领域的基础性任务,其目的在于将一段文本划分为预定义的类别,在情感分析、语言推理、主题分类、垃圾邮件检测、新闻过滤等领域有着广泛的应用. 目前,绝大多数的方法使用卷积神经网络结构(convolutional neural networks, CNN)和递归神经网络(recurrent neural network, RNN)进行文本分类,但是现实生活中很多数据比如知识图谱、社交网络、交通网络等并不是有规则的序列,因此图卷积神经网络(graph convolutional networks, GCN)应运而生. 图卷积神经网络的本质是一个特征提取器,它将文本内容视为图结构数据,将文本中的每个单词看作一个节点,单词和单词之间存在关系即构边,进而构建成为一个图. 图数据具有2个基本特性:1)每个节点都有自己的特征信息;2)节点和节点之间还存在结构信息.
虽然通过将文本构建成图的结构可以学到更多的信息,但是以往的研究工作[1]只关注于捕获文本内部短距离连续的语义关系或者仅仅使用外部知识库来计算词与词之间的语义相似度,而忽略了外部知识在文本分类任务上更深层次的应用. 其次,以往的研究工作仅考虑对词级上下文信息进行建模,而忽略了文档级和实体级的信息.
为了解决上述问题,提出新的用于文本分类的方法−知识增强的图卷积神经网络(knowledge-enhanced graph convolutional neural network,KEGCN). 使用外部实体链接工具Tagme将文本中的实体链接至外部知识库中并得到其实体的表示,然后从整个语料库中构建一个包含3种节点(词级、文档级、实体级)、4种边(单词-单词、实体-单词、文档-单词、文档-实体)的大型图. 本研究使用GCN对图进行建模,利用词共现构建词与词之间的边及词与实体之间的边,利用词频和词语的文档频率建立词节点和文档节点之间的边. 因而,文本分类问题就转化为图节点分类问题. 综上所述,主要创新点如下:1)提出新的应用于文本分类的知识增强图神经网络模型,使用外部知识库中的实体表示,作为知识层级表示,结合语义层面的单词和文档节点进行构图. 2)所提出的KEGCN模型更好地利用了文本的分层结构信息,同时捕获了全局的语义信息和外部知识信息.
1. 相关工作
1.1. 文本分类任务
1.2. 传统的文本分类方法
1)K最近邻算法(K-nearest neighbors,KNN)[6]. KNN通过在k个最接近的有标记样本上找到样本最多的类别来对一个未标记样本进行分类. KNN是简单的分类器,但是使用KNN处理大规模数据集耗时较长.
1.3. 基于深度学习的文本分类方法
1.4. 图神经网络
图神经网络(graph neural network,GNN)[16]近年来受到了广泛的关注. 传统的神经网络[17]只能对结构化的数据进行建模,而现实生活中很多数据比如社交网络[18]、知识图[19]都是树形或者图谱的结构. 因此,GNN[20]被提出用以处理非结构化数据,GNN是直接作用于图结构上的神经网络. GNN模型基于信息传播机制,每一个节点通过相互交换信息来更新自己的节点状态,直到达到某一个稳定值. GCN是引入卷积的GNN,通过提取空间特征来学习节点的表示,其典型的应用有节点分类、图分类、交通流量预测、用户偏好推荐等. 实质上图中的每一个节点都与一个标签相关联,GCN通过其他已知标签信息的节点来预测未标记节点的标签,从而进行分类.
2. KEGCN模型
使用图神经网络最大的挑战在于须输入GCN可用的格式的数据. 须将文本数据转换为图的形式,因此须巧妙地对输入图形中的单词、文档及外部实体之间的交互进行建模. 本研究所提出的模型如图1所示. 通过将单词表示为顶点,词共现表示为边进行构图,记为G = (V, E),其中V表示节点,E表示边. 图中有3类节点,分别为单词节点、文档节点和实体节点,分别以W、T、E作为符号表示. 在经过一个标准化的数据处理后(包括对标点符号的处理及去除停用词),使用one-hot对单词、文档及实体进行编码. 如图1(a)所示为模型输入时所构成的初始图,如图1(b)所示为经过图卷积神经网络聚合节点特征信息后,文本分类的结果.
图 1
2.1. 实体链接
实体链接(entity linking)就是将文档中出现的实体关联到外部知识库中的相关实体的任务. 详细过程如下:首先提取文档中所有的实体,其次使用实体链接工具Tagme将提取到的实体链接到外部知识库中,找到候选实体并进行消歧,最终得到与文档中实体对应的外部知识表示. 将所得的外部知识表示作为实体节点的嵌入表示.
2.2. 构图
根据文档中的词共现(文档-单词边),整个语料库中的词共现(单词-单词边)及外部知识库中的词共现(单词-实体边/文档-实体边)在各节点之间构建边. 对于文档-单词和文档-实体的边的权重,采用BM25算法进行计算. BM25是一种用于计算词和文档相关性的算法,计算公式如下:
式中:
为了利用全局词共现信息,使用点互信息算法(pointwise mutual information, PMI)来计算单词-单词节点和实体-单词节点之间的权重. PMI是一种常用的词关联度量方法,其基本思想是统计2个词语在文本中同时出现的概率,概率越大,其相关性就越紧密,关联度越高. 计算公式如下:
式中:
综上,当节点i和节点j表示单词或知识实体时,其边的权值使用PMI计算;当计算文档-单词或文档-知识实体节点所构边的权值时,使用BM25算法;当节点构成自环时,权值设置为1.0;其他情况下权值为0. 边的权值表达式如下:
此时,输入的文本数据已经构成图. 接下来按照Kipf等[21]的方法,将构建好的图输入到一个2层的GCN中,通过softmax分类器进行预测. 为了最小化损失,使用交叉熵函数进行计算. 表达式如下:
式中:
3. 实验结果与分析
3.1. 数据集
表 1 情感分析数据集统计
Tab.1
数据集 | 训练集文档数 | 测试集文档数 | 类别数 | 实体数 | 平均长度 |
20NG | 11314 | 7532 | 20 | 26607 | 221.26 |
OHSUMED | 3357 | 4043 | 23 | 9075 | 135.82 |
R52 | 6532 | 2568 | 52 | 7476 | 69.82 |
R8 | 5485 | 2189 | 8 | 6440 | 65.72 |
1)20Newsgroups. 20NG收集了18846个新闻文档,均匀分为20个不同主题的新闻组集合. 训练集中共有11314个文档,测试集中共有7532个文档. 每个文档平均长度为221.26个词.
2)OHSUMED. 包含348566个文档. 本研究的工作仅仅关注单标签文本分类,因此去除多类别文档,最后剩下7400个文档,其中训练集有3357个文档,测试集有4043个文档.
3)R52和R8. R8有8个类别,其中训练集有5485个文档,测试集有2189个测试文档. R52有52个类别,其中训练集有6532个文档,测试集有2568个文档.
3.2. 基线模型
将本研究所提模型和8种不同的基线模型进行比较,8种模型如下. 传统深度学习方法:CNN[4]和LSTM[11]. 使用词语上下文信息的分类方法:fastText[22]和SWEM[23]. 基于图的文本分类方法:Text-GCN[8]和HETE-GCN[24]. 1)CNN:CNN-rand表示使用随机初始化的词向量,CNN-non-static表示使用预训练的词向量进行初始化. 2)Bi-LSTM:双向LSTM,使用训练好的词向量作为输入. 3)fastText:简单高效的文本分类方法,将词向量的平均值输入到分类器中进行分类. 4)SWEM:简单的词嵌入模型,对词向量进行池化操作. 5)Text-GCN:将文本构成图,使用图卷积网络学习和预测图中节点(单词、文档)的特征向量表示. 6)HETE-GCN:通过采样技术和图卷积运算学习高质量的节点嵌入.
3.3. 参数设置和评估指标
所采用的评价指标为正确率(Acc). Acc表示预测正确的样本数占样本总数的百分比.
3.4. 实验结果
在4个公开数据集上进行8组实验以验证KEGCN模型的有效性,各个模型的性能对比结果如表2所示. 图中,黑体加粗为最优结果. 可以看出,KEGCN的表现最佳,显著优于所有基线模型. 根据实验结果不难发现基于图的方法通常优于其他类型的模型,表明对文本进行构图有利于文本分类任务. 其中,KEGCN在20NG数据集上的效果提升最明显,与以往最优的模型效果相比,提高了1.68%. 本研究的模型效果更佳主要有以下2点原因:1)将外部实体信息纳入图中作为词节点,为大量的文本数据提供了额外的信息,并且把词节点的语义信息和知识信息相结合,获得了更丰富的表示. 2)采用文本的分层结构,将词节点作为桥梁连接文档节点和外部实体节点,使得标签信息传播到整个图中.
表 2 KEGCN模型在4个数据集上的分类准确性对比
Tab.2
模型 | Acc | |||
20NG | OHSUMED | R52 | R8 | |
CNN-rand | 0.7693±0.0061 | 0.4387±0.0100 | 0.8537±0.0047 | 0.9402±0.0057 |
CNN-non-static | 0.8215±0.0052 | 0.5844±0.0106 | 0.8759±0.0048 | 0.9571±0.0052 |
LSTM(pretrain) | 0.7543±0.0172 | 0.5110±0.0150 | 0.9048±0.0086 | 0.9609±0.0019 |
Bi-LSTM | 0.7318±0.0185 | 0.4927±0.0107 | 0.9054±0.0091 | 0.9631±0.0033 |
fastText | 0.7938±0.0030 | 0.5770±0.0049 | 0.9281±0.0009 | 0.9613±0.0021 |
SWEM | 0.8516±0.0029 | 0.6312±0.0055 | 0.9294±0.0024 | 0.9532±0.0026 |
Text-GCN | 0.8634±0.0009 | 0.6836±0.0056 | 0.9356±0.0018 | 0.9707±0.0051 |
HETE-GCN | 0.8715±0.0015 | 0.6811±0.0070 | 0.9435±0.0025 | 0.9724±0.0010 |
KEGCN | 0.8822±0.0045 | 0.6971±0.0059 | 0.9451±0.0018 | 0.9741±0.0025 |
为了进一步验证模型的有效性,测试4种不同的模型在OHSUMED和R52数据集上的Loss和Acc,结果如图2所示. 图中,Epoch为迭代次数. 1个Epoch表示将数据集全部数据都训练一次. 由图中曲线的整体走向可以看出,相较于传统的深度学习方法,KEGCN模型具有更好的收敛性和鲁棒性,因为和LSTM的曲线相比,由本研究提出的方法所生成的曲线更加平滑与稳定. 此外,从实验结果还可以直观地看出引入外部实体对于提升分类性能是有帮助的.
图 2
图 2 4种模型在OHSUMED和R52数据集上损失和准确率的对比
Fig.2 Comparison of loss and accuracy of four models on OHSUMED and R52 datasets
图 3
除此之外,由于本研究使用和Text-GCN相同的数据处理方法,可以通过观察最终的实验结果,清楚地看出引入外部知识信息对于文本分类是有效果的.
图 4
图 4 OHSUMED数据集中不同向量维度下的性能对比
Fig.4 Performance comparison of different vector dimensions in OHSUMED dataset
图 5
图 5 R8数据集中不同特征向量维度下的性能对比
Fig.5 Performance comparison of different dimensions on R8 dataset
4. 结 语
针对文本分类任务,为了提高分类结果的准确性,提出新的基于图的文本分类方法,该方法通过引入外部实体信息增强词节点表示并使用多层次结构进行构图. 在不同的公开数据集上进行实验,结果表明,所提出的方法均取得了更优的分类结果,也验证了借助外部知识能够获得更为准确的文本表示.
虽然KEGCN模型在多个数据集上展现了良好的性能,但是本研究未对文本数据进行深层次的探究,同时未对图神经网络进行进一步的改进,未来考虑结合文本增强技术,设计带有注意力权重的图神经网络进行分类实验,并验证分析.
参考文献
Understanding bag-of-words model: a statistical framework
[J].DOI:10.1007/s13042-010-0001-0 [本文引用: 1]
Nearest neighbor pattern classification
[J].DOI:10.1109/TIT.1967.1053964 [本文引用: 1]
Classification and regression trees
[J].
Long short-term memory
[J].DOI:10.1162/neco.1997.9.8.1735 [本文引用: 1]
Semi-supervised convolutional neural networks for text categorization via region embedding
[J].
Graph neural networks: a review of methods and applications
[J].DOI:10.1016/j.aiopen.2021.01.001 [本文引用: 1]
A comprehensive survey on graph neural networks
[J].
Knowledge transfer for out-of-knowledge-base entities: improving graph-neural-network-based embedding using convolutional layers
[J].DOI:10.1109/ACCESS.2020.3019592 [本文引用: 1]
The graph neural network model
[J].
/
〈 |
|
〉 |
