APP下载

基于稀疏编码器与集成学习的文本分类

2017-03-23杨洪余

科技创新与应用 2017年6期
关键词:文本分类

摘 要:文本分类在文本预处理中占据着重要的地位,针对文本分类过程中输入数据维数高,导致特征提取,分类器选择困难等问题,提出一种基于稀疏自动编码器与集成学习的文本分类算法。该算法首先通过稀疏自动编码器进行输入数据的特征表示,然后利用极限学习机作为基分类器进行文本分类,最后通过Adaboost集成学习方法将基分类器组合成为分类效果更好的集成分类器。实验结果表明,该方法可以有效提高文本分类的准确度。

关键词:极限学习机;稀疏自动编码器;集成学习;文本分类

1 概述

随着现代社会的发展,互联网成为了人们获取文本信息的重要手段。然而网上的信息杂乱无章,使得人们很难快速而准确的获得所需要的文本信息。因此如何有效的对文本进行分类,帮助用户找到所需的信息成为当代信息技术领域的一个重要课题[1]。

本文提出利用深度学习中的稀疏自动编码器自动选取文本的特征,然后利用极限学习机作为基分类器进行文本的分类,最后结合Adaboost集成学习方法将极限学习机作为基分类器组合成一个效果更好的分类器。实验结果表明,该算法在文本分类方面,可以有效地提高文本分类的准确性。

2 相关理论基础

2.1 稀疏自动编码器

稀疏自动编码器(sparse auto encoder,SAE)是利用人工神经网络的特点构造而成的网络。稀疏自动编码器的训练过程分为两个步:第一步是预训练,即先利用无监督的方法将SAE的输入层和隐含层全部初始化,然后再利用逐层贪心训练算法确定网络的参数。第二步是微调,其思想是整个网络视为一个整体,用有监督学习的方法优化整个网络的参数,由于SAE训练过程的复杂性,具体过程可参考文献[2]。

2.2 极限学习机

针对传统神经网络训练过程时间漫长,优化困难等缺点,新加坡南洋理工大学的黄广斌教授提出了一种全新的单隐层前馈神经网络-极限学习机(Extreme Learning Machine,ELM)[3],该网络能够以极快的学习速度达到较好的泛化性能,从而解决了传统神经网络学习速度缓慢的限制。该网络主要由输入层,隐藏层和输出层组成,其中隐藏层的神经元通过激活函数把输入的数据进行变换,然后把变换后的数据输出到输出层,在网络中输入层和隐藏层的权值是随机设置的,只有隐藏层到输出层的权值需要求解,因此加快了网络的学习速度。

2.3 Adaboost分类器

由于单个分类器通常无法满足分类任务的要求,因此需要通过集成学习来构建并结合多个分类器来完成分类任务,这其中最著名的是在1995年由Freund等提出的Adaboost[4]算法。该算法的核心思想是先从初始训练集训练出一个基学习器,再根据基学习器的变现对训练样本分布进行调整,使得先前基学习器做错的训练样本在后续收到更多关注,然后基于调整后的样本分布来训练下一个基学习器;如此重复进行,直到基学习器数目达到指定的值,最终将这几个基学习器进行加权结合。Adaboost是一种迭代算法,具体训练过程可参考南京大学周志华教授编写的机器学习课本中关于Adaboost算法的章节。

3 SEA文本分类算法

在本文中,结合稀疏编码器,极限学习机与Adaboost这三种机器学习方法提出SEA文本分类算法,该算法的工作流程如图1所示。

该分类算法的第一步为输入,输入的是经过了向量化表示的文本,但没有经过任何的手工特征提取。第二步是利用SAE算法对数据的重建能力自动选择文本的特征,用SAE算法选择的文本特征可以有效地复原原始文本信息。第三步是利用ELM分类器作为该算法的基分类器,ELM作为第四步中的基分类器参与训练,最后一步是输出该文本属于哪一类。

4 实验结果与分析

4.1 实验数据集与评价指标

本文选用的分类文本数据来源于新闻数据集[5],该数据集复旦大学计算机信息与技术系李荣陆提供,数据集标注比较规范,规模适中,适合于进行文本分类的仿真实验。

在文本分类中常用的评价指标有准确率P(Precision)和召回率R(Recall),公式如下:

P=M/(M+N),R=M/(M+T)

其中,M为正确分类到该类的文本数,N为错分到该类中的文本数,T为属于该类确误分为别类的文本数。

4.2 实验结果

为验证本文提出的SEA文本分类模型,需要将文本数据集进行预处理,对于SEA模型来说,就是进行文本分词。本实验文本分词采用的是NLPIR汉语分词系统,其主要功能包括中文分词,词性标注,命名实体识别,用户字典功能等,是国内比较成熟,用户较多的中文文本分词系统。经过文本预处理后,按照本文提出的SEA文本分類模型进行实验,并和几种经典的分类算法做对比。在本实验中Adaboost集成学习算法中基分类器的个数设置为10个,基分类器ELM中隐藏层的个数设置为输入层的0.75倍,稀疏自动编码器中隐藏层数设置为4,实验结果如表1和表2所示。

从表1和表2可以看出随着文本数量的增加,SEA模型的分类准确率和召回率逐渐提高,这是由于在训练数据集较小时,稀疏编码器对自动提取的文本特征变现地不是很理想,容易造成SEA分类模型产生过拟合现象,从而影响分类准确率和召回率。SVM算法在训练数据集比较小时,变现良好,这是由于在训练数据较少时,可以较容易地找到分类超平面,在数据量变大时,由于计算量的增大,使得计算量变大,导致计算得到的超平面效果不好,使得分类准确率和召回率不断下降。BP和ELM算法都随着训练数据的增大,其分类准确率和召回率在不断变大,这是由于随着训练数据的增大,BP和ELM可以更有效的提取输入数据的特征,但ELM算法相比BP算法变现得更好,这是由于BP算法可能无法收敛到最优值,导致分类算法的准确率下降。

综上所述,本文提出的SEA文本分类模型可以有效的提高文本分类的准确率和召回率,尤其是随着训练数据集的不断增大。

5 结束语

文本分类在文本处理中占据着重要的地位,其分类的好坏直接影响着后续的文本处理,如何有效地对文本分类是一个重要的研究课题。本文结合稀疏自动编码器,极限学习机与Adaboost集成学习方法提出SEA文本分类方法,实验结果表明该分类方法可以有效将文本分类过程中的特征提取和分类器结合在一起,从而提高了分类结果的准确性。

参考文献

[1]秦胜君,卢志平.稀疏自动编码器在文本分类中的应用研究[J].科学技术与工程,2013,13(31):9422-9426.

[2]Baldi P, Guyon G, Dror V, et al. Autoencoders, Unsupervised Learning, and Deep Architectures Editor: I[J].Journal of Machine Learning Research,2012.

[3]Huang G B, Zhu Q Y, Siew C K. Extreme learning machine: Theory and applications[J]. Neurocomputing, 2006,70(1-3):489-501.

[4]Freund, Yoav, Schapire, Robert E. A Decision-Theoretic Generalization of On-Line Learning and an Application to Boosting[J]. Journal of Computer & System Sciences, 1999,55(1):119-139.

[5]http://www.nlpir.org/?action-viewnews-itemid-103.

作者简介:杨洪余,硕士研究生,研究方向为数据挖掘与文本处理。

猜你喜欢

文本分类
基于朴素贝叶斯的Web文本分类及其应用
基于组合分类算法的源代码注释质量评估方法
基于贝叶斯分类器的中文文本分类
基于蚁群智能算法的研究文本分类
基于朴素贝叶斯分类的Java课程网络答疑反馈系统
基于K—means算法的文本分类技术研究
文本分类算法在山东女子学院档案管理的应用
不同情境下中文文本分类模型的表现及选择
基于内容的英语录音教材标注研究与应用
多核SVM文本分类研究