APP下载

基于BERT和RNN的新闻文本分类对比

2021-12-14林德萍汪红娟

北京印刷学院学报 2021年11期
关键词:准确率神经网络分类

林德萍,汪红娟

(北京印刷学院,北京 102600)

1 绪论

1.1 选题背景

自然语言处理是当前人工智能领域中一个重要的研究方向,有着极其重要的地位,其目的在于研究如何将人类的语言或者说是人类的想法传达给计算机,从而实现人与计算机之间的交流。人类与动物之间的主要区别在于人类有着其他生物所没有的语言系统,而动物无法进行直接的语言交流。因此人类信息的传递需要借助大量的语言文字,人类的各种发明、创新思维和经验知识等都需要通过语言文字的形式传承下去。所以说人工智能的核心就是自然语言处理,自然语言处理可以应用在人类实际生活中的诸多方面,例如机器翻译、舆情监测、自动摘要、观点提取、文本分类等方面[1]。随着计算机技术的不断发展及计算机的不断升级更新换代,计算机已经可以通过学习逐渐达到人类的水平,在各方面得到扩展进而处理越来越多的自然语言处理任务。

而我们今天要研究的则是其中一个重要方面:新闻文本分类不同模型的对比试验。总的来说就是通过两个不同的已经训练好的神经网络分类模型,将同一新闻文本数据集代入其中进行训练,通过实验得出将新闻文本数据集进行标签分类的准确率等评价指标,再将两个实验结果进行对比从而比较两个方法的优缺点。具体的细节将在后面的章节详细说明。

1.2 研究意义

在人类丰富而灿烂的历史当中,文字起着传承和发扬文明的重要作用。五千年的华夏文明,只有通过文字这个必不可少的传输介质才能源远流长,才能让后人感受并学习先人的智慧。不仅仅是对历史的传承,在当今社会中,我们的日常生活更是离不开文字。一方面,我们需要借助文字才能进行知识的学习和日常的沟通交流;另一方面随着计算机技术的普及和应用领域越来越广泛,借助计算机来处理文字信息,学习文字信息,最终将有效的信息传达给人类实现人工智能,对现代人类来说变得更加意义非凡。

随着大数据时代的到来,人类在使用电子产品的过程中每天都会产生大量的数据信息[2],同样互联网内记录每天世界各地的新闻信息也在不断更新。为了更好更快地处理这些海量新闻,提取出人们相对感兴趣的新闻文本,将新闻文本信息进行分类就是其中的关键环节。文本分类,是将复杂的数据进行很好的归纳总结,从而更加高效地对事物进行判断和改进。其中新闻文本分类就是分类问题的中的重要组成部分,也是人工智能领域中的基础问题。在过去计算机尚未发明出来的时代,海量且冗余的信息只能耗费大量的人力物力来实现并不显著的分类效果,效率低下且分类质量不佳。因此,利用计算机远超过人类的计算能力以及节约资源等优点,通过机器学习的过程,让计算机进行文本分类,不仅节约了大量资源更具有划时代的重大意义。

而面对众多学者提出的不同分类算法和训练模型,为人类筛选出更为高效、更为精准的分类方法,使计算机在文本分类过程中达到最佳分类效果也因此意义重大。新闻文本分类因此能够更好地实现新闻分类的精确,这不仅仅是精度上的提高,在人类的实际生活中更是实现了利益最大化,资源合理化,实实在在地把人类的生活提高了一个档次,在实际应用过程中有着卓越意义。

1.3 本文主要研究内容

本文主要分为以下四个章节进行具体研究:

第一章为本文的研究背景及意义,主要阐述了进行文本分类的研究意义,进而引出本文针对新闻文本分类来进行对比试验以此找出更加高效且精准的分类模型的现实意义。

第二章为相关理论与技术的概述,本章主要介绍了当下流行的文本分类模型,包括循环神经网络、长短期记忆网络以及Transformer模型和BERT模型的基础知识。

第三章为两个新闻文本分类模型的对比实验分析,以新闻数据集为基础,对比了两个模型之间的异同,根据评价指标分析用于文本分类模型的优势之处。

第四章为对本文的总结和展望,总结了本文的工作,并对下一步分类模型的改进和创新方向提出展望。

2 相关理论与技术

2.1 循环神经网络以及文本分类

循环神经网络(Recurrent Neural Network,RNN)和传统的前馈神经网络相比,它不仅仅是通过连接不同层次来进行信息传递,而是在网络中引入环状结构来建立神经元到自身的连接[3]。通过该环状结构增加上一节点存储在网络中的记忆,从而影响下一步的网络输出。循环神经网络的改进,是推进深度学习领域快速发展中浓墨重彩的一笔,目前已经应用在了自然语言处理等诸多领域,文本分类就是其中一个非常具有现实意义的研究方向。许多学者对文本分类的研究与改进就是基于循环神经网络的,文本分类本质上可以说是一种特征提取,而循环神经网络为特征提取提供了有效的解决方式,因此能够为文本分类提供很好的解决思路。

2.1.1 RNN循环神经网络

循环神经网络属于递归神经网络,输入序列数据后在其演进方向递归,连接所有节点(循环单元)的方式是链式[4]。和卷积网络的输入数据相比,循环神经网络不仅输入数据X,还将每一步的输出作为下一步的输入,每一次循环都采用相同的激活函数和参数。典型的循环神经网络结构模型如图1所示,右侧是将其按照时间序列展开之后的网络结构图。

图1 基础循环神经网络结构

2.1.2 LSTM长短期记忆网络

以序列化方向演进的循环神经网络,每次只能通过一个参数进行传播,但当输入信息量大且复杂的时候,序列化输入一个参数并不能满足需求,因此长短期记忆网络(Long Short Term Memory,LSTM)就诞生了,用来解决此类问题。LSTM属于门控算法,其单元包含了3个门控分别是输入门、遗忘门和输出门[5]。这个机制可以有选择地输入输出需要的信息,或者选择性地遗忘不需要的信息。LSTM是RNN的一种改进结构,和RNN隐藏层的递归运算相比,LSTM隐藏层节点结构是由三个门控单元组成的并在LSTM单元的内部建立了自循环,LSTM网络单元结构如图2所示:

图2 长短期记忆网络单元结构

详细来说,输入门决定内部单元该添加什么信息;遗忘门决定丢弃一些不需要的信息;输出门通过对前面状态的更新判断决定输出什么信息[6]。LSTM单元的更新方式如下:

式中fh,fs为系统状态和内部状态的激励函数,通常为双曲正切函数,g为随时间步更新的门控,本质上是以Sigmoid函数为激励函数的前馈神经网络,使用Sigmoid函数的原因是其输出在[0,1]区间,等效于一组权重。式中脚标i,f,o表示输入门、遗忘门和输出门。

2.2 Transformer模型以及文本分类

由于RNN自身的网络结构优势,它可以将不同长度大小的数据信息从前往后进行线性传导[7],且经过改进成LSTM结构后引入三个门控,可以捕获更长距离的数据特征。因此从某种角度来说,RNN天然适合解决NLP这种线性序列应用的问题场景,这也是为什么RNN在发展之初就迅速占领了自然语言处理领域的高地,并在文本分类的处理任务上曾经风靡一时的原因。然而随着技术的不断发展,近几年后起之秀Transformer逐渐占据了主导地位,成为新的主流方法。究其原因,主要还是RNN本身的序列依赖结构并不适用于信息量巨大的并行运算[8]。从并行计算能力来看Transformer目前具有明显的优势。近年来基于Transformer的文本分类模型越来越多,并在新闻文本分类等具体实际上的应用取得了较好的效果,引发了越来越多学者的关注。

2.2.1 Transformer模型整体

Transformer模型最早是由Google提出的,该模型的提出是为了解决机器翻译任务中传统网络训练时间过长,难以较好实现并行计算的问题。经过大量实验表明,这个模型对于语序特征的提取和传统的RNN、LSTM相比效果较好因此逐渐广泛应用。

Transformer模型并行效果好且训练速度快的原因在于它不再是传统的时序结构,而是一种编码机制,该编码同时包括了语义信息(Multi-Head Attention)和位置信息(Positional Encoding)[10]。

Transformer模型大量使用了注意力机制来代替RNN中的时序结构因此让整个模型实现并行计算,如图3为Transformer模型的整体结构图。整个模型分为Encoder以及Decoder两部分(分别对应图3的左边和右边)。

图3 Transformer模型的整体结构

2.2.2 BERT模型

BERT(Bidirectional Encoder Representations from Transformer)模型可以说是一个多层双向的Transformer编码器,它的架构就是基于Transformer模型。双向指的是通过某个信息数据可以获取上下文语义的功能。

BERT模型是以数据信息通过矩阵转化为原始词向量作为输入的,词向量不仅可以随机初始化,通过相关算法进行预训练后还能作为初始值再输入[11];输出的则是原始向量融合全文语义信息后的向量表示[12]。如图4所示为BERT 模型示意图。

图4 BERT模型

图4中E1是指的单个字或词,T1指的是最终计算得出的隐藏层,序列里面的每一个字经过注意力机制和加权之后,当前这个字等于用这句话中其他所有字重新表达了一遍,每个字含有了这句话中所有成分的信息[13]。

BERT语言模型是用于学习自然语言本质的,比如学习英文单词后通过已有词汇自动生成英文文章。BERT模型预训练的目的是通过调整模型参数来使输出结果能够描述自然语言的本质,为此专家提出了两个预训练任务:Masked LM和Next Sentence Prediction[14]。

Masked LM的任务描述为:随机地隐藏所给语句中的若干词汇,可以根据剩余词汇预测所隐藏的词汇是什么[15],如图5所示。

图5 MLM训练任务图

Next Sentence Prediction的任务描述为:判断所给的两个语句在文章中是否属于上下文关系,如图6所示。

图6 NSP训练任务图

3 新闻文本分类对比实验

3.1 新闻文本分类实验准备

针对自然语言处理任务中的文本分类问题,很多学者提出了不同的分类算法和训练模型,寻找出更为高效、更为精准的分类模型是当前很多学者和专家越来越关注的问题。尤其是在对新闻文本分类的研究对比工作相对较少,因此对现在流行的分类模型效果进行对比对新闻文本分类有着重大的现实意义。本文主要就是针对新闻文本数据集,通过经典的RNN模型和新兴的BERT模型进行实际训练实验,以此来分析两者的效率与性能。

3.1.1 实验环境

新闻本文分类所需要的实验硬件环境如表1所示,采用windows 10系统,由于所用电脑本身环境配置的局限问题,本次实验软件环境采用的是Google实验室所提供的实验环境作为深度学习框架训练的工具。GPU采用的是NVIDIA GeForce MX250内存8GB。

表1 硬件配置表

3.1.2 实验数据

本实验使用的是“ag_news_subset”数据集进行模型训练。该新闻文本数据集包含了超过一百万条新闻文章。其中的新闻文章是由学术团体从2000多个新闻来源中收集而来的,为学者们研究数据挖掘等学术活动所用。AG的新闻主题分类数据集是由张翔从其中的新闻数据集中构建而来的[16]。AG的新闻主题分类数据集构建了4个最大类别,其中训练样本总数为120000,测试样本为7600。

3.1.3 评价指标

本次实验评价指标采用的是通用的准确率、损失率。准确率(accuracy)表示的是测试数据集上正确分类的样本数和总样本数之比,损失率(loss)则表示构建模型时得到的预测值与真实值之间的差距。

3.2 实验过程

3.2.1 实验参数设置

本文主要采用了RNN和新闻文本分类这两个训练模型来进行新闻文本分类的对比,这两个模型实验所用的共同参数如表2所示。

表2 两模型的相同参数

3.2.2 实验训练

本实验是在Google实验室上进行网络训练的,配置好tensorflow环境后,下载所需数据集,分别定义RNN和BERT训练模型,再代入同一新闻文本数据集进行模型训练。

通过RNN模型对数据集进行训练得出了训练集准确率和验证集准确率,如图7所示。随着网络的不断训练,训练集上网络的准确性不断提高,最终达到98.1%。 相反,验证集的准确率在第3个时期达到91.35%,此后准确率趋于稳定。

图7 RNN模型准确率

通过RNN模型对数据集进行训练得出了训练集损失值和验证集损失值,如图8所示。类似地,训练集的损失在不断减少,而验证集的损失也在减少,但在第2个时期达到最低28.9%后再次增加。

图8 RNN模型损失率

通过BERT模型对数据集进行训练得出了训练集准确率和验证集准确率,如图9所示。随着网络的不断训练,训练集上网络的准确性不断提高,最终达到99.6%。不同的是,验证集的准确率缓慢上升,在第4个时期达到93.48%,此后准确率趋于稳定。

图9 BERT模型准确率

通过BERT模型对数据集进行训练得出了训练集损失值和验证集损失值,如图10所示。类似地,训练集的损失在不断减少,而验证集的损失从一开始处于稳定状态,但随着训练次数的增加验证集的损失率出现上升趋势。

图10 BERT模型损失值

在构建模型的过程中,如果准确率和验证准确率存在较大的差异,则说明该模型存在过拟合现象。

通过观察RNN及BERT模型验证集的变化趋势,可以看出,当训练时期超过3时,两种模型都会处于过度拟合状态。对于特定的样本数据集,当训练周期较长时经过过长时间的训练,训练集的损失函数值会越来越小,而验证集/测试集上的损失函数值反而会越来越大,两者之间的差距越来越大,从而造成过拟合状态。产生的主要原因是迭代次数过多,训练时间过长,拟合了训练数据中的噪音和训练样例中没有代表性的特征,使得模型的泛化能力降低。我们可以通过设定合适的停止标准,限制训练时间重新进行训练来避免过拟合现象。

3.2.3 实验结果对比分析

本节通过使用不同的深度学习方法对同一个新闻文本分类的数据集AG进行训练,得到了测试的样本集中分类的准确率与损失率,通过画折线图对两个训练模型得出的数据结果进行了对比。

如图11所示,对于损失值来说,RNN和BERT模型均是在训练10个周期过程中,损失值逐步下降再缓慢回升,均存在了过拟合现象。但在前三个未产生过拟合现象的训练周期中,BERT模型的损失值明显低于RNN模型。

图11 损失值对比

如图12所示,对于准确率来说,RNN和BERT模型的验证准确率在整个训练过程中都处于缓慢上升后偶有下降,最终趋于平稳的趋势, 但BERT模型的验证准确率明显高于RNN模型。

图12 准确率对比

通过对比RNN和BERT模型对同一新闻文本数据集进行分类训练的实验结果来看,BERT模型的分类准确率高于RNN模型,且其分类的损失值会低于RNN模型,因此BERT模型的分类效果是优于RNN模型的。

4 总结与展望

4.1 论文总结

在本文中,我们首先将本次新闻文本分类所用神经网络模型相关的理论知识与技术进行了简单的介绍。然后通过实际的实验训练,在Google实验室内配置实验环境并使用新闻文本数据集进行训练,得出了RNN和BERT模型对同一新闻数据集进行训练得出的准确率和损失率。分析对比了两者的实验结果,验证了BERT模型在新闻文本分类中的精确性和先进性。

4.2 未来展望

本文虽然对比了基于新闻文本数据集的文本分类模型,明确了文本分类算法的基本原理和步骤,根据实验结果对比分析验证出了两者的优异,但并没有提出具体可行的改进和优化方法,从算法的角度上来说仍然存在很大的不足之处。从实验结果来说,产生的过拟合现象也是实验训练需要改进的地方。

在接下来的日子里我们将进行进一步的研究,对于训练中出现的过拟合现象,我们将从减少训练时间、增加数据集规模、交叉验证数据集及通过正则化降低模型复杂性等方面来改进实验结果,降低过拟合。针对循环神经网络,我们将从如何提高该神经网络并行运算能力入手,减小其不能进行并行运算的局限性;对于BERT模型来说,虽然它是当前的主流方法,性能优于传统的循环神经网络,但BERT模型的未来研究前景依然广阔,我们在考虑如何在不降低准确率的情况下减少参数量,从而提高BERT模型的工作效率。

猜你喜欢

准确率神经网络分类
分类算一算
乳腺超声检查诊断乳腺肿瘤的特异度及准确率分析
不同序列磁共振成像诊断脊柱损伤的临床准确率比较探讨
2015—2017 年宁夏各天气预报参考产品质量检验分析
神经网络抑制无线通信干扰探究
分类讨论求坐标
高速公路车牌识别标识站准确率验证法
数据分析中的分类讨论
教你一招:数的分类
基于神经网络的拉矫机控制模型建立