APP下载

结合双曲图注意力网络与标签信息的短文本分类方法

2024-05-11宋建平孙开伟刘期烈

计算机工程与应用 2024年9期
关键词:双曲注意力标签

宋建平,王 毅,孙开伟,刘期烈

1.重庆邮电大学通信与信息工程学院,重庆 400065

2.重庆邮电大学计算机科学与技术学院,重庆 400065

在文本分类任务中,不同文本特征对文本分类识别的贡献度是不同的,贡献度高的重要特征往往对应着文本中的关键词语或关键信息,充分挖掘并利用重要特征对于提升文本分类性能是至关重要的。然而这种特征在层次结构分明的文本中的位置分布往往是十分稀疏、分散的,因此如何充分利用并获取文本中的关键信息,改善文本分类的效果是目前研究工作的重要难点。一些研究方法将文本中的字符与字符之间的共现关系、语义关系嵌入到了连续的低维稠密欧式向量空间中,并引入自注意力机制[1]帮助学习文本特征。而最近的研究结果表明,欧几里得对称模型不能很好地反映复杂的数据模式,并且会造成嵌入向量的高度失真[2]。双曲空间具有特殊的高容量和连续的树状特性,使用双曲图模型能够发挥双曲空间对文档幂律结构的优越性[2]。此外,还有一些研究人员设计了标签文本交互机制,增强标签信息对文本特征学习的影响,以期加强对重要信息的提取,在一定程度上提升了文本分类性能。

为此,本文提出了一种基于双曲图注意力网络的短文本分类算法,首先通过指数映射函数将欧式表征映射到双曲空间,利用双曲几何对层级结构图数据的建模能力,充分挖掘文本信息的层级结构以避免表示坍缩现象[3],然后使用改进的图注意力网络充分捕获节点关系所包含的辅助信息,在双曲空间中进一步学习文本表征。最后利用标签与文本特征学习之间的相关性,获得标签适应的文本嵌入表示,输入到全连接层、输出层进行分类。

本文的贡献总结如下:提出了一种基于双曲图注意力网络的短文本分类算法,它可以从文本中捕获到更丰富、精确的局部特征,缓解语义稀疏问题。并且有效地捕获标签信息与文本表示的层级结构以及相关性,有效地提升短文本分类效果。在多个数据集上的实验结果表明,本文所提算法优于现有研究方法。

1 相关工作

现有文本分类方法主要包括两类:基于传统的机器学习方法和基于深度学习的方法。传统的文本分类研究主要集中在特征学习和分类算法上。目前也有关于将文本转换为图,对图和子图进行特征学习的研究[4]。基于深度学习的文本分类研究分为两类。其中一类研究方法集中于设计端到端的神经网络,Zeng等人[5]提出了一种用于短文本分类的主题记忆网络,它具有一种主题存储机制,并利用短文本的潜在主题表示丰富语义信息。杨朝强等人[6]通过使用长短期记忆(long shortterm memory,LSTM)网络、卷积神经网络进行不同层面的特征提取,并将其进行融合以增强语义特征。文献[7]中引入了句子的主题信息。虽然这些模型丰富了文本的语义特征,取得了很好的效果,但另一方面也增加了模型复杂程度。另一类方法则集中于设计基于单词、文档嵌入的模型[8-9],最近的几项研究表明,深度学习在文本分类方面的成功在很大程度上取决于单词嵌入的有效性。Tang等人[10]提出共同学习单词、文档以及标签的嵌入表示。

最近,图神经网络(graph neural network,GNN)在与图形相关的任务中显示出了极大的优势[11],因为它们能够通过扩展深度神经网络来学习任意具有图结构的数据,显式地编码节点属性及其交互,隐式地学习高阶依赖关系。研究人员将卷积应用到图结构上,也就是图卷积网络[12](graph convolutional network,GCN),此外,还有将注意力机制(例如graph attention network,GAT[13])、门机制(例如gated graph neural network,GGNN[14])和残差机制(例如highway-GCN[15])引入图网络的方法。Yao 等人[16]提出了TextGCN,通过为文本和单词构建单一的异构图将文本分类任务转换为节点分类任务。这种图构建方式既需要考虑整个语料库中的所有单词,又要考虑存储边信息,导致大量的内存资源被占用,同时边信息的表达能力也受到了严重限制,影响了最终的分类效果。与TextGCN不同,Huang等人[17]为每个输入文本构建独立的图结构,并采用全局参数共享的方式更新单词节点的特征信息。该方法减少了边的数量,降低了内存资源占用,但这种方式也减少了单词节点之间的交互。

双曲空间中的表示学习受到越来越多的关注,并广泛应用于图嵌入、自然语言处理和推荐系统等许多领域。图嵌入[18]被应用到双曲空间中学习文本的层次特征表示。Nickel等人[19]专注于通过在双曲空间中嵌入图来发现概念之间的成对层次关系。许多研究尝试把各种各样的层级数据嵌入到双曲空间,在嵌入向量维度更少的条件下在下游的机器学习任务中取得了更好的效果,并在知识问答、机器翻译、图分析等应用上取得了性能上的提升。Zhang等人[20]通过双曲层级注意力网络模型Hype-HAN生成从词向量到句向量,再到最终的文档向量,然后利用生成的这些语义向量用于自动文本分类任务。Chen 等人[21]提出基于双曲流形表征的多标签文本分类方法,学习文本和标签的双曲表征之间的细粒度交互机制用于提高分类准确度。上述方法使用简单的双曲空间测地线距离度量词语的相似性,作为标签文本交互函数具有正定性且没有上界,计算量较大的同时无法很好地训练损失函数。

2 模型建立

算法的目的是学习保存复杂逻辑关系的文本向量表示,并用学到的向量表示进一步预测文本所对应标签的概率。考虑到双曲空间的层次结构与注意力网络的信息融合能力以及标签与文本特征学习的相关性,提出了基于双曲图注意力网络的短文本分类算法L-HGAT,算法主要包括三个部分:(1)双曲空间向量表示及特征变换;(2)双曲注意力机制;(3)标签信息优化文本表示。

2.1 双曲空间向量表示及特征变换

文本图由单词节点,文本节点构成,构建文本图的过程具体为:使用宽度为w的滑动窗口内单词节点的互信息PMI来构建单词节点之间的边,PMI是一种常用的单词关联度量方法:

其中,W′(i)表示数据中包含词的i的窗口数量,W′(i,j)是数据集中同时包含词i和j的窗口数量,W是数据集中窗口的总数。文本与单词节点间的边使用BM25 算法,当节点构成自环时权值为1,其他情况下权值为0,权值表达式如下:

以单词节点为例,为了使节点特征能够在双曲空间中传播计算,首先使用指数映射函数将其投影到双曲空间,即:

其中,ti表示节点i在欧氏空间中的特征,ti∈,m表示为双曲空间中的一个点,表示为在点m的切空间,c表示映射到曲率为-1/c的双曲空间,并使用半径为的庞家莱球模型对其进行描述,表示为在点m处的对节点特征ti进行指数映射,,当m=0 时:

莫比乌斯乘法满足矩阵结合律并且若Mqi=0,那么,将hi作为节点i在双曲空间中的表示,也可以看作是双曲注意力机制的隐藏层特征。

2.2 双曲注意力机制

使用双曲注意力机制的目的是利用中心节点与邻居节点的双曲相似度来区别对待不同的邻居节点,学习基于节点双曲表示的注意力系数,根据该系数加强对局部重要特征的提取能力并获得双曲空间中的聚合表示。其中节点i对节点j的注意力系数表示为αij=f(hi,hj),f表示基于双曲距离的计算节点间注意力的函数:

<·,·>代表欧氏空间中的内积,由于双曲空间是度量空间,与欧几里得空间中的内积不同,双曲距离满足了三角形不等式,因此自注意可以保持节点间的传递性。给定节点i与自身的注意力系数αii=f(hi,hi)=0,即节点与自身的注意力系数为0,节点与邻居节点的注意力系数总是大于自注意力系数的。为了便于比较邻居节点的注意力系数,使用softmax 函数对注意力函数进行归一化:

与图注意力网络GAT 不同的是,算法使用的节点的最终聚合表示包含了自身的权重以及对应的边权重,将记为,充分利用边结构所包含的统计性信息,生成高阶文本表示:

当c趋于0时,该式转变为欧几里得标量乘法:

其中,莫比乌斯标量乘法满足标量加法分布性和标量乘法结合性。

使用多头注意力可以提高模型的泛化能力,在欧氏空间中将多个单头注意力结果进行拼接,多个注意力拼接的空间是每个单头注意力空间的笛卡尔积,因此在欧氏空间中多头注意力的操作与单头注意力是一样的。与欧氏空间不同,双曲空间的乘积不等于高维双曲空间,这就意味着不能直接将欧氏空间中的多头注意力操作直接应用于双曲空间。因此需要设计一种双曲空间多头注意力算法。

首先将节点i的K个m维双曲特征表示,…,组成潜在语义特征:

设计多头双曲注意力系数的计算方法为:

使用softmax函数对节点i的所有邻居的注意力系数进行归一化:

最终获得双曲多注意力输出为:

公式(11)与公式(18)的计算量随着节点数增加而增大,而莫比乌斯加法既不满足交换律也不满足结合律,只能按顺序计算结果:以公式(11)为例,将记为vij:

对数映射能够将双曲空间中节点vi,vj映射到欧几里得空间,以此利用欧几里得空间的运算法则简化运算,具体为:

当vi=0 时,即该节点为原点时,公式(21)可以表示为。最后使用指数映射方法将节点映射回双曲空间继续进行运算:

公式(11)以及公式(18)所使用的双曲非线性变换方法具体为:

其中,c和c′分别为当前层的双曲空间曲率和下一层的双曲空间曲率,由于两个双曲空间在点0 处共享切空间,所以可以在非线性激活过程中平滑两层的曲率。

2.3 标签信息优化文本表示

在欧式空间中研究者常常使用余弦相似度距离来度量词语之间的相似性,而双曲空间具有高内聚、低耦合的特性,无法保证相似词语的词向量的夹角更靠近[22]。因此需要采用以双曲空间测地线距离为基础的相似性度量关系进行度量。简单地使用双曲距离计算量较大,需要设计一种距离映射函数,满足区间为[0,1],并且当词语间的相关性越大时,该函数对应的值越大,反之越小,从而学习针对特定标签的文本特征,推断文本所属的标签。模型采用距离映射函数的计算结果作为文本和标签的交互值:

因此对于第l个标签而言,其标签适应的文本表示为:

其中,σ是sigmoid 激活函数,φ是非线性变换函数,We、Wf为权重参数,上述算法计算量随标签数据规模增大而显著增大,大部分文档仅含有小部分标签,采用负采样的方法降低计算量,最小化损失函数为:

式中,L+代表真实标签的集合,L-代表负采样得到的负例标签集合。

2.4 模型整体框架

基于以上章节对L-HGAT各个模块的介绍,L-HGAT整体框架如图1所示。主要包括三个模块,分别为特征变换模块、双曲注意力机制模块和标签信息优化文表示模块。具体流程为:首先构建由单词节点、文本节点构成的文本图,获得节点欧式特征后将其通过指数映射函数映射到双曲空间,转变为高阶潜在表示。然后通过计算节点i与邻居节点j的双曲距离,获得节点i和节点j之间的注意力系数。最后利用标签信息进一步引导文本中的节点学习高阶潜在语义特征,获取文本的最终聚合表达式,模型计算量随着标签规模的增大而增大,为了提高计算效率,采用负采样方法计算损失函数,反向传播并更新参数,最终输出文本节点对应的标签。

图1 L-HGAT框架图Fig.1 L-HGAT frame

3 实验结果及分析

3.1 实验数据集与评价指标

实验使用5 个广泛使用的基准数据集,分别为20newsgroups(20NG)、Ohsumed、路透社的R52和R8以及Movie Review(MR)数据集,上述数据集具有鲜明的层次结构,与双曲空间的树相似特性契合。训练集与测试集划分与文献[16]中的分割方法相同。表1展示了上述数据集的统计特征。

表1 数据集统计信息Table 1 Dataset statistics

(1)20NG 收集了20 个不同主题的新闻组集合,每个文档平均长度为221.26个单词。

(2)Ohsumed采用7 400个单标签文档,每个文档平均长度为23个单词。

(3)R8有8个类别,R52有52个类别,每个文档平均长度分别为65.72和69.82个单词。

(4)MR 是一个用于情感分类的电影评论数据集,该语料库有5 331条正面评论和5 331条负面评论。

评价指标为正确率(Accuracy),表示预测正确的样本数占样本总数的百分比。

3.2 对比算法

实验将算法与多种最先进的文本分类基线模型进行了比较,8种模型如下:

(1)传统深度学习方法:CNN-rand、CNN-non-static、LSTM和Bi-LSTM。其中CNN-rand表示使用随机词向量作为输入,而CNN-non-static、LSTM和Bi-LSTM则采用预训练的词向量作为输入。

(2)使用词语上下文信息的分类方法:fastText[23]和SWEM[24]。fastText 使用多个单词及其n-gram 特征,加快了模型处理速度。SWEM 通过对词向量进行简单的池化操作提升了分类性能。

(3)基于图的文本分类方法:TextGCN和HyperGAT[25]。其中TextGCN 使用图卷积网络学习图中节点(单词、文档)的特征向量表示。HyperGAT 则是一种基于双注意机制的模型,其支持文本超图上的表示学习,以更少的计算量获得了更多的表达能力。

3.3 实验环境与参数设置

本实验在服务器上进行,实验的基本环境如下:操作系统为Ubuntu 18.04、GPU 为Nvidia RTX A4000、CUDA版本为11.7、Python环境版本为Python 3.8、深度学习框架使用TensorFlow2.9.0。所有模型的参数设置与文献[16]相同,其中dropout为0.5,单头注意力机制为8维,Adam优化器的学习率为0.02。使用预训练的词嵌入作为CNN-non-static、LSTM和Bi-LSTM模型的输入。

3.4 结果分析

表2显示了各模型的正确率。L-HGAT模型在四个数据集上均表现最好,在R52 数据集上精度略低于HyperGAT,但也得到了比较有竞争力的结果,这表明了该模型在文本分类数据集上的普适性以及有效性。CNN擅长捕捉局部特征,相比提供随机单词嵌入,当提供预先训练过的单词嵌入时,在长文本数据集Ohsumed和上也有较好的表现。基于LSTM 的模型也比较依赖预先训练好的单词嵌入,并且在文档较短时往往表现更好。fastText 的性能明显优于LSTM 和Bi-LSTM,因为它采用有监督的方式并利用标签信息来学习更有区别性的文本嵌入。SWEM 的精度提升则证明了简单的池化方法的有效性。TextGCN在MR上优于基于CNN和基于LSTM的模型,进一步证明了捕获长距离的单词交互的重要性。L-HGAT 模型效果与基准模型相比效果提升的主要原因是:模型通过在双曲空间学习文本的嵌入表示,一定程度上避免了表示坍缩现象,同时使用改进的图注意力网络捕获邻域节点信息并进一步学习了文本与标签之间的隐含关系,有利于混淆类别的区分。

表2 实验结果对比(正确率)Table 2 Comparison of experimental results(accuracy)

为了验证双曲流行表征在文本分类任务中的有效性,本文设计一种对比实验,使用Word2vec、Glove以及本文所使用的双曲流行表征等三种嵌入表示作为输入,并设计了基于欧式特征的分类器。其中W-Classifier表示使用Word2vec 词嵌入作为输入,使用GAT 学习节点信息,使用余弦相似度作为标签文本的交互函数的分类器。G-Classifier 与W-Classifier 模型架构相同,但使用Glove 词嵌入。由于双曲数据只能在双曲空间进行计算,H-Classifier 将双曲流行表征映射到切空间,使用GAT 学习节点信息后,映射回双曲空间,并使用双曲距离作为标签文本交互函数。三种分类器在R8数据集和20NG数据集上的计算结果如图2所示。实验结果表明基于双曲流行表征的H-Classifier分类器准确度最高,并且在嵌入维度为100 时相较于Word2vec 嵌入和Glove嵌入存在更明显的优势。这是因为双曲表征的高内聚低耦合特性,能够用更少的参数量来表达词语相关性、文本层级结构等信息。

图2 不同文本表征对于文本分类的影响Fig.2 Effect of different word embedding for text classification

为了验证双曲注意力机制的有效性,本文设计了一种消融实验,实验结果如表3所示。表中欧式注意力模型L-GAT 作为对比算法。L-GAT 模型使用欧式特征作为输入,使用余弦相似度距离作为标签与文本的交互函数,表中展示了欧式注意力机制和双曲注意力机制在不同嵌入维度设置下的结果。从表3中可以看出,双曲注意力模型整体上效果更好,在较低维度下,L-HGAT 也有良好的性能表现。

表3 消融实验Table 3 Ablation experimental results

为了验证标签优化文本表示对于文本分类的作用,使用四种算法作为对比,分别为:欧式注意力模型记为欧式无标签,欧式注意力模型融合标签优化表示记为欧式有标签,只包含双曲注意力机制而没有标签引导文本学习的模型记为双曲无标签,L-HGAT算法记为双曲有标签,实验结果如图3 所示,在所有基准数据集上双曲有标签模型效果最好。在Ohsumed 数据集上欧式有标签模型准确度高于双曲无标签模型,而在其他四个基准数据集上欧式有标签模型虽然略低于双曲无标签模型,但也有较好的表现,并且全部有标签模型准确度都高于对应的无标签模型,这说明了标签与文本交互能够提升文本分类精度。

图3 标签与文本交互对于分类的影响Fig.3 Influence of interaction between label and text for text classification

为了验证双曲多头注意网络的影响,使用欧式多头注意网络L-GAT作为对比。实验将所有数据集的节点表示维数设为300,以探索不同注意头数量下的L-HGAT的性能。验证双曲多头注意网络的实验结果如图4~图7所示。

图4 注意力头数对20NG数据集的影响Fig.4 Effect of number of attention head on 20NG dataset

图5 注意力头数对R8数据集的影响Fig.5 Effect of number of attention head on R8 dataset

图6 注意力头数对Ohsumed数据集的影响Fig.6 Effect of number of attention head on Ohsumed dataset

图7 注意力头数对MR数据集的影响Fig.7 Effect of number of attention head on MR dataset

在四个数据集上的计算结果表明,相比于欧式多头注意模型(Euclidean),双曲多头注意模型(Hyper)精度更高,这是因为双曲多头注意模型能够更好地结合不同层次不同焦点的相关特征而增强表示能力。无论是欧式多头注意还是双曲多头注意都比自注意网络精度更高。这是因为多头注意网络往往能够在模型训练过程中融合节点的多种特征作为辅助信息。

3.5 复杂度分析

计算复杂度由运算中的乘法次数决定,L-HGAT模型中的乘法运算主要存在于顶点的特征映射和计算注意力系数过程中。顶点的特征映射,即将d维的向量qi映射到d′维的双曲空间,其中d和d′分别为输入特征和输出特征的维数,M是d×d′维的参数矩阵。因此的时间复杂度是O(d·d′),对于所有的顶点的特征进行映射,则其时间计算复杂度为为图中的节点数。计算注意力系数过程中的αij=f(hi,hj)将2×d′维的向量映射到一个实数上,则其计算复杂度为O(d′),计算注意力系数的次数为图的边数,因此该时间计算复杂度为,|E|为图中边数。综上所述,L-HGAT 的时间复杂度为,其复杂性与其他图神经网络方法相同,如GAT、GCN等。除此以外,L-HGAT模型可以实现并行化提高数据处理效率。具体来说,节点的自注意力的计算可以在所有边上并行化,而文本聚合表示的计算也可以在所有节点上并行化。

4 结束语

本文在文本分类任务的特征选择问题中,考虑到传统欧氏空间文本分类方法对文本的层级结构关注较少并且忽视了标签对于文本特征学习的重要性的问题,设计了一种基于双曲图注意力网络的短文本分类算法。充分利用文本层级结构,加强对文本特征中的重要信息的提取能力,并利用标签信息进一步优化文本表示,以提升分类准确度。多个数据集上的实验结果表明所提算法较现有算法分类效果更好。在未来的工作中,还可以融合主题、知识等特征,构建更为丰富的异构图网络,提高分类精度。

猜你喜欢

双曲注意力标签
让注意力“飞”回来
中国科学技术馆之“双曲隧道”
双曲型交换四元数的极表示
无惧标签 Alfa Romeo Giulia 200HP
不害怕撕掉标签的人,都活出了真正的漂亮
一阶双曲型偏微分方程的模糊边界控制
“扬眼”APP:让注意力“变现”
A Beautiful Way Of Looking At Things
标签化伤害了谁
基于双曲和代数多项式的HC-Bézier曲线