Text-Level-BERTGCN:基于BERT优化的文本分类模型
覃晓1,2, 张金勇2, 郑宏春2     
1. 广西师范大学计算机科学与工程学院/软件学院/人工智能学院, 广西桂林 541004;
2. 南宁师范大学,广西人机交互与智能决策重点实验室, 广西南宁 530100
摘要: 传统基于文本级图卷积网络的文本分类模型在对文本进行构图时,只提取文本的空间结构信息,难以获取文本词的语义信息。针对上述不足,本文提出基于BERT(Bidirectional Encoder Representations from Transformers)优化的文本级图卷积网络Text-Level-BERTGCN(Text Level BERT Graph Convolutional Network)。具体来说,Text-Level-BERTGCN首先构建基于BERT和GCN的文本标签预测方法B2GCN,B2GCN利用BERT对文本级图进行优化以获取包含文本空间结构和语义信息的文本级图,并将优化后的文本级图信息输入图卷积神经网络中对文本标签进行预测;其次利用BERT对原始的文本进行分类预测;最后根据两个预测结果的混合损失对模型进行训练。因此,Text-Level-BERTGCN能够充分利用大规模预训练模型和文本级图神经网络的优势。在R8、R52和OHSUMED数据集上的实验结果表明,Text-Level-BERTGCN的文本分类效果优于传统的图卷积文本分类模型,特别是在OHSUMED数据集上的结果表明其具有较强的提取长文本信息能力。
关键词: BERT    GCN    长文本    文本分类    
Text-Level-BERTGCN: a Text Classification Model Based on BERT Optimization
QIN Xiao1,2, ZHANG Jinyong2, ZHENG Hongchun2     
1. School of Computer Science and Engineering/School of Software/School of Artificial Intelligence, Guangxi Normal University, Guilin, Guangxi, 541004, China;
2. Guangxi Key Laboratory of Human-machine Interaction and Intelligent Decision, Nanning Normal University, Nanning, Guangxi, 530100, China
Abstract: Conventional text classification models based on text-level Graph Convolutional Networks (GCNs) typically capture only the spatial structural information of texts during graph construction, which makes it difficult to obtain semantic information of words.To address this limitation, this paper proposes a novel model, Text-Level BERT Graph Convolutional Network (Text-Level-BERTGCN), which leverages Bidirectional Encoder Representations from Transformers (BERT) to enhance text-level GCNs.Specifically, Text-Level-BERTGCN first introduces B2GCN, a method that utilizes BERT to refine the text-level graph representation, thereby integrating both spatial structural and semantic information.The optimized graph representation is then fed into a GCN for text label prediction.Subsequently, BERT is independently employed to perform an initial text classification prediction.Finally, the model is trained by a combined loss function derived from the predictions of both components.This approach enables Text-Level-BERTGCN to effectively harness the strengths of large-scale pre-trained language models and text-level graph neural networks.Experimental results on the R8, R52, and OHSUMED datasets demonstrate that the proposed model outperforms conventional GCN-based text classification approaches.Notably, on the OHSUMED dataset, which consists of longer texts, Text-Level-BERTGCN exhibits superior capability in capturing long-range semantic and structural dependencies.
Key words: BERT    GCN    longer text    text classification    

文本分类是自然语言处理(Natural Language Processing,NLP)领域的重要技术,被广泛应用在垃圾邮件检测[1]、意见挖掘[2]等领域。深度学习技术因其优秀的特征抽取能力在文本分类领域得到了广泛的应用,如卷积神经网络(Convolutional Neural Network,CNN)[3]、循环神经网络(Recurrent Neural Network,RNN)和长短期记忆(Long Short-Term Memory,LSTM)网络[4]。CNN和RNN优先考虑文本局部特征信息[5],能较好地捕捉到文本局部连续序列的信息,但是会忽略语料库中具有非连续和长距离的全局信息,且不能捕捉到文本结构信息,而图结构是解决该类问题的好办法。

近年来,图神经网络(Graph Neural Network,GNN)[5]常用于半监督学习[6-7],被广泛应用于文本分类[8]、机器翻译[9]、关系推理[10]等NLP任务中。研究者使用GNN对文本数据构建异质图,基于图的空间结构对特征信息进行传播。例如,Yao等[6]基于整个语料库构建大图,然后对图进行卷积运算。Xin等[11]向图中添加标签信息节点,构建新型异构图卷积网络。Yang等[12]引入实体和主题等外部语义信息并学习它们之间的关系,以缓解短文中出现稀疏特征的问题。Yang等[13]基于单个文档构建文本图,使用GNN和BERT(Bidirectional Encoder Representations from Transformers)分别提取文本和语义特征,再将这两种特征在不同粒度级别结合起来以获得更有效的表示。Wang等[14]为每篇文本中的所有单词构建一个单一的图,通过融合各种上下文关系来标注边,并使用GNN和门控循环单元(Gated Recurrent Unit,GRU)进行文本分类。虽然这些模型充分考虑了文本的空间结构特征信息,但忽略了单个文本独有的特征,而文本级图神经网络模型[15]考虑了单个文本的独有特征,但未关注其语义信息,相比之下,大规模预训练模型能挖掘文本的深层语义信息。

大规模预训练模型BERT[16]采用无监督方式在大规模的无标注语料库上训练,能够挖掘文本中丰富的语义信息特征。因此,BERT被引入NLP各项任务中,并被证实其有效性。Zhang等[17]首次将BERT应用到文本生成任务上,提出一个基于序列到序列范式的独特二阶段模型,该模型同时在编码器和解码器利用BERT。Adhikari等[18]将BERT应用到文档分类的任务上,使用知识蒸馏方法将BERT学习到的知识迁移到LSTM模型以实现参数压缩和更快速的推理效果,同时提高了文档分类的基准。BERT模型虽然能提取文本的深层语义信息,但无法提取其空间结构信息。因此,Lu等[19]将BERT与变分图卷积网络(Variational Graph Convolutional Network,VGCN)结合起来,利用VGCN构建了整个数据集的图,并使用BERT同时提取局部与全局信息。Lin等[20]首先利用大量原始数据对BERT进行预训练,然后通过GCN进行标签传播,以同时优化训练数据和未标记测试数据的表示,最终提升了文本分类的效果。但上述工作未考虑单个文本的独有特征和语义信息。

为此,本文提出新的Text-Level-BERTGCN,将无监督方式的大规模预训练模型BERT与半监督方式的文本级图神经网络模型Text-Level-GCN结合,该模型基于文本级构图的词特征,分别使用B2GCN混合模型和BERT进行类别预测,并利用两个预测结果进行协同混合训练。该模型兼顾了文本语义特征及文本空间结构特征的提取,取得了较好的文本分类结果。

1 相关工作 1.1 文本级图神经网络模型Text-Level-GCN

在文本分类任务中,Defferrard等[8]首先使用GCN。此后,Yao等[6]对其进行改进并提出Text-GCN以考虑全图结构信息。Xin等[11]提出结合标签的LabelText-GCN。这些基于图卷积的文本分类方法都达到了不错的效果,但是存在内存消耗大、测试负担重等问题。

Huang等[15]提出一种新的构图方法Text-Level-GCN,该方法为每个文本单独构建一个独立的文本级图,每个文本级图的所有参数都来源于全局共享矩阵,从而充分发挥边的表达能力。文本级图采用消息传递机制,从上下文中获取信息,从而获得更精确的含义。通过较小的窗口来构建文本级图所提取到文本局部信息特征还能够大大减少内存消耗。但是Text-Level-GCN只考虑了单个文本的独有特征,忽视了文本深层语义信息。

1.2 大规模预训练模型BERT

BERT是一种由Google在大型语料库上预训练的大规模预训练语言模型,当其被应用到各类NLP下游任务时,一般要在任务相关数据集上对其进行微调[16, 21]。Zhang等[17]将BERT应用到文本生成任务上。Adhikari等[18]将BERT应用到文档分类任务上,通过微调BERT改进了文档分类的基准。Devlin等[16]将BERT应用在文本分类上,通过结合半监督[22]和无监督[23]表示学习的优势,使文本分类模型在文本分类任务上取得了不错的成绩。Lu等[19]构建了整个数据集的图,将预先训练好的模型与图神经网络相结合来提取特征。

但是,上述研究并没有考虑单个文本的结构信息,虽然BERT能对文本语义信息进行提取,但是无法提取文本的空间结构信息,而GNN可以捕获文本空间结构信息。本文模型将大规模预训练模型BERT和Text-Level-GCN结合,不仅综合了无监督和半监督学习,还同时考虑到文本深层语义信息及图的空间结构信息。

2 Text-Level-BERTGCN

Text-Level-BERTGCN的模型架构如图 1所示,其主要有两个模块:第一个模块是基于BERT的文本标签预测模块B2GCN,B2GCN使用BERT获取带有语义信息的节点特征和关联矩阵,将优化后的文本级图信息作为GCN的输入,进行文本分类预测;第二个模块将原始文本输入BERT中进行分类预测。最后对两个预测结果进行混合损失计算,将损失计算结果用于指导下一轮的预测训练。

图 1 Text-Level-BERTGCN的框架 Fig. 1 Framework of Text-Level-BERTGCN

2.1 基于BERT和GCN的文本标签预测方法B2GCN

B2GCN模块的结构图如图 2所示。B2GCN分为两个阶段:第一阶段[图 2(a)]是基于BERT优化的文本构图阶段,相比于传统的文本构图,该阶段利用BERT取得文本中词汇的语义信息;第二阶段[图 2(b)]是文本标签预测阶段,该阶段在重复迭代的过程中,利用BERT不断将单词的语义融入空间信息中,再通过GCN对带有语义的文本图信息进行传播,并预测文本标签。

图 2 B2GCN模块 Fig. 2 B2GCN module

2.1.1 带语义信息的文本级图构造

D为文档的集合,TDT为文档集D中含有n个单词的文本。文本级图定义为

$ G=(V, E, A), $ (1)

其中,V是图中顶点的集合,每一个顶点对应着文本T的一个单词,V={v1, v2, …, vn};E是文本级图的边集合,E={eij=(vi, vj)∣i∈[1, n],j∈[i-$ {\mathcal{L}}$, i+$ {\mathcal{L}}$]},其中,$ {\mathcal{L}}$是滑动窗口的大小。A是使用PMI(Pointwise Mutual Information)算法[24]构建出的全局共享互信息矩阵,A(i, j)=PMI(D)=PMI(vi, vj)=$ \log \frac{p\left(v_i, v_j\right)}{p\left(v_i\right) p\left(v_j\right)}$p是单词在文档中出现的概率,A[vi, vj]表示整个文档集D中单词vi和单词vj之间的关联度。

由于BERT具有提取文本单词语义信息的作用,因此本文使用BERT来初始化文本级图节点特征表示,即V′=BERT(V),得到初始化后的文本级图,表示为

$ G_T=\left(V^{\prime}, E, A\right) \text { 。} $ (2)

在文本级构图中,使用weij记作边eij的权重, 即:

$ A\left[v_i, v_j\right]=\left\{\begin{array}{c} w_{e_{i j}}, e_{i j} \in E \\ 0, e_{i j} \notin E \end{array}。\right. $ (3)

经过BERT优化,得到语义文本级图GT的图顶点为带有语义信息的单词节点。

2.1.2 文本标签预测

B2GCN的文本标签预测阶段如图 2(b)所示,为了进一步将语义信息融入文本图的空间信息中,B2GCN继续对语义文本级图GT=(V′, E, A)进行优化,边集合E和互信息矩阵A经过BERT之后,都携带了语义信息,得到EBAB,如公式(4)所示:

$ G_T^B=\operatorname{BERT}\left(G_T\right)=\left(V^B, E^B, A^B\right) 。$ (4)

此时,GTB的文本特征可以用公式(5)表示:

$ \begin{aligned} F\left(G_T^B\right)= & \left.x_1^b, x_2^b, \cdots, x_n^b\right\}=\text { embedding }\left(v_1^b, \right. \\ \left.v_2^b, \cdots, v_n^b\right) \text { 。} & \end{aligned} $ (5)

接下来,使用信息传递机制(Message Passing Mechanism, MPM)[25]进行特征更新和提取。MPM计算过程如公式(6)、(7)所示:

$ m_i =\max\limits_{j \in \mathcal{N}_i^L} w_{e_{i j}} x_j^b, $ (6)
$ x_i^{\prime} =\left(1-\eta_i\right) m_i+\eta_i x_i^b, $ (7)

其中,$ m_i \in \mathbb{R}^d$从邻居节点汇聚的特征信息;max (·)将每个维度上的最大值组合成一个新的特征向量作为输出;$ \mathcal{N}_i^{\mathcal{L}}$为离节点i最近的$ \mathcal{L}$个邻居节点;weij$ \mathbb{R}$为边eij的权重值;xjb为邻居节点的特征信息;xi为聚合并更新信息之后的节点ixib为原始节点i的前一种特征状态,ηi$ \mathbb{R}$是节点i的可训练参数,表示xib的应保留信息量。文本级图中的节点首先从邻居节点收集信息,然后将源节点信息和邻居节点信息聚合并更新。

最后,使用文本中所有节点的表示来预测文本的标签,表示为

$ y_{\mathrm{B} 2 \mathrm{GCN}}=\operatorname{Softmax}\left(\operatorname{ReLU}\left(W \sum\limits_{n \in N_T} x_i^{\prime}+b\right)\right), $ (8)

其中,W是将向量映射到输出空间的矩阵;NT是文本T的节点集;b是偏差;ReLU函数负责从文本的节点特征中提取非线性信息,而Softmax函数则将这些信息转化为对文本标签的预测概率。

B2GCN模块伪代码如下:

算法1  B2GCN模块

输入:文本级图G=(V, E, A)

输出:分类预测值yB2GCN

1:V′=BERT(V);

2:GT=(V′, E, A);

3:for epoch 1 to n do

4: GTB=BERT(GT)=(VB, EB, AB);//将文本级图输入到BERT

5: F(GTB)={x1b, x2b, …, xnb}=embedding(v1b, v2b, …, vnb);//微调BERT计算节点特征

6: 利用公式(6)、(7)将计算后的特征作为GCN的输入;

7: 利用公式(8)计算文本标签预测值yB2GCN

8:end for

9:return yB2GCN

2.2 预测文本标签BERT模块

为保留原始文档的语义信息,减少在后续混合学习过程中原始文本的语义损失,本文同时应用BERT对原始文本T进行分类预测。即把文本T的特征向量表示F(V)作为输入,输出分类预测值yBERT

$ Q=W^Q \times F(V), $ (9)
$ K=W^K \times F(V), $ (10)
$ V=W^V \times F(V), $ (11)
$ H_i^F=\operatorname{softmax}\left(\frac{Q \times K^{\mathrm{T}}}{\sqrt{D_k}}\right) V, $ (12)
$ y_{\mathrm{BERT}}=\operatorname{softmax}\left(W_i^B H_i^F\right), $ (13)

其中,QKV分别是查询、键和值的矩阵;Dk是矩阵的维数,HiF表示第i次迭代的文本表示,WQWKWV分别对应查询、键和值的可训练权重矩阵。

2.3 B2GCN与BERT联合训练

为了使模型能够更快地收敛,将B2GCN的分类预测值和BERT的分类预测值进行加权。本文设置了一个可变参数φ,用于平衡两个模型作用的节点预测,从而让模型得到更好的优化。综上,节点特征的最终表示形式为

$ y_i=\varphi y_{\mathrm{B} 2 \mathrm{GCN}}+(1-\varphi) y_{\mathrm{BERT}} 。$ (14)

最后,利用标记的单词节点的交叉熵损失loss来联合优化BERT和GCN的参数,公式表示为

$ \operatorname{loss}=-g_i \log y_i, $ (15)

其中,yi是预测标签,gi是真实标签。

Text-Level-BERTGCN算法伪代码如下:

算法2  Text-Level-BERTGCN

输入:Ti, ε;// Ti为待分类文本,ε为参数

输出:文本的分类预测标签yi

1:G=(V, E, A);// 初始化Ti为文本级图

2:do

3: yB2GCN=B2GCN(GTi);

4: Q=WQF(Vi),K=WKF(Vi),V=WVF(Vi),HiF=$ \operatorname{softmax}\left(\frac{Q K^{\mathrm{T}}}{\sqrt{D_k}}\right) V$; //将文本Ti输入到BERT中计算特征

5:  yBERT=softmax(WiBHiF);

6:  yi=φyB2GCN+(1-φ)yBERT

7:loss=-gilogyi;//利用标记的单词节点的交叉熵损计算loss,返回参数优化BERT和GCN的参数,最后联合训练模型

8:while loss < ε

9:return yi

3 实验与结果分析 3.1 实验环境

本文实验环境基于Ubuntu 16.04的Linux系统,配备GeForce RTX 2080 Ti显卡(CUDA版本9.2)和Intel Xeon(R) Gold 5115 CPU(2.40 GHz×20)。

3.2 实验数据

本文使用的语料库包括Reuters-21578数据集[26]的子集R8、R52[27]和MEDLINE数据库的OHSUMED[28]。MEDLINE数据库是为多标签分类设计的,本文删除了带有两个或更多标签的文本。对于上述数据集,本文从训练集中随机选择10%的文本以构建验证集。表 1为数据集的汇总统计信息。

表 1 数据集的汇总统计信息 Table 1 Summary statistics of datasets
数据集
Dataset
训练集
Training set
测试集
Testing set
单词数
Number of words
类别
Category
平均长度
Average length
R8 5 485 2 189 7 688 8 65.72
R52 6 532 2 568 8 892 52 69.82
OHSUMED 3 357 4 043 14 157 23 135.82

本文与多种用于文本分类的先进模型进行了比较。①CNN[3]:卷积神经网络,对词嵌入执行卷积和最大池化操作以获取文本表示;②LSTM[4]:长短期记忆网络,使用最后一个隐藏状态作为整个文本的表示;③Bi-LSTM[29]:双向长短期记忆网络,通常用于文本分类;④fast-Text[30]:将文档的词及n-gram向量叠加后计算向量的平均值得到文档向量,然后使用文档向量进行分类;⑤Graph-CNN[8]:图卷积神经网络,能够将CNN扩展到图上,并直接处理图类型的数据,将单词嵌入相似图进行卷积运算;⑥Text-GCN[6]:一种基于图的文本分类模型,能为整个语料库构建文本图;⑦Text-Level-GCN[15]:一种基于Text-GCN的构建小文本图的方法,能够进一步减少内存消耗及边数。

3.3 参数细节

为实现与相关模型的统一比较,本文采用如表 2所示的实验参数配置。

表 2 参数细节 Table 2 Parameter details
参数
Parameter

Value
Word feature vector Glove 200d
Optimization function Adam optimizer
Initial learning rate 1×10-3
L2 weight decay coefficient 1×10-4
BERT learning rate 1×10-5
Dropout rate 5×10-1

对于BERT模块,本文使用BERTTokenizer来分割文本,并使用[CLS]标志的输出特征作为文本的嵌入,然后使用前馈层来推导最终的预测。本文使用BERT-base-unbase和Text-level-GCN来实现Text-Level-BERTGCN。

3.4 评价指标

本文采用文本分类任务中广泛采用的准确率(Accuracy)作为评价指标,它指的是模型正确预测的样本数量占总样本数量的比例,能够直观反映文本分类模型对文本数据的分类能力。准确率可表示为

$ \text { Accuracy }=\frac{T P+T N}{\mid \text { All Samples } \mid}, $ (16)

其中,TP为真正例,指的是模型正确预测为正类的样本数量;TP为真负例,指的是模型正确预测为负类的样本数量;|All Samples|为样本总数。

3.5 对比实验

表 3展示了本文提出的模型Text-Level-BERTGCN与其他对比模型在R8、R52和OHSUMED 3个数据集上的分类结果,本文将所有模型都运行了10遍,实验结果取平均准确率±标准差。观察实验结果可以发现,Text-Level-BERTGCN在3个数据集上都取得了最高的分类精度。

表 3 不同数据集上的对比实验结果 Table 3 Comparative experimental results on different datasets 
Unit: %
模型
Model
R8 R52 OHSUMED
CNN[3] 94.1±0.5 87.5±0.2 58.3±0.9
LSTM[4] 96.0±0.2 90.6±0.7 51.2±0.7
Bi-LSTM[29] 96.2±0.3 90.4±0.5 49.2±0.8
fast-Text[30] 96.1±0.2 92.8±0.1 57.7±0.4
Graph-CNN[8] 96.8±0.2 92.8±0.2 63.9±0.5
Text-GCN[6] 96.9±0.2 93.5±0.2 67.4±0.4
Text-Level-GCN[15] 97.8±0.2 94.6±0.3 69.4±0.6
Text-Level-BERT-GCN(Ours) 98.1±0.1 95.8±0.2 70.6±0.3
Note: the best results are in bold.

分析实验结果可知,因为R8和R52数据集具有顺序特征,且文本篇幅较OHSUMED数据集短,所以标签预测任务比较容易取得好的效果。以R8数据集为例,fast-Text的准确率为96.1%,Text-Level-GCN的准确率为97.8%,而Text-Level-BERTGCN可以达到98.1%的准确率。这是因为Text-Level-BERTGCN使用了BERT对文本级图的词顶点进行语义信息提取,同时将BERT与GCN进行混合训练,其充分利用大规模预训练模型和文本级图神经网络的优势,提高了分类精度。

OHSUMED数据集中的文本长度较长,而长文本分类一直是文本分类领域的重大难题。从实验对比结果来看,CNN、LSTM、Bi-LSTM、fast-Text这些传统模型在处理长文本时表现并不乐观,分类精度最好仅能达到58.3%。而使用GNN后,由于GNN采用信息聚合的图卷积计算方式,可以聚合更远的文本信息,因而Graph-CNN、Text-GCN和Text-Level-GCN这一类以GNN为基础的文本分类模型在效果上有了明显的提升,最好达到69.4%。由于加入了BERT模块,Text-Level-BERTGCN利用BERT的自注意力模块可以注意更远的单词,因而其在分类任务上取得了最好的分类效果,达到70.6%。这说明Text-Level-BERTGCN可以提取距离更远的文本语义信息和结构信息,在处理长文本的数据集时有一定的优势。

3.6 消融实验

为了充分验证Text-Level-BERTGCN中不同模块的作用,本节设计了多组消融实验,分别在R8、R52和OHSUMED 3个数据集上验证各个模块的有效性。实验结果如表 4所示,其中,baseline为Text-Level-GCN,BERT指的是Text-Level-BERTGCN第二个模块的BERT,BERT指的是B2GCN第二阶段的BERT。

表 4 Text-Level-BERTGCN在3个数据集上的结构性消融实验 Table 4 Ablation experiments on each module of Text-Level-BERTGCN on three datasets 
Unit: %
序号
No.
模型
Model
R8 R52 OHSUMED
1 baseline 97.8 94.6 69.4
2 baseline+B2GCN 98.0 95.3 70.2
3 baseline+BERT+BERT 97.9 94.5 69.9
4 baseline+BERT 97.8 95.7 70.4
5 Text-Level-BERTGCN(Ours) 98.1 95.8 70.9
Note: the best results are in bold.

首先对B2GCN模块的分类效果进行验证(No.2),由表 4可知,其在3个数据集的分类精度比原始baseline分别高了0.2、0.7、0.8百分点,说明B2GCN能够利用BERT将语义信息融合进文本图的空间信息,并结合GCN的信息传播优势,提取文本的深层语义以及空间结构特征。

如果去掉B2GCN第一阶段中用于初始化文本级图结点的BERT,只保留第二阶段的BERT(No.3),相较于原始baseline,模型性能在R8和OHSUMED数据集上分别提升0.1和0.5百分点,这说明经过BERT初始化的文本级图节点嵌入了语义信息,这对文本分类任务有一定的贡献。但是相较于完整的B2GCN(No.2),模型性能明显下降,这说明BERT初始化图节点嵌入对模型的重要性,大规模预训练模型生成的单词嵌入能够为文本级图神经网络提供高质量的初始化特征表示。

为了考察BERT对文本分类结果的影响,本节单独测试了BERT在3个数据集上的分类效果(No.4)。从实验结果来看,BERT在R52和OHSUMED数据集上的分类效果比B2GCN稍好。这是因为BERT能深层解读文本语义信息,对长文本的语义依赖拥有更好的识别能力。因此,Text-Level-BERTGCN融合BERT和GCN(No.5),结合了两种模型的优点,在3个数据集上均取得最好的成绩。

此外,本节还研究了平均池化操作对模型结果产生的影响。如表 5所示,在构建全局共享互信息矩阵A时进行平均池化操作后,准确率会有所上升,这是因为平均池化有利于减少词与词间关系特征的损失。

表 5 平均池化对模型的影响结果 Table 5 Result of the impact of average pooling on the model 
Unit: %
模型
Model
平均池化
Average pooling
R8 R52 OHSUMED
Ours (without pooling) 98.0 95.5 70.5
Ours (with pooling) 98.1 95.8 70.9
Note: the best results are in bold.

3.7 特征维度实验

图 3展示了在R52数据集上特征维度对Text-Level-BERTGCN性能的影响。结果表明,当特征维度较小时,模型不能很好地提取文本特征;而当特征维度过大时,模型性能会下降,并且训练时长有所增加。在特征维度等于200时,效果达到最佳。

图 3 特征维度对Text-Level-BERTGCN性能的影响(R52) Fig. 3 Impact of feature dimension on the performance of Text-Level-BERTGCN (R52)

3.8 训练时间对比实验

表 6对比了Text-Level-GCN和Text-Level-BERTGCN在3个数据集上训练迭代所需的时间。结果显示,Text-Level-BERTGCN在3个数据集上训练的时间比Text-Level-GCN平均延长了160.67 s,原因是BERT的加入增加了模型参数量,延长了训练时间,但是模型能够达到更优的性能,因此牺牲一点时间是可取的。

表 6 训练所需时间对比 Table 6 Comparison of the time required for model training
数据集
Dataset
模型
Model
训练时间/s
Training time/s
准确率/%
Accuracy/%
R8 Text-Level-GCN 450 97.8
Text-Level-BERTGCN 615 98.1
R52 Text-Level-GCN 557 94.6
Text-Level-BERTGCN 637 95.8
OHSUMED Text-Level-GCN 646 69.4
Text-Level-BERTGCN 883 70.9

3.9 参数φ的影响

φ是一个可变参数,用于调节Text-Level-BERTGCN分类预测和BERT分类预测的加权比例。如图 4所示,在OHSUMED数据集上,当φ=0.6时,模型性能达到最优,这说明对于长文本数据集,语义特征对分类的影响更为重要,在训练中需要更大的比例。

图 4 φ对Text-Level-BERTGCN性能的影响(OHSUMED) Fig. 4 Impact of φ on the performance of Text-Level-BERTGCN (OHSUMED)

3.10 滑动窗口大小$ {\mathcal{L}}$的影响

滑动窗口大小$ {\mathcal{L}}$对于Text-Level-BERTGCN性能的影响如图 5图 6所示。在R8数据集上,当$ {\mathcal{L}}$=3时,模型性能达到最优;在OHSUMED数据集上,当$ {\mathcal{L}}$=4时,模型性能达到最优。可以发现,随着滑动窗口变大,模型的准确率总体呈下滑趋势,这是因为当滑动窗口增大时,窗口内节点的邻居数增加,模型无法理解跨越多个单词的依赖关系,容易忽略局部特征。

图 5 滑动窗口大小$ {\mathcal{L}}$对Text-Level-BERTGCN性能的影响(R8) Fig. 5 Impact of sliding window size $ {\mathcal{L}}$ on the performance of Text-Level-BERTGCN (R8)

图 6 滑动窗口大小$ {\mathcal{L}}$对Text-Level-BERTGCN性能的影响(OHSUMED) Fig. 6 Impact of sliding window size $ {\mathcal{L}}$ on the performance of Text-Level-BERTGCN (OHSUMED)

4 结论

本文提出一种基于BERT优化图结构的文本分类模型——Text-Level-BERTGCN,其充分利用了大规模预训练模型的无监督学习和图神经网络模型的半监督学习在文本分类中的优势。具体而言,首先,Text-Level-BERTGCN在为每个文本构建单独的文本级图时,使用BERT对其图节点进行初始化,提取到文本的空间结构信息和语义信息;其次,使用B2GCN和BERT进行混合训练来完成文本分类的任务。文本级图结构受益于大规模预训练模型生成的单词嵌入,使得在混合模型训练过程中,GCN聚合特征时能学到语义特征。对比实验结果证明,Text-Level-BERTGCN在R8、R52和OHSUMED数据集上的分类效果优于先进的Text-Level-GCN模型。

未来将考虑将蒸馏技术应用在BERT上,在保持性能的前提下减少模型的参数量。此外,将进一步优化BERT和图神经网络模型的融合,使得模型效果更具有可解释性。最后,如何将外部知识作为特征补充,以进一步提高模型性能也是一个有前景的研究方向。

参考文献
[1]
SHANKAR S. Advanced detection of spam and email filtering using natural language processing algorithms[J]. International Journal of Advance Research, Ideas and Innovations in Technology, 2018, 4: 714-717.
[2]
PANG B, LEE L. Opinion mining and sentiment analysis[J]. Foundations and Trends© in Information Retrieval, 2008, 2(1/2): 1-135.
[3]
KIM Y. Convolutional neural networks for sentence classification[EB/OL]. (2014-09-03)[2023-12-22]. https://arxiv.org/abs/1408.5882.
[4]
LIU P F, QIU X P, HUANG X J. Recurrent neural network for text classification with multi-task learning[EB/OL]. (2016-05-17)[2023-12-22]. https://arxiv.org/abs/1605.05101.
[5]
BATTAGLIA P W, HAMRICK J B, BAPST V, et al. Relational inductive biases, deep learning, and graph networks[EB/OL]. (2018-10-17)[2023-12-22]. https://arxiv.org/abs/1806.01261.
[6]
YAO L, MAO C S, LUO Y. Graph convolutional networks for text classification[C]//Proceedings of the 33rd AAAI Conference on Artificial Intelligence (AAAI). New York: AAAI, 2019, 33(1): 7370-7377.
[7]
LIU X E, YOU X X, ZHANG X, et al. Tensor graph convolutional networks for text classification[C]//Proceedings of the AAAI Conference on Artificial Intelligence (AAAI). New York: AAAI, 2020, 34(5): 8409-8416.
[8]
DEFFERRARD M, BRESSON X, VANDERGHEYNST P. Convolutional neural networks on graphs with fast localized spectral filtering[C]//Proceedings of the 30th International Conference on Neural Information Processing Systems. Cambridge: MIT Press, 2016: 3844-3852.
[9]
BASTINGS J, TITOV I, AZIZ W, et al. Graph convolutional encoders for syntax-aware neural machine translation[EB/OL]. (2020-06-18)[2023-12-22]. https://arxiv.org/abs/1704.04675.
[10]
BATTAGLIA P, PASCANU R, LAI M, et al. Interaction networks for learning about objects, relations and physics[C]//Proceedings of the 30th International Conference on Neural Information Processing Systems. Cambridge: MIT Press, 2016: 4509-4517.
[11]
XIN Y, XU L L, GUO J L, et al. Label incorporated graph neural networks for text classification[C]//Proceedings of the 25th International Conference on Pattern Recognition (ICPR). Milan: IEEE, 2020: 8892-8898.
[12]
YANG T C, HU L M, SHI C, et al. HGAT: heterogeneous graph attention networks for semi-supervised short text classification[J]. ACM Transactions on Information Systems, 2021, 39(3): 1-29.
[13]
YANG Y P, CUI X H. BERT-enhanced text graph neural network for classification[J]. Entropy, 2021, 23(11): 1536. DOI:10.3390/e23111536
[14]
WANG Y Z, WANG C X, ZHAN J Y, et al. Text FCG: fusing contextual information via graph learning for text classification[J]. Expert Systems with Applications, 2023, 219: 119658. DOI:10.1016/j.eswa.2023.119658
[15]
HUANG L Z, MA D H, LI S J, et al. Text level graph neural network for text classification[C]//Proceedings of the 2019 Conference on Empirical Methods in Natural Language Processing and the 9th International Joint Conference on Natural Language Processing (EMNLP-IJCNLP). New York: ACL, 2019: 3442-3448.
[16]
DEVLIN J, CHANG M W, LEE K, et al. BERT: pre-training of deep bidirectional transformers for language understanding[C]//Proceedings of the 2019 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies. New York: ACL, 2019: 4171-4186.
[17]
ZHANG H Y, XU J Y, WANG J. Pretraining-based natural language generation for text summarization[EB/OL]. (2019-04-12)[2023-12-22]. https://arxiv.org/abs/1902.09243.
[18]
ADHIKARI A, RAM A, TANG R, et al. DocBERT: BERT for document classification[EB/OL]. (2019-04-18)[2023-12-22]. https://arxiv.org/abs/1904.08398.
[19]
LU Z B, DU P, NIE J Y. VGCN-BERT: augmenting BERT with graph embedding for text classification[C]//Proceedings of the European Conference on Information Retrieval (ECIR). Cham: Springer, 2020: 369-382.
[20]
LIN Y X, MENG Y X, SUN X F, et al. BERTGCN: transductive text classification by combining GCN and BERT[EB/OL]. (2022-03-21)[2023-12-22]. https://arxiv.org/abs/2105.05727.
[21]
SUN C, QIU X P, XU Y G, et al. How to fine-tune BERT for text classification[C]//China National Conference on Chinese Computational Linguistics (CCL 2019). Cham: Springer, 2019: 194-206.
[22]
MUKHERJEE S, AWADALLAH A H. Uncertainty-aware self-training for text classification with few labels[EB/OL]. (2020-06-27)[2023-12-22]. https://arxiv.org/abs/2006.15315.
[23]
YE Z Q, GENG Y X, CHEN J Y, et al. Zero-shot text classification via reinforced self-training[C]//Proceedings of the 58th Annual Meeting of the Association for Computational Linguistics. Stroudsburg: ACL, 2020: 3014-3024.
[24]
CHURCH K, HANKS P. Word association norms, mutual information, and lexicography[J]. Computational linguistics, 1990, 16(1): 22-29.
[25]
GILMER J, SCHOENHOLZ S S, RILEY P F, et al. Neural message passing for quantum chemistry[C]//International Conference on Machine Learning. New York: AAAI, 2017: 1263-1272.
[26]
CHEN G B, YE D H, XING Z C, et al. Ensemble application of convolutional and recurrent neural networks for multi-label text categorization[C]//2017 International Joint Conference on Neural Networks (IJCNN). Piscataway: IEEE, 2017: 2377-2383.
[27]
CAI H Y, LV S Q, LU G Y, et al. Graph convolutional networks for fast text classification[C]//2022 4th International Conference on Natural Language Processing (ICNLP). Piscataway: IEEE, 2022: 420-425.
[28]
HERSH W, BUCKLEY C, LEONE T J, et al. OHSUMED: an interactive retrieval evaluation and new large test collection for research[C]//Proceedings of the Seventeenth Annual International ACM-SIGIR Conference on Research and Development in Information Retrieval (SIGIR'94). London: Springer, 1994: 192-201.
[29]
HUANG Z H, XU W, YU K. Bidirectional LSTM-CRF models for sequence tagging[EB/OL]. (2015-08-09)[2023-12-22]. https://arxiv.org/abs/1508.01991.
[30]
JOULIN A, GRAVE E, BOJANOWSKI P, et al. Bag of tricks for efficient text classification[EB/OL]. (2016-08-09)[2023-12-22]. https://arxiv.org/abs/1607.01759.