关键词关联融合CNN的短文本分类算法

2018-11-26 09:32陈海霞杨喜旺卫洁洁
电脑知识与技术 2018年22期
关键词:Apriori算法关联规则卷积神经网络

陈海霞 杨喜旺 卫洁洁

摘要:针对短文本长度短,特征稀疏,表达信息能力不足的特点,提出一种短文本分类算法,首先用改进的Apriori算法挖掘頻繁2项集,获取关联规则,然后根据关联规则对短文本信息进行补充,解决特征稀疏,表达能力不足的问题,最后用有类别标签的训练集训练卷积神经网络得到分类器,对待测短文本进行分类。对于本文提出的理论,通过实验测试了算法的分类准确率和召回率,证明了本文方法的可行性,并与其余短文本分类算法CNN+KNN、Apriori等短文本分类算法做了对比。

关键词:短文本分类 ; Apriori算法 ; 关联规则; 卷积神经网络

中图分类号:TP391 文献标识码:A 文章编号:1009-3044(2018)22-0261-04

Abstract: Against the short length of shor text、sparse characteristics and weak ability of expressing information,we put forword to a kind of short text classification algorithm, it first uses the improved Apriori algorithmn to extract the frequent 2-itemsets and ger association rules.then accoding to the association rules to supplement the shoret text information.,finally uses training set with category label to train the convolution neural network (CNN) to get the classifier and then classify the short text sets classified .In the end, through the experiment about precision and recall rate of classification of the algorithm,this method is poved feasible .And we also make comparison with other short text classification algorithms such as CNN+KNN、Apriori.

Key words:short text classification;Apriori algorithm; association rules; convolution neural network

国内外先后出现Facebook、微博等社交平台,微博、网络评论等短文本形式的信息大量融入人们的生活,并逐渐成为人们获取新闻实时信息及日常交流互动的主要方式。这些内容包含了用户的兴趣、潜在需求、意图倾向,涉及了 政治、经济、文化、教育、医疗等很多方面,包含大量有用的信息,但一般都是字数较少且不规范的短文本,如何从这些短文本中挖掘出想要的信息成为一个挑战。其中短文本分类技术便是通过将短文本分类使得用户可以按照类别爱好选择想要的信息,但是短文本存在特征稀疏、表达信息能力差的特点,针对这些特点,本文提出基于关键词语义关联和CNN结合的中文短文本分类算法。

目前较常用的文本分类算法,根据文本特征表示方式不同,分为两类:一种是基于向量空间模型(Vector Space Model,VSM)的分类算法,但是将文本转为向量空间,会导致向量维数过高的特点,如文献[1][2]基于向量空间模型,对维数进行降维处理。一种是基于语义分析的分类方法,如文献[3][4],分类准确率较高,性能好。但是太依赖外部知识库,对于背景知识库不存在的词无能为力。而短文本往往具有特征稀疏、表达信息能力不足的特点,显然 不能直接使用传统的长文本分类算法。当前研究者们针对短文本的特点一般都是通过扩展短文本信息的方式,如文献[5]利用FP-Growth算法挖掘训练集与测试集特征项间的关系,然后对概念词语进行特征扩展,对分类效果有所提高,只是选取的数据集较少。文献 [6]基于频繁词集对背景知识库进行扩展,然后使用支持向量机SVM进行分类,当训练文本增加时,分类效果出现了下降的现象。Yin C 等人[7]提出使用半监督学习加支持向量机对短文本分类,实验证明取得了不错的效果。文献[8]为解决短文本数据稀疏、情感隐藏的缺点,提出基于词袋法的扩展短文本的框架,然后使用卷积神经网络(CNN)进行分类。取得了突破性进展,文献[9] 对中国微博的进行情感分类,使用信息扩展的卷积神经网络,对具有长度限制的短文本微博进行分类,与传统的机器学习方法SVM、NB相比分类性能有所提高。本文结合短文本特征稀疏、表达信息能力差的特点,提出基于关键词语义关联和CNN结合的中文短文本分类算法。基本思路分为两步:一是为避免直接使用卷积神经网络计算各短文本间关联关系的复杂性,首先利用Apriori算法挖掘频繁项集,得出训练集文本中关键词的关联规则关系,扩展关键文本特征集,对短文本信息补充,与文献[5][6]中将频率高的词汇直接添加的扩展方法有所不同,Apriori算法得到的是关键词的关联规则,这样保证扩展的关键词是语义相关的;二是使用卷积神经网络对扩展后的短文本进行特征提取,从而分类。这样使用Apriori算法挖掘出语义关联的关键词,对短文本进行信息扩充,也可通过剪枝去除无关信息,且不依赖搜索引擎,并直接将训练集得到的关联规则作为背景知识库,相关性强。值得注意的是,Apriori算法并不需要对待测短文本集再次扫描,而选用卷积神经网络训练得到的分类器考虑到了词语间的语义相关性,可以抽取出更抽象文本特征。

1 基于关键词关联的短文本特征扩展

基于关键词关联的中文短文本分类流程如图1所示

1.1 关键词关联规则的创建

也就是说,测试集不用再次使用Apriori算法,只需要搜寻通过扫描训练集得出的关键词关联规则库,当然为了保证关键词库足够全面,训练集的数量需要保证足够大。这在实验设计阶段介绍。

2 卷积神经网络设计

卷积神经网络是一种前馈神经网络,每个神经元都只影响邻层的一部分神经元,具有局部受野的特点,也因此具有捕捉局部特征的能力,通过权值共享和池化,显著降低了网络的复杂度,在处理当今大量的短文本分类具有优势。

2.1 关键词抽取与文本表示

无论是对于训练集还是测试集,首先要经过关键词抽取,目的是为之后的频繁2项集的挖掘跟分类做准备。本文采取文献[11]中提出的短文本关键词提取算法来抽取关键词,基本思路是提取短文本中出现频数较高的词语或词组,计算其权重,从而选出关键词语词组。其准确率与可移植性都相对较好,文献中已有证明。本文指的背景库也即从训练集中抽取出的关键词库。

给定每条短文本的关键词集(经过关联规则处理过的),采用word2vec模型对其训练,每个关键词都用训练好的向量表示,一条短文本可以表示为向量集[G={g1,g2……gt}] 作为卷积神经网络的输入,[ t] 表示关键词的个数。[W={w1,w2……wt}]分别表示关键词的权重。

2.2 卷积神经网络模型设计

卷积神经网络的分类过程主要是对词向量表示的短文本关键词集进行抽象的文本特征提取与选择,利用有类别标签的文本训练集训练卷积神经网络,调整各特征权重参数得到分类器。本文设计的卷积神经网络分为输入层、卷积层、池化层和全连接层。整体流程是先将短文本集抽取出的关键词即文本特征转为词向量输入到网络,然后经过卷积层卷积操作、池化操作对文本特征进一步抽取选择,最后通过全连接层映射分类结果。实例结构图如图2。

假设一条短文本经过关联规则处理后由[N]个关键词构成,词向量的维度为[k],则短文本输入可用[N*k] 的矩阵表示。进行卷积运算的时候,设置卷积核的个数为[t],窗口大小分别是[a1*b1、a2*b2、……、at*bt ],经过卷积运算后,将分别得到[t]个大小为[N-a1+1*(k-b1+1)]、[N-a2+1*(k-b2+1)]、……、[N-at+1*(k-bt+1)]的特征图。池化层采用max-pooling方法,假设池化窗口为2*2,池化将得到[t]个[N-a1+1/2*(k-b1+1)/2]的向量,将这t个向量合并得到的向量即可作为该条短文本的特征向量表示。

3 实验设计与分析

3.1 短文本数据集及其关联规则挖掘

为了证明本文方法的可行性和有效性,本文选取新浪微博的微博内容作为数据集,包含20个主题共158032条微博,训练集包含125000条微博(由于本文拟将训练集作为背景库,所以所占比例较大),测试集共33032条微博。这20个主题包括社会、科技、数码、财经、股市、电影、音乐、汽车、体育、星座、历史、军事、旅游、校园、美妆、法律、房产、搞笑、萌宠、育儿。各主题的短文本数量如表1分布。

以训练集中的历史主题为例,先对其关键词使用改进的Apriori算法抽取关联规则,作为背景库。将其关键词转为向量表示模型,输入卷积神经网络,经过卷积、池化的特征选择,优化权重训练卷积网络分类器。之后对测试集进行分类时,首先根据关联规则背景库,对测试集进行关键词关联扩展,然后使用训练好的卷积网络分类器进行分类。

在关联规则挖掘时,主要是挖掘频繁2项集,依据是支持度跟置信度。前者保证关键词间的共现关系,置信度则衡量关联关键词是否具有相同类别。分别设置不同的支持度[sup(ti→tj) ]=1.0%,1.5%,2.0%,置信度分别设置 [Con(ti,tj=> C)]=0.5,0.6,0.7,0.8,0.9,然后挖掘得到的频繁2项集数目如表2所示:

分析表2,随着支持度和置信度的增加,挖掘出的频繁2项集数目大幅度减少,支持度和置信度的阈值取得最高值时,虽然频繁2项集数目非常少,但置信度也高,基本不影响分类。为尽量保证扩充短文本信息,本文选择3组参数下挖掘出的关联规则作为背景库,分别是(1)[sup(ti→tj) ]=1.0%,[Con(ti,tj=> C)]=0.7,(2)[sup(ti→tj) ]=1.0%,[Con(ti,tj=> C)]=0.8,(3)[sup(ti→tj) ]=1.5%,[Con(ti,tj=> C)]=0.8,在这3组参数设置下得到的关联规则较多,有益于扩充信息,且也能达到较好的分类效果。

3.2 分类性能评价指标

本文短文本分类性能指标采用准确率(P)、召回率(R)、F1值。这些指标评价基于混淆矩阵,如表3所示,正类表示所属类别,负类表示除正类外的其他类别,其中A表示属于正类而且分到正类的数目,B表示属于错误分到负类的数目,C表示不属于正类却分到正类的数目,D表示属于负类且被分到负类的数目。

3.3 實验环境搭建

本文实验环境:操作系统Windows7,处理器为 Intel Core I5,CPU为2.5G,编程语言主要使用Python,工具为Pycharm 5.0.3。 实验采用的卷积网络结构以1个卷积层和1个池化层构成,词向量维度设置为5.分别以3个卷积核大小为3*5,4*5,5*5进行实验,池化层窗口大小为2*2,采用1-max pooling的池化方法,以体育类的一条短文本为例,将其12个关键词转换为12*3的向量作为神经网络的输入,卷积后是3个大小分别为10*4,9*4,8*4的特征图,池化处理时将分割得到10个(2*2),8个(2*2),8个(2*2)的pool maps,求取最大值分别求得10个、8个、8个的向量,有序连接成一个长向量,作为此条短文本的文本特征。

3.4 实验结果对比分析

本文首先对关键词扩展前后的分类性能做对比,其次使用文献[10]中的Apriori和文献[12]提出的CNN+KNN的短文本分类算法对本文使用的数据集进行分类,与本文提出的分类算法作对比, 实验结果如表4。

通过对比,经过关键词扩展后的文本分类性能大幅度优于扩展前。CNN+KNN与本文提出的算法分类准确率比其他两种都较高,本文提出的算法分类性能略优于CNN+KNN,在F1测度上有明显优势,而Apriori算法对于本文使用的文本集分类结果并没有达到很好的效果。

4 结语

本文提出了一种基于关键词关联与CNN的短文本分类算法,先使用改进后的Apriori算法对短文本训练集进行关联规则挖掘,并作为背景库,然后对待分类文本进行关键词扩展,弥补短文本特征稀疏,表达信息能力不足的缺点,最后使用卷積神经网络训练分类得到结果,实验证明了文本算法的可行性和有效性。

参考文献:

[1] 黄剑韬. 基于商空间的向量空间模型文本分类方法[J].计算机应用,2011,31(S2):67-69.

[2] 周炎涛,唐剑波,吴正国. 基于向量空间模型的多主题Web文本分类方法[J]. 计算机应用研究,2008,(1):142-144.

[3] 马成龙, 颜永红. 基于概率语义分布的短文本分类[J].自动化学报, 2016,42(11):1711-1717.

[4] 冶忠林, 杨燕, 贾真,等. 基于语义扩展的短问题分类[J]. 计算机应用,2015,35(3):792-796.

[5] 王细薇,樊兴华,赵军等.一种基于特征扩展的中文短文本分类方法[J].计算机应用,2009,29(3):843-845.

[6] 袁满,欧阳元新,熊璋,等. 一种基于频繁词集的短文本特征扩展方法[J]. 东南大学学报,2014,44(2):256-260.

[7] Yin C, Xiang J, Zhang H, et al. A New SVM Method for Short Text Classification Based on Semi-Supervised Learning[C]// International Conference on Advanced Information Technology and Sensor Application. IEEE, 2016:100-103.

[8] Wang P, Xu B, Xu J, et al. Semantic expansion using word embedding clustering and convolutional neural network for improving short text classification[J]. Neurocomputing, 2016, 174(PB):806-814.

[9] Sun X, Li C, Li C, et al. Chinese microblog sentiment classification based on convolution neural network with content extension method[C]// International Conference on Affective Computing and Intelligent Interaction. IEEE Computer Society, 2015:408-414.

[10] 汪正嘉. 基于Apriori算法的短文本分类[D].云南:云南大学,2015.

[11] 陈伟鹤,刘云. 基于词或词组长度和频数的短中文文本关键词提取算法[J]. 计算机科学,2016,43(12):50-57.

[12] 殷亚博,杨文忠,杨慧婷,等. 基于卷积神经网络和KNN的短文本分类算法研究[J]. 计算机工程,2017(8):1-6.

【通联编辑:唐一东】

猜你喜欢
Apriori算法关联规则卷积神经网络
基于深度卷积神经网络的物体识别算法
基于Hadoop平台的并行DHP数据分析方法