1. 研究目的与意义(文献综述)
1.1 研究目的:
渐进式学习(又称增量学习)和集成学习,是机器学习中的两种重要算法,并且已有广泛应用,而渐进式集成学习就是集合两者优势的新算法[1],对于此新算法的研究以初具规模,但缺乏应用,本毕业设计的目的就在于运用相应的研究成果,完成一个基于算法的文本分类系统。
1.2 国内外研究现状分析:
本毕业设计选题主要涉及三个方向:集成学习,渐进式学习和文本分类,在文献检索时以其为关键词进行了广泛的搜索。
集成学习是指把多种分类器进行组合从而获得更优异性能的机器学习方法,常用的集成学习方法有bagging方法、boosting方法、随机森林算法等[2],各类集成学习方法在国内外已有丰富的研究和成熟的应用。集成学习具有稳定性、鲁棒性和高温准确率等特点,在数据挖掘、智能交通系统、生物信息学、模式识别等领域已有成功应用[1]。但集成学习的各个方法都有自己的缺点,如随机森林容易过拟合、boosting方法中的adaboost容易受噪声干扰等,在运用这些算法时,如何避免缺点,取长补短也是一个研究方向。
2. 研究的基本内容与方案
2.1 基本内容与研究目标:
本毕业设计课题研究任务为设计并实现一个基于渐进式集成学习的文本分类系统,研究内容为集成学习的原理与实现、渐进式学习(增量学习)的原理与实现、如何将两者结合以及如何用结合的算法实现文本分类。拟解决的关键问题在于如何将两者实现结合。
2.2 拟采用的技术方案及措施:
2.2.1 有关方法:
实现基于渐进式集成学习的文本分类,需要从三个方向入手:集成学习,渐进式学习(增量学习)和文本分类。
l 集成学习:
集成学习的思想来源于1979年Dasarthy与Sheela提出的用多个分类器分解特征空间的思想。随着近些年来的发展,集成学习已经形成了多个成熟的集成框架。根据多个分类器的生成方式,可以将集成学习方法分为两大类:串行生成基分类器的集成学习方法和并行生成基分类器的集成学习方法。串行生成基分类器的集成学习方法的代表算法是Boosting 算法,并行生成基分类器的集成学习方法的代表算法是 Bagging 算法。不论哪一种生成方式产生基分类器,获得具有显著优越性能集成学习模型的必要条件是基分类器具有多样性。
l 渐进式学习(增量学习):
渐进式学习,又叫增量学习(Incremental Learning),是机器学习的其中一个分支。主要内容就是在不改变原来的基础上,加入新的数据或者模型,组成一个更为有效的系统。根据使用分类器的数量可将增量学习分为单分类器增量学习和集成式增量学习,单分类器增量学习指在学习过程中至始至终只用一个模型;集成增量学习是使用多个模型对训练数据进行学习,以 Learn 算法为代表[12][13][18]。
l 文本分类:
文本分类的主要目的就是将大量无类别文本进行归类处理,与数学中映射的概念类似,文本分类就在于需要训练出某个映射规则来对未知类别的文本进行分类,可以计算待分类文本与类别的关联程度,利用规则计算得到分类结果。
早期的文本分类基于一定的算法,采用人工来完成,机器并不参与分类过程。为了将人类从简单又重复的劳动中解放出来,自动化的文本分类技术一直在研究与发展。利用计算机进行文本自动化分类的方法有多种,其中传统的知识工程方法进行文本分类已经逐步被淘汰,取而代之的是准确度更高,对人的参与要求更低的基于机器学习的文本分类方法。
2.2.2 技术路线:
完成了相关准备后,首先要实现的是如何让集成分类器达到渐进式学习的目的。其主要有两种办法:集成式的增量学习和渐进式的集成学习。
图 1:集成式增量学习模型示意图 |
第一种的步骤是先将数据流根据时间分块,将一段时间内的产生的数据块作为训练数据集训练一个基分类器,将基分类器加入到集成模型中,可以根据新数据对先前训练的基分类器进行更新,也可以是不对它们做任何操作[3]。如图1所示:
第二种的步骤是从外部输入训练样本和测试样本,使用bootstrap方法进行样本维采样,得到B个bootstrap分支,使用LDA线性判别分析方法对B个bootstrap分支训练分类器,生成各自的分类器,然后新建一个集成分类器集合,初始化为空,从之前生成的分类器中选择第一个分类器加入到集合中,在剩下的分类器中逐步选取后续的优秀的分类器作为分支加入到集合中,直到选取的分支数目达到预先设定的集成分类器集合的分支数目G,停止选择,同时输出选择好的集成分类器集合及各分类器分支对应的权重,利用集成分类器集合及各分类器分支对应的权重对测试样本进行分类,得出最后的预测结果[1]。如图2所示:
图 2:渐进式集成学习模型示意图 |
本课程设计采用第二种方法,即渐进式集成学习。
解决了算法问题,还需要实现文本分类,主要有文本预处理、文本表示和训练分类器三个步骤。
文本预处理包括去除停用词和标点符号,进行分词两步。该步可以用SnowNLP、结巴中文分词、THULAC、NLPIR和ICTCLAS等中文分词工具实现。
文本表示是将中文文本转换成能被计算机识别的二进制语言。目前,常用的文本表示模型有布尔模型、向量空间模型(VSM)和统计语言模型。最常用的模型是G.Salton提出的向量空间模型。它是由一组正交向量组成的向量空间,在这个空间中,每个文本特性都转化成一个维度,也就是说,用一组向量(t1: w1, t2: w2, … , tn: wn)来代表一个文本,其中ti表示文本特征,wi表示特征的权重。
最后进行分类器的训练,就是将处理好的数据分为训练集和测试集,将训练集输入分类器训练,而后将测试集输入,查看分类结果,根据相关参数评估性能。
2.2.3 实验手段:
采用搜狗实验室全网新闻数据集,从教育、数码、科技等类别文档中随机抽取至少1000篇文档,其中80%用于作为训练集,20%用于作为测试集。以一般集成学习用到的k近邻分类器作为对照,将k近邻分类器和渐进式集成学习分类系统用相同训练集训练后,输入相同测试集,分别求出分类器的精确度、召回率和F值,比较并得出结论。
2.2.4 关键技术:
实现本毕业设计课题的关键技术在于使用 bagging 算法生成具有多样性的集成分支,使用 LDA(线性判别分析)算法对不同的属性维进行分类,使用 adaboost 的方法调节样本维与 bagging 分支的权重。
2.2.5 预期成果:
总结上文,本毕业设计的步骤如下:获取文本数据,文本预处理(降维、分词),文本向量化,训练模型和分类,比较结果,得出结论。
其中文本数据的来源于搜狗实验室,该来源为许多研究提供过数据,因此十分可靠。文本预处理拟采用结巴分词,结巴分词是一个成熟的中文分词工具。文本向量化拟采用TF-IDF法或FastTest工具,经过许多年的发展和应用,这些方法已较为成熟高效。
结合以上分析,能够影响结果的就是分类器的实现和使用,我们可通过三个量来比较不同分类器的性能,即精确度(P)、召回率(R)和F-评测值(F)[21]。在正确实现的情况下,渐进式集成学习的分类器性能应该优于单个分类器(如K近邻算法、随机数算法、支持向量机等),原因在于渐进式集成学习算法集成了多个分类器,组成一个统一的集成分类器,大大地提高了分类器的分类效果,并且在最终的集成器中,对每个分类器赋予了对应的权重,这样也会大大地提高渐进式集成学习算法的分类能力。
3. 研究计划与安排
第1-2周(2.26-3.8):完成课题调研、文献阅读和外文翻译,收集相关资料,完成开题报告,进行小组内选题答辩,修改定稿开题报告,并上传开题报告到教务网。
4. 参考文献(12篇以上)
[1]赵卓雄. 渐进式集成学习的研究及其应用[d].华南理工大学,2017.
[2]李鹏鹏. 基于集成学习的文本分类方法研究[d].西安工业大学,2018.
课题毕业论文、开题报告、任务书、外文翻译、程序设计、图纸设计等资料可联系客服协助查找。