新闻大学

结合Bert字向量和卷积神经网络的新闻文本分类 

来源:新闻大学 【在线投稿】 栏目:期刊导读 时间:2021-01-15

文本分类是自然语言处理领域中较为重要,且实用性非常强的方向之一。在深度学习技术兴起之前,朴素贝叶斯是一种高效而不失准确率的文本分类方法[1],SVM 也被应用于文本分类中并取得不错的结果[2]。近几年随着深度学习技术的迅速发展,神经网络也被应用在了文本分类技术之中,如2016年提出的TEXTCNN[3]正是把卷积神经网络(以下简称CNN)应用于文本分类中并取得了较好的效果,除此之外RNN,LSTM等网络也结合了文本分类领域。2018年Google 提出了Bert 模型[4],本文结合了Bert 字向量和CNN 来对新闻进行文本分类,流程更加简洁,效率更高,结果较好。

1 文本分类流程

1.1 字符库提取

在实验之前要把数据集中文本出现的所有字符提取并去重构成字符库,字符按出现次数由多到少进行排列,以便于下一步的字符向量化。由于使用字向量而非词向量,省去了切词的步骤,只需把出现的字符提取即可。在通常的文本中,常用汉字大约有3000 个,本文的数据集中所有汉字加上字符共有5282 个,删去出现最多的字符和最少的字符共282 个,剩余5000个字符作为字符库。较之于词语的数量,使用字向量在效率上也会有显著提高。

1.2 字符向量化

1.2.1 Bert介绍

Bert 是一个自然语言处理的通用模型,其基础是Attention机制。Attention 机制[5]的提出是为了解决RNN 无法并行等缺点。在此之后Google提出了完全建立在Attention之上的Transformer 模型[6],Bert 正是由多个Transformer 模型的Encoder 结构堆叠而成。Bert具有预训练的特点,即先使用大规模的语料进行无监督学习得到预训练模型。使用者可以在具体的自然语言处理任务中直接使用此模型或者微调后使用。

1.2.2 生成字向量

本步骤需要把上一步所得的字符进行向量化,生成Bert字向量。Google提供的中文Bert模型参数如表1所示:

表1 中文Bert模型参数layer hidden heads paramteters 12 768 12 110M

由表可得,字符向量化后的维数为768,由于本文实验数据集大小的限制以及方便和word2vec 方法进行对比,Bert 字向量需要降维,因此使用t-SNE方法【】把向量维度降至100维。

1.3 构建CNN

本文使用的CNN主要参数如下:

(1)Embedding层,设定为100维。

(2)Seq_length层,设定句子长度为800字符,不足的用空字符补齐,多余的删去。

(3)Vocab_size层,设定字符库大小为5000。

(4)Num_filters层,设定filter为128个。

(5)Kernel_sizes层,设定filter尺寸分别为3,4,5个字符。

(6)Num_classes层,设定分类数为10。

(7)Dropout层,设定为0.5。

2 实验结果评价和对比

2.1 数据集

本文使用的数据集皆在清华大学开源的中文新闻数据集THUCTC 中随机抽取。共4个数据集,编号为数据集1,数据集2,数据集3,数据集4。每个数据集有 条新闻,其中有10个分类,每个分类下有5000 条新闻,4000 条作为训练集,1000条作为测试集。

2.2 实验环境

本文的实验环境如表2所示:

表2 实验环境 GTX1060 操作系统GPU编程语言深度学习框架

2.3 实验结果对比

表3 实验准确率对比BERT词向量+CNN BERT字向量+CNN Word2vec词向量+CNN数据集1 96.03%数据集2 95.52%数据集3 94.98%数据集4 96.75%96.52%95.12%95.46%96.61%95.42%95.01%95.03%96.11%

由实验结果可得,Bert词向量和Bert字向量分别结合CNN实验结果的准确率差别不大,两者均较优于Word2vec词向量+CNN的结果。但是Bert词向量+CNN花费的训练时间是Bert字向量的6.32 倍,Word2vec 词向量+CNN 训练花费的时间是Bert字向量的6.75倍。除此之外,词向量结合CNN准确率会受到切词准确性的影响。因此综合效率和准确率,Bert字向量的结果是最优的。

3 结论

本文利用Bert字向量结合CNN的文本分类方法,在实验中取得了较好的结果,事实上字向量的最大优势在于结合了汉字中“字即是词”的特点,训练速度快,占用内存小,且准确率不受切词准确度的影响,在需要兼顾效率和准确率的文本分类任务中表现会更好。

此外,目前已经有了针对汉字笔画向量的研究[7],在词向量的训练上,也有了效果超越Bert的新模型Xlnet[8],结合这些新的技术方法,文本分类的准确率和效率会得到进一步的提高。

[1]Raschka S.Naive Bayes and Text Classification I - Introduction and Theory[J]. 2014.

上一篇:基于TextRank的新闻关键词抽取系统的设计与开
下一篇:没有了