郑州大学学报(理学版)  2024, Vol. 56 Issue (2): 43-50  DOI: 10.13705/j.issn.1671-6841.2022168

引用本文  

王乾, 曾诚, 何鹏, 等. 基于RoBERTa-RCNN和注意力池化的新闻主题文本分类[J]. 郑州大学学报(理学版), 2024, 56(2): 43-50.
WANG Qian, ZENG Cheng, HE Peng, et al. News Topic Text Classification Based on RoBERTa-RCNN and Attention Pooling[J]. Journal of Zhengzhou University(Natural Science Edition), 2024, 56(2): 43-50.

基金项目

国家自然科学基金项目(61977021,61902114);湖北省重点研发计划项目(2021BAA184)

通信作者

曾诚(1976-), 男, 教授, 主要从事人工智能、自然语言处理和知识图谱研究, E-mail: zc@hubu.edu.cn

作者简介

王乾(1999—),男,硕士研究生,主要从事自然语言处理和文本分类研究,E-mail: wqmaster521@163.com

文章历史

收稿日期:2022-06-24
基于RoBERTa-RCNN和注意力池化的新闻主题文本分类
王乾1, 曾诚1,2,3, 何鹏1,2,3, 张海丰1, 余新言1    
1. 湖北大学 计算机与信息工程学院 湖北 武汉 430062;
2. 湖北省软件工程技术研究中心 湖北 武汉 430062;
3. 智慧政务与人工智能应用湖北省工程研究中心 湖北 武汉 430062
摘要:针对中文新闻主题因缺乏上下文信息而造成语义模糊和用词规范性不高的问题,提出一种基于RoBERTa-RCNN和多头注意力池化机制的新闻主题文本分类方法。利用数据增强技术对部分训练数据进行回译处理,再通过自编码预训练模型和RCNN对文本进行初步和深度的特征提取,并结合多头注意力思想改进最大池化层。该方法采用融合机制,改善了RCNN中最大池化策略单一和无法进行动态优化的缺陷。在三个新闻主题数据集上进行实验,使用更适用于新闻主题分类的Mish函数代替ReLU函数,并利用标签平滑来解决过拟合问题。结果表明,所提方法相比传统分类方法效果突出,并通过消融实验验证了模型在分类任务上的可行性。
关键词预训练语言模型    文本分类    循环卷积神经网络    注意力机制    标签平滑    数据增强    
News Topic Text Classification Based on RoBERTa-RCNN and Attention Pooling
WANG Qian1, ZENG Cheng1,2,3, HE Peng1,2,3, ZHANG Haifeng1, YU Xinyan1    
1. School of Computer and Information Engineering, Hubei University, Wuhan 430062, China;
2. Hubei Software Engineering Technology Research Center, Wuhan 430062, China;
3. Hubei Engineering Research Center of Intelligent Government Affairs and Artificial Intelligence Application, Wuhan 430062, China
Abstract: In order to solve the problem of semantic ambiguity and low standardization of words caused by the lack of context information of Chinese news topics, a news topic text classification method based on RoBERTa-RCNN and multi-head attention pooling mechanism was proposed.Data augmentation technique was used to back-translate part of the training data.The self-coding pre-training model and RCNN were used to extract preliminary and deep features of text, and the idea of multi-head attention was combined to improve the maximum pooling layer. This method adopted fusion mechanisms to improve the defects that the maximum pooling strategy in RCNN was single and couldn′t be dynamically optimized. Experiments were conducted on three news topic data sets and used the Mish function which was more suitable for news topics classification instead of ReLU function.The label smoothing was used to solve the overfitting problem.The results showed that the proposed method was more effective than traditional classification methods, and the feasibility of the model in classification task was verified through ablation experiments.
Key words: pre-trained language model    text classification    recurrent convolutional neural network    attention mechanism    label smoothing    data augmentation    
0 引言

文本分类是自然语言处理中的一项重要任务,并且广泛应用于情感分析[1]、垃圾短信过滤[2]等信息挖掘领域。随着社交媒体的增多,人们日益感受到新闻传播对整个社会的推动作用,新闻主题分类所面临的问题也越来越严重。某些新兴媒介利用新闻传播主体分散、传播快速、内容碎片化的特性,在对重大事件的报道中存在着虚假、以偏概全等问题,一旦出现重大的负面新闻事件并且在网络上快速传播,将不利于社会稳定。因此,对新闻主题分类技术进行研究就显得尤为必要。

新闻主题分类属于文本分类任务。相比长文本,短新闻文本因篇幅有限,缺少上下文和语义信息,并且在标题中存在口语化、用词不恰当、语义稀疏等问题,如何有效地进行新闻主题分类成为自然语言处理的重要研究方向。

近年来,新闻主题文本分类大多使用基于深度学习的分类方法,取代了特征提取与机器学习结合的分类方法,并且越来越多的文本分类模型选择引入注意力机制并加以改进,以提高文本分类效果。Ye等[3]改进了单通道词向量转换模块,在LSTM后加入注意力机制进一步获取局部特征,这种方式可以将注意力集中到有意义的词上。Yao等[4]基于CNN模型改进其最大池化层,结合池化层中的注意力机制来增强生成的特征。陶永才等[5]通过改进池化层机制,使用最大池化和平均池化获得词向量,利用注意力机制对词向量分配权重。Liu等[6]利用注意力池化来提取话语层面的情感特征嵌入,在分类任务上有较理想的识别效果。

针对当前新闻主题分类所面临的问题,本文提出一种基于RoBERTa和RCNN的多头注意力池化的新闻主题文本分类方法,简称为RMAP。在三个新闻主题数据集上的实验结果表明,该模型的泛化能力、分类效果均优于对比模型,证明了RMAP模型的有效性和正确性。本文的主要贡献如下:1) 针对新闻主题文本分类,首先对文本进行预处理,将部分数据使用数据增强方法扩充其蕴含的语义特征,选用RoBERTa预训练语言模型,将其作为初步词向量转换层,然后通过一个融合机制的RCNN模块对向量进行上下文语义的学习;提出一种融合多头注意力思想的池化机制代替最大池化层,并将经过激活层的向量分别通过最大池化和多头注意力池化机制模块,以提取文本的有效特征和局部关键信息,再将两者的输出向量融合。2) 针对训练过程出现的过拟合问题,使用标签平滑来确保模型的泛化性。实验结果表明,RMAP方法在三个数据集上有较好的表现,并通过消融实验进一步证明方法的可行性,为新闻主题分类提供一定的参考。

1 相关工作 1.1 基于预训练语言模型的文本分类

OpenAI公司提出生成式预训练模型,带来了“预训练+微调”的自然语言处理新范式,预训练后的模型可以直接根据下游任务需求进行微调,免去了从零开始的过程[7]

Devlin等[8]提出的BERT模型是一种基于深层Transformer的预训练语言模型,该模型不仅充分利用大规模无标注文本的语义信息,同时还增加了自然语言处理中各个任务所使用的模型深度。Liu等[9]针对BERT会耗费较大的数据资源和算力资源的问题,提出RoBERTa模型。该模型是在BERT的基础上,摒弃了NSP任务并引入动态掩码技术, 在预训练过程中使用更大规模的语料库。

在中文RoBERTa模型中,由于采用了更大的批次和BPE词表训练,可以在下游任务训练之前,在文本转化为词向量的过程中保留更多的有效分类信息,更适合本文的新闻主题分类任务。因此,将RoBERTa预训练模型作为词向量转换层。

1.2 文本分类中的数据增强方法

数据增强技术旨在对现有的数据通过小幅度的扩充来缓解深度学习技术所面对的数据量缺乏和特征稀疏问题。数据增强技术最初应用于计算机视觉领域[10],后来被自然语言学者引入自然语言处理的各个领域。

文本分类中现有的数据增强技术有增加或者减少噪声、替换同义词、Mixup[11]等方法。Wei等[12]提出一种包含多种数据增强技术的方法EDA,如同义词替换、随机插入、随机交换、随机删除等。该方法在小规模英文数据集上有较好的效果,虽然其适用性仍不够广泛,但也为自然语言处理领域中的数据增强技术提供了借鉴作用。本文针对新闻数据集中部分文本特征量稀缺、规范性差等问题,对部分数据文本使用回译技术进行处理,并在消融实验中将数据增强设为了消融量来进行比较。

2 模型框架及相关技术 2.1 RMAP整体框架及流程

针对RoBERTa模型无法有效地提取文本上下文的特征,且RCNN中的最大池化策略单一的问题,本文提出的RMAP模型采用融合机制,分别提取文本的全局语义特征信息和局部语言特征信息。模型总体框架如图 1所示。

图 1 模型总体框架 Fig. 1 Overall framework of the model
2.2 词向量转换模块

RoBERTa是在BERT模型基础上优化而来的,沿用了BERT的基本结构。本文调用中文RoBERTa模型,从词嵌入层获取初始字向量E1~En,然后输入多层双向Transformer[13]编码器中,以获得带有特征信息的向量T1~Tn

2.3 RCNN模块

与传统的基于窗口的神经网络相比较,RCNN能够改善文本窗口大小不足的缺陷,在文本分类任务上有更好的分类效果。因此,针对新闻文本分类的特点,加入RCNN模型作为深度特征提取模块。RCNN结构如图 2所示。

图 2 RCNN结构 Fig. 2 RCNN structure

在经典RCNN模型的词表示学习过程中,采用Bi-LSTM获得文本的上下文信息,并将Bi-LSTM获得的隐层输出与词向量进行拼接,组合为新的词表示,

$ \boldsymbol{c}_{l}\left(\omega_{i}\right)=f\left(\boldsymbol{W}^{(l)} \boldsymbol{c}_{l}\left(\omega_{i-1}\right)+\boldsymbol{W}^{(s l)} \boldsymbol{e}\left(\omega_{i-1}\right)\right), $ (1)
$ \boldsymbol{c}_{r}\left(\omega_{i}\right)=f\left(\boldsymbol{W}^{(r)} \boldsymbol{c}_{r}\left(\omega_{i+1}\right)+\boldsymbol{W}^{(s r)} \boldsymbol{e}\left(\omega_{i+1}\right)\right), $ (2)

其中:cl(ωi)表示第i个目标词上、下文的上文;cr(ωi)表示第i个目标词上、下文的下文,它们都是维度为c的向量;e(ωi-1)和e(ωi+1)分别表示第i-1和i+1个词的词向量;W(l)W(r)Rc×c是当前隐藏层转换到下一个隐藏层的权重矩阵; W(sl)W(sr)是将当前词的语义与下一个词的上、下文进行语义结合的矩阵; f为非线性激活函数。

获取目标词上、下文表示后,将其与目标词的词向量进行拼接,

$ \boldsymbol{x}_{i}=\left[\boldsymbol{c}_{l}\left(\omega_{i}\right) ; \boldsymbol{e}\left(\omega_{i}\right) ; \boldsymbol{c}_{r}\left(\omega_{i}\right)\right] 。$ (3)

一条文本的词表示通过xi拼接后可以表示为

$ \mathit{\boldsymbol{X}}=\left[\mathit{\boldsymbol{x}}_{1}, \mathit{\boldsymbol{x}}_{2}, \cdots, \mathit{\boldsymbol{x}}_{\mathit{\boldsymbol{i}}}\right] 。$ (4)

文本词向量表示通过映射后,进行激活函数的处理,

$ \boldsymbol{Y}_{i}=f\left(\boldsymbol{W}_{i} \boldsymbol{X}+b_{i}\right), $ (5)

其中:映射矩阵WiR为属于CNN过滤器的权重;bi是偏置量;f(·)代表激活函数,常见的有ReLU和Tanh函数,本文选用更适合新闻分类的Mish激活函数。

2.4 多头注意力与池化结合机制

在新闻主题分类任务中,一条文本的某个突出的特征不足以让分类器对文本归类,最大池化层策略存在单一和特征突出不明显等缺点。如果继续使用最大池化策略,容易导致分类器丢失关键信息,且注意力机制提取的文本特征仍然会有局限性。因此,提出注意力机制和池化层相结合的方法来替代原来的池化层,使用多头注意力机制对文本在不同子空间进行加权,使模型充分学习新闻文本深层特征。

多头注意力的主要计算过程可以归纳如下。

1) 在文本分类任务中,将每条文本的向量作为qkv分别映射到不同子空间中,矩阵乘积过程为

$ \begin{aligned} & {\left[q_{1}, q_{2}, \cdots, q_{h}\right] \boldsymbol{W}^{q_{h}}=\left[q_{1} \boldsymbol{W}^{q_{1}}, q_{2} \boldsymbol{W}^{q_{2}}, \cdots, q_{h} \boldsymbol{W}^{q_{h}}\right]=} \\ & {\left[\boldsymbol{Q}_{1}, \boldsymbol{Q}_{2}, \cdots, \boldsymbol{Q}_{h}\right], } \\ & {\left[k_{1}, k_{2}, \cdots, k_{h}\right] \boldsymbol{W}^{k_{h}}=\left[k_{1} \boldsymbol{W}^{k_{1}}, k_{2} \boldsymbol{W}^{k_{2}}, \cdots, k_{h} \boldsymbol{W}^{k_{h}}\right]=} \\ & {\left[\boldsymbol{K}_{1}, \boldsymbol{K}_{2}, \cdots, \boldsymbol{K}_{h}\right], } \\ & {\left[v_{1}, v_{2}, \cdots, v_{h}\right] \boldsymbol{W}^{v_{h}}=\left[v_{1} \boldsymbol{W}^{v_{1}}, v_{2} \boldsymbol{W}^{v_{2}}, \cdots, v_{h} \boldsymbol{W}^{v_{h}}\right]=} \\ & {\left[\boldsymbol{V}_{1}, \boldsymbol{V}_{2}, \cdots, \boldsymbol{V}_{h}\right], } \end{aligned} $ (6)

其中:qhkhvh分别为多头注意力各子空间的查询、键、值;WqhWkhWvh为在训练中随机生成的权重矩阵;h为子空间的数量。

2) 多头自注意力机制采用缩放点积注意力,计算公式为

$ \boldsymbol{u}=\left[u_{1}, u_{2}, \cdots, u_{i}\right]=F(\boldsymbol{Q}, \boldsymbol{K})=\frac{\boldsymbol{Q}^{{\bf{T}}} \boldsymbol{K}}{\sqrt{d_{k}}}, $ (7)

其中:F函数采用了缩放机制。因为矩阵内积会产生较大的数值,导致softmax函数结果位于饱和区域,使得softmax后的结果稀疏,进而导致梯度稀疏,不利于梯度反向传递。为解决这一问题,将内积结果除以$\sqrt{d_{k}}$,将其变为标准的正态分布,以使softmax后的结果更稳定。

通过使用softmax函数,利用注意力分数ui计算注意力的权重分布ai

$ a_{i}=\operatorname{softmax}\left(u_{i}, u_{j}\right)=\frac{\exp u_{i}}{\sum\limits_{j=1}^{n} u_{j}}。$ (8)

V加权求和得到注意力机制的输出,多头注意力机制的计算过程为

$ { AttentionValue }=\sum\limits_{i=1}^{n} a_{i} \oplus \boldsymbol{V}_{i}, $ (9)
$ h_{i}={ AttentionValue }\left(\boldsymbol{Q} \boldsymbol{W}^{q_{i}}, \boldsymbol{K} \boldsymbol{W}^{k_{i}}, \boldsymbol{V} \boldsymbol{W}^{v_{i}}\right), $ (10)
$ MultiheadAtt ={Concat}\left(h_{1}, h_{2}, \cdots, h_{i}\right) \boldsymbol{W}^{o}。$ (11)

最大池化层的基本操作是为词向量矩阵的每一个维度都设定一个滑动窗口,去掉文本词向量中其他的值,仅保留维度中最大的值,

$ M p={ maxpooling }\left(\boldsymbol{y}_{1}, \boldsymbol{y}_{2}, \cdots, \boldsymbol{y}_{\boldsymbol{i}}\right) 。$ (12)

最大池化层保留了文本单个关键信息,注意力机制则注意到与输入文本关联大的局部信息,引入多头的思想进一步提取文本所有特征。将最大池化层、多头注意力模块的结果进行融合,并通过全连接层可得

$ R E= { Dense }\left(M_{p} \oplus { MultiheadAtt }\right) 。$ (13)
2.5 激活函数

深度学习文本分类方法多选用ReLU函数作为激活函数,本文选用Mish函数[14],Mish函数具有非单调且光滑的特点。这两种非线性激活函数可以分别表示为

$ \text{ReLU}: f(x)=\max (0, x), $ (14)
$ {{\rm{Mish:}}} f(x)=x \cdot \tanh \left(\ln \left(1+\mathrm{e}^{x}\right)\right) 。$ (15)

图 3为Mish函数与ReLU函数的图像演示对比。可以看出,Mish函数的梯度比ReLU函数更加平滑,故使用Mish函数可以将更多的特征信息加入模型中,从而有效地改善了新闻主题的分类效果。

图 3 Mish函数与ReLU函数的对比 Fig. 3 Mish function versus ReLU function
2.6 正则化方法

训练过程中,模型在面对数据较少或特征量较少的情况时,训练集会出现过拟合现象。针对这一现象,设置一种适用于新闻主题分类的标签平滑正则化方法,目的在于使真实标签减少极端化,并给予标签一定的容错率。

标签平滑技术已经被应用于许多先进的模型中,包括图像分类、语言翻译和语音识别任务等[15]。在本文的文本分类任务中,模型会根据当前文本对应的各个类别返回一个置信分数,再经过softmax归一化处理,得到当前文本属于某一个类别的概率px作为训练的输入,得到的每一个类i的概率为

$ p_{(i \mid x)}=\frac{\exp \left(z_{i}\right)}{\sum\limits_{j=1}^{K} \exp \left(z_{j}\right)} 。$ (16)

文本分类使用的交叉熵损失函数为

$ L o s s_{\text {cro }}=-\sum\limits_{i=1}^{K} p_{i} \log q_{i}, $ (17)

其中:qi为真实标签概率。

文本分类模型的训练数据是以文本正确标签和错误标签差值最小为目标来学习的,当训练数据有限时,会导致过拟合问题的发生,故对Loss进行了改进,

$ { Loss }= \begin{cases}(1-\varepsilon) * { Loss }_{\mathrm{cro}}, & i=y, \\ \varepsilon * { Loss }_{\mathrm{cro}}, & i \neq y, \end{cases} $ (18)

其中:本文取超参数ε=0.1。

2.7 数据增强

针对部分新闻文本因语义不明显而导致语义特征难以被提取出来的问题,在文本进行预处理后,通过回译算法调用百度翻译API翻译为英文,然后将英文再回译为中文。回译算法具体步骤如下。

算法1  回译算法

输入:file即原训练集txt文件路径。

输出:通过翻译API回译的文本。

步骤1  content=read_samples(file)//读取文件,获取文本

          例如:“手机钱包”亮相科博会

步骤2  def translate(content, src, tar):

              httpClient=http.client.HTTPConnection(′api.fanyi.baidu.com′)

              httpClient.request(′GET′, myurl)

              response=httpClient.getresponse()

              result_all=response.read().decode("utf-8")

              return result=json.loads(result_all)

步骤3  English_ct=translate(content, zh, en)[′trans_reasult′][0][′dist′]//取出返回的英文翻译结果

步骤4  Chinese_content=translate(English_content, en, zh)[′trans_reasutl′][0][′dist′]//取出返回的中文翻译结果

步骤5  retrun Chinese_content//“手机钱包”在科技博览会亮相

回译处理能够扩大样本的特征空间,但有可能导致原文语义歧义化。例如,文本“青年驾跑车和公交车对峙引发交通堵塞”经过回译就修改为“驾驶跑车和公交车的年轻人之间的对峙造成了交通堵塞”,这带来了语义上的歧义,会影响分类器对文本标签的判断。为了确保实验效果的准确性,仅将训练集中10%的数据进行回译处理。

3 实验与分析

实验环境及环境配置如下:操作系统为Windows10,CPU为Intel(R) 4210 CPU@2.20 GHz,显卡型号为NVIDIA GeForce RTX5000-16G,开发语言使用Python3.8,开发框架使用Pytorch1.10.0。

3.1 实验数据

为测试本文RMAP模型在新闻主题文本分类任务上的性能,采用了THUNews、SHNews和Toutiao三个数据集。将数据集划分为训练集、验证集和测试集,并去除了特殊字符以及停用词。三个数据集的具体情况如下。

1) THUNews数据集。该数据集是根据新浪新闻RSS订阅频道2005—2011年的历史数据筛选过滤生成的。在原始新浪新闻分类体系的基础上,重新整合并划分为10个候选分类类别,即财经、房产、股票、教育、科技、社会、时政、体育、游戏、娱乐,共有20万条数据,每个数据类别约2万条。

2) SHNews数据集。该数据集是由搜狗实验室整理的开源数据,包含娱乐、财经、房地产、旅游、科技、体育、健康、教育、汽车、新闻、文化、女人12个类别,共有34 500条数据, 每个数据类别约2 800条。

3) Toutiao数据集。该数据集是由今日头条客户端收集而来, 包括民生、文化、娱乐、体育等15个类别,共有382 688条数据,每个数据类别约25 500条。

3.2 评价标准

采用准确率(Acc)、精确率(P)、召回率(R)和F1值对模型进行评价,具体公式为

$ A c c=\frac{T P+T N}{T P+F P+T N+F N}, $ (19)
$ P=\frac{T P}{T P+F P}, $ (20)
$ R=\frac{T P}{T P+F N}, $ (21)
$ F 1=\frac{2 T P}{2 T P+F N+F P}。$ (22)

本文实验为多类别文本分类任务,需考察不同类别下分类器的优劣,使用sklearn模块中评价函数classification_report计算宏平均值,即每个分类类别评估指标未加权的平均值,

$ { {\mathit{macro}}{\rm{\_ }}} {\mathit{P}}=\frac{1}{n} \sum\limits_{i=1}^{n} P_{i}, $ (23)
$ { macro{\rm{\_ }}} R=\frac{1}{n} \sum\limits_{i=1}^{n} R_{i}, $ (24)
$ { macro{\rm{\_ }}F1 }=\frac{2 \times { macro{\rm{\_ }}} P \times { macro } {\rm{\_ }}R}{ { macro{\rm{\_ }}} P+ { macro{\rm{\_ }}} R} 。$ (25)
3.3 对比实验设置

为了验证RMAP模型的分类性能,在相同实验环境下与以下基准模型进行对比。

1) TextCNN: 2014年EMNLP会议提出将CNN应用于文本分类任务,设置参数卷积核(2, 3, 4),卷积核数量为256。

2) FastText:将文本序列投影到词嵌入模型,通过池化操作得到文本特征后再进行分类,模型没有卷积操作,在分类任务上速度更快。

3) TextRNN-ATT:基于TextRNN模型加入自注意力机制,通过LSTM输出局部关键信息,再利用注意力机制计算注意力分数。

4) TextRCNN:使用双向LSTM获得上下文信息,再将其隐层输出与词向量做拼接后进行最大池化。

5) BERT-Fc:用谷歌AI发布的BERT对文本进行特征提取,BERT内部包含12个Transformer-encoder层,然后接全连接层进行分类。

6) BERT-RCNN[16]: 用BERT预训练模型进行特征提取,输出的词向量通过使用Bi-LSTM获得上下文信息,将双向LSTM的隐层输出与encoder输出进行拼接后,接全连接层进行分类。

7) BERT-FPnet[17]:通过BERT的输出与多层全连接层进行特征提取,将其与特征投影网络方法相结合。

8) RoBERTa-Fc: 使用RoBERTa得到模型初步特征提取后的词向量,再通过LSTM提取深层语义特征。

9) RoBERTa-RCNN: 使用RoBERTa得到模型初步特征提取后的词向量,然后使用Bi-LSTM获得上下文信息,再将双向LSTM的隐层输出与词向量进行拼接。

3.4 实验参数设置

使用RoBERTa中文预训练模型,其主要参数如下:隐藏层尺寸为768,隐藏层层数为12,激活函数为GeLU。

使用的RCNN模型的主要参数如下:RNN维度为256,dropout为0.1,激活函数为Mish。

实验使用的多头注意力子空间个数经过多次实验后确定为8,随机失活率设为0.1。模型经过多次训练得到的学习率设为5×10-5, batch_size设为64, 优化器选择效果较优的BertAdam, 模型预热参数设为0.5。

3.5 对比实验结果

不同模型在三个新闻数据集上的实验结果如表 1所示(最优结果加黑显示)。其中,TextCNN、FastText、TextRNN-ATT和TextRCNN使用Word2vec进行词向量转换。

表 1 不同模型在三个数据集上的实验结果 Tab. 1 Experimental results of different models on three datasets 

表 1可以看出,在文本分类领域中使用BERT和RoBERTa比使用Word2vec词向量模型效果更好;本文RMAP模型在SHNews、THUNews、Toutiao数据集上的准确率分别为87.89%、94.75%、87.05%。结果表明,无论是准确率还是其他评价指标,RMAP模型在三个数据集上分类效果均最好。与使用Word2vec词向量方法中实验效果较好的模型相比,RMAP模型在三个数据集上的准确率分别有6.01%、2.74%、3.25%的提升,证明了使用预训练语言模型可以提取更多的语义信息。与使用了预训练语言模型的基准模型中实验效果较好的模型相比,RMAP模型在三个数据集上的F1值分别有2.67%、0.37%、0.50%的提升,从而证明了本文模型的有效性。

将RMAP模型与SHNews数据集上效果较好的传统模型以及使用RoBERTa、BERT的融合模型进行对比。不同模型在SHNews数据集上的准确率比较如图 4所示。可以看出,在SHNews数据集上迭代400次,RMAP模型准确率提升最为明显,并且其准确率较快趋于平稳且高于其他基准模型。

图 4 不同模型在SHNews数据集上的准确率比较 Fig. 4 Accuracy comparison of different models on SHNews dataset

通过对训练过程的分析以及实验结果的比较可以看出,使用预训练语言模型的RoBERTa-Fc、BERT-Fc及融合RCNN模型的分类效果明显高于使用Word2vec词向量的TextRCNN、TextRNN-ATT。使用预训练语言模型在词向量转换阶段获取的语义特征比Word2vec效果更佳,这得益于预训练语言模型基于涵盖数百万数据的语料库训练的结果。本文利用预训练语言模型方法可以更有效地保留文本信息,RCNN模型也可以更好地结合文本词与词之间的关系,获得更深层次的特征信息,并且在融合多头注意力和最大池化机制对关键信息进行捕获方面有着动态优化的优势,RMAP模型的各项指标都获得了提升。

通过测试实验训练后保存的模型,对文本样例进行真实分类测试,如文本样例“戏墨·墨戏——中国水墨戏画展”可以正确分类为文化,“五星级酒店人才需求旺盛”可以正确分类为旅行。从真实分类结果来看,RMAP模型对于文本分类结果都是正确的,能够适应真实应用场景。

3.6 消融实验

为验证本文RMAP模型在分类任务上的有效性,在SHNews数据集上进行消融实验。去掉标签平滑技术保留数据增强的实验为RMAP(Da-no Lb),去掉数据增强保留标签平滑技术的实验为RMAP(Lb-no Da),去掉数据增强和标签平滑技术的实验为RMAP(no Lb&Da),分别与本文RMAP模型进行对比,不同模型经过多次实验,消融实验结果如表 2所示。

表 2 消融实验结果 Tab. 2 Results of ablation experiment 

表 2可知,实验组RMAP(Lb-no Da)在原模型RMAP(no Lb&Da)基础上评价指标均有小幅度提升,证明本文提出的正则化方法具有减少模型过拟合的作用,从而可以更好地泛化。实验组RMAP(Da-no Lb)同样在原模型基础上评价指标有小幅度提升,证明数据增强的回译技术可以让部分文本扩充文本量,使隐含特征更加明显。

4 结语

本文提出一个将RoBERTa预训练语言模型与传统模型RCNN相结合的新闻主题文本分类方法RMAP,针对RCNN中最大池化策略单一的问题,使用更有效的多头注意力池化机制,并且在实验过程加入标签平滑的训练策略,进一步保证模型不会因过拟合而影响实验最终结果。RMAP模型的准确率有较为明显的提升:一是得益于RoBERTa预训练模型的训练效果,使得词向量初步提取特征阶段保留较多的语义信息;二是使用多头注意力机制动态分配权重,整体考虑了文本每个词对分类结果的影响;三是使用标签平滑技术减少了模型训练的过拟合现象。本文仅针对新闻主题文本分类,未来将通过多任务学习和引入知识图谱等方式,进一步提升分类器的分类效果。

参考文献
[1]
GAO Z W, LI Z Y, LUO J Y, et al. Short text aspect-based sentiment analysis based on CNN+BiGRU[J]. Applied sciences, 2022, 12(5): 2707. DOI:10.3390/app12052707 (0)
[2]
刘伍颖, 王琳. 面向垃圾短信过滤的亚文档集成学习[J]. 郑州大学学报(理学版), 2017, 49(3): 59-64.
LIU W Y, WANG L. Sub-document ensemble learning for SMS spam filtering[J]. Journal of Zhengzhou university (natural science edition), 2017, 49(3): 59-64. (0)
[3]
YE X F, YE Q M, YAN X C, et al. Demand forecasting of online car-hailing with combining LSTM+attention approaches[J]. Electronics, 2021, 10(20): 2480-2493. DOI:10.3390/electronics10202480 (0)
[4]
YAO C J, CAI M M. A novel optimized convolutional neural network based on attention pooling for text classification[J]. Journal of physics: conference series, 2021, 1971(1): 1971-1979. (0)
[5]
陶永才, 杨朝阳, 石磊, 等. 池化和注意力相结合的新闻文本分类方法[J]. 小型微型计算机系统, 2019, 40(11): 2393-2397.
TAO Y C, YANG Z Y, SHI L, et al. Method of news text classification combining pooling and attention mechanism[J]. Journal of Chinese computer systems, 2019, 40(11): 2393-2397. (0)
[6]
LIU J W, WANG H X, SUN M Z, et al. Graph based emotion recognition with attention pooling for variable-length utterances[J]. Neurocomputing, 2022, 496: 46-55. DOI:10.1016/j.neucom.2022.05.007 (0)
[7]
余同瑞, 金冉, 韩晓臻, 等. 自然语言处理预训练模型的研究综述[J]. 计算机工程与应用, 2020, 56(23): 12-22.
YU T R, JIN R, HAN X Z, et al. Review of pre-training models for natural language processing[J]. Computer engineering and applications, 2020, 56(23): 12-22. (0)
[8]
DEVLIN J, CHANG M W, LEE K, et al. BERT: pre-training of deep bidirectional transformers for language understanding[EB/OL]. (2020-08-17)[2022-01-17]. https://www.researchgate.net/publication/328230984. (0)
[9]
LIU Y, OTT M, GOYAL N, et al. RoBERTa: a robustly optimized BERT pretraining approach[EB/OL]. (2019-07-26)[2022-01-15]. https://doi.org/10.48550/arXiv.1907.11692. (0)
[10]
CONNOR S, TAGHI K. A survey on image data augmentation for deep learning[EB/OL]. (2019-07-06) [2022-04-16]. https://journalofbigdata.springeropen.com/articles/10.1186/s40537-019-0197-0. (0)
[11]
ZHANG H, CISSE M, DAUPHIN Y N, et al. Mixup: beyond empirical risk minimization[EB/OL]. (2018-04-27)[2022-04-16]. https://doi.org/10.48550/arXiv.1710.09412. (0)
[12]
WEI J, ZOU K. EDA: easy data augmentation techniques for boosting performance on text classification tasks[C]//Proceedings of the Conference on Empirical Methods in Natural Language Processing and the 9th International Joint Conference on Natural Language Processing. Stroudsburg: Association for Computational Linguistics, 2019: 6382-6388. (0)
[13]
VASWANI A, SHAZEER N, PARMAR N, et al. Attention is all you need [C]//Proceedings of the Conference on Neural Information Processing Systems. Cambridge: MIT Press, 2017: 5998-6008. (0)
[14]
MISRA D. Mish: a self regularized non-monotonic neural activation function[EB/OL]. (2019-10-02). [2022-05-10]. https://doi.org/10.48550/arXiv.1908.08681. (0)
[15]
MULLER R, KORNBLITH S, HINTON G. When does label smoothing help[EB/OL]. (2020-06-10) [2022-03-10]. https://doi.org/10.48550/arXiv.1906.02629. (0)
[16]
YUAN S J, WANG Q X. Imbalanced traffic accident text classification based on BERT-RCNN[J]. Journal of physics: conference series, 2022, 2170(1): 2190-2197. (0)
[17]
张海丰, 曾诚, 潘列, 等. 结合BERT和特征投影网络的新闻主题文本分类方法[J]. 计算机应用, 2022, 42(4): 1116-1124.
ZHANG H F, ZENG C, PAN L, et al. News topic text classification method based on BERT and feature projection network[J]. Journal of computer applications, 2022, 42(4): 1116-1124. (0)