硕士毕业论文-蛋白质生物功能的机器学习方法研究37075.doc

上传人:哈尼dd 文档编号:3964518 上传时间:2019-10-11 格式:DOC 页数:74 大小:1.37MB
返回 下载 相关 举报
硕士毕业论文-蛋白质生物功能的机器学习方法研究37075.doc_第1页
第1页 / 共74页
硕士毕业论文-蛋白质生物功能的机器学习方法研究37075.doc_第2页
第2页 / 共74页
硕士毕业论文-蛋白质生物功能的机器学习方法研究37075.doc_第3页
第3页 / 共74页
硕士毕业论文-蛋白质生物功能的机器学习方法研究37075.doc_第4页
第4页 / 共74页
硕士毕业论文-蛋白质生物功能的机器学习方法研究37075.doc_第5页
第5页 / 共74页
点击查看更多>>
资源描述

《硕士毕业论文-蛋白质生物功能的机器学习方法研究37075.doc》由会员分享,可在线阅读,更多相关《硕士毕业论文-蛋白质生物功能的机器学习方法研究37075.doc(74页珍藏版)》请在三一文库上搜索。

1、上海大学硕士学位论文 2010年5月中图分类号: 单位代号:10280密 级: 学 号:07720172 硕士学位论文SHANGHAI UNIVERSITYMASTER DISSERTATION题目蛋白质生物功能的机器学习方法研究作 者 朱昱倍学科专业 物理化学导 师 陆文聪 教授完成日期 二零壹零年五月66A Dissertation Submitted to Shanghai University for the Masters Degree in ScienceUsing Machine Learning MethodsIn Invesigation of Proteins Biolog

2、ical FunctionsM. D. Candidate:Zhu YubeiSupervisor:Prof. Lu WencongMajor:Physical ChemistryScience College, Shanghai UniversityMay, 2010摘要近些年来,随着信息技术和生物检测手段的不断发展,生命科学的数据资源急剧膨胀。实验工作者在产生大量数据的同时,也对理论研究者提出了更多的难题。利用机器学习这一方法来分析这些数据,我们可以从中找出隐含的规律和模式,从而进一步加深对事物的认识。本文就是采取这一研究方法,对蛋白质的生物功能进行建模和预报。 在本文的工作中,我们使用了

3、机器学习方法来对蛋白质和小分子的相互作用、蛋白质糖基化位点的识别进行建模和预报。另外我们还探讨了一系蛋白质列生物功能在线预报系统的建设和优化。本文的主体工作分为三个部分:1. 用集成学习算法对蛋白质和小分子的相互作用进行研究。我们针对代谢途径下的酶和底物之间的相关作用,建立了相互作用预报模型。通过对数据集的变量筛选和降维的评价,我们保留了原有的变量集合。在后续的建模过程中分别用AdaBoost,Bagging, SVM, KNN, 决策树对酶和底物进行建模。10组交叉验证和独力测试集的结构显示,集成学习方法AdaBoost,Bagging的分类能力最好,都达到了71%以上。而我们接着又把不同的

4、分类器组合集成后发现,前2个性能最好的集成学习算法和KNN组合后的体系具有最好的推广能力,其独立测试集中正样本的正确率又在原先最好的结果下提高了近4%,而其总体正确率也达到了84.6%。结果证明,多重集成学习算法可以用来研究蛋白质和小分子相互作用,所得到的模型有很好的预测性能。此外,我们根据所建立的酶和底物相互作用的预测模型,同时开发了相应的在线预报系统。 2. 用CFS-Wrapper筛选变量法结合AdaBoost集成方法对蛋白质O端糖基化位点进行研究。在许多的生化过程中都需要有O-端糖链的参与。然而糖基化是一个复杂的过程,迄今为止还未得出一个固定的模式。我们对收集到的糖基化和非糖基化肽段,

5、 并用肽段中残基的物化参数,以AAIndex库中的数据进行表征。分别尝试了CFS方法以及PCA主成分变换进行变量筛选。在进行初步的变量筛选后,分别用SVM、KNN、C4.5、AdaBoost、Bagging对不同的变量筛选方法进行多组交叉验证和独立测试集的评价。接着确定以AdaBoost建模和CFS变量筛选结果为基础,做进一步的Wrapper筛选。最终筛选出23个变量的子集。其十组交叉验证正确率在88.1%、独立测试集正确率在87.5%。根据该模型,我们开发了蛋白质糖基化点位的在线预报系统。3. 利用Java网页技术、weka软件、第三方开发包等工具开发出了一系列蛋白质生物功能在线预报系统。我

6、们分别从设计原理,实现方法以及优化手段等提出了自己的看法和见解。这些在线预报系统涉及到亚细胞定位、翻译后修饰、蛋白质相互作用、酶和底物作用等方面的内容。其中采取MVC的设计模式简化了构建在线预报服务的实现工作,提高了工作效率。并且在诸如weka、httpclient、多线程等技术的使用下使我们的预报系统具有更好的用户体验。关键词:蛋白质生物功能、机器学习,集成学习,组合分类器,酶和底物,O端糖基化,AdaBoost, CFS,在线预报服务器AbstractIn recent years, data resources of biology are growing rapidly for the

7、 developments in IT and detection technology. When the experimental scientists get their research data, they also create many problems to the theoretical scientists. Using machine learning methods to explore and process the data, we can reveal the rules and patterns behind the data and obtain furthe

8、r understandings of the research objects. So, we used the machine learning methods to model and predict some biological functions of proteins. In our thesis, several machine learning algorithms were used for the prediction of interaction between proteins small molecules and the O-glycosylation sites

9、 of proteins. Also we built a series of online prediction services of proteins biological functions and discussed the way of construction and optimization of these services. The main work of this thesis contains three parts:1. Ensemble learning methods were used to investigate the interaction betwee

10、n proteins and small molecules. The prediction model was built by the interactions in metabolic pathways. By comparing with the results of feature selection, we keep the original data sets. In the further process, AdaBoost, Bagging, SVM, KNN, Decision tree were used to model the interactions between

11、 enzymes and compounds. According to the evaluation result of 10 cross validation and independent test, ensemble methods, AdaBoost and Bagging outperform other classifiers. Then the combination systems of multiple classifiers were taken to model the data. The results of 10-cv and independent test co

12、nclude that the combination of 2 good ensemble classifiers and KNN shows the best generalization ability. The true prediction rate in independent test was 75.5%,almost 4% better than previous 2 ensemble classifier. While the overall prediction rate still as high as 84.6%. It could be concluded the m

13、ultiple ensemble system is a good model on predicting the interaction between small molecules and enzymes. An online prediction service of our model based on this research has been built and available to public.2. Correlation-based feature subset (CfsSubset) selection and wrapper methods with AdaBoo

14、st were applied to study the site of O-glycosylation in proteins. The O-glycosylation involve in many biological processes. However, the mechanism of O-glycosylation is so hard to recognize that the patterns of O-glycosylation are still unsure. Here some peptides contain O-glycosylation sites or non

15、-O-glycosylation sites were collected and encoded with the physchemical parameters in AAIndex databases. CFS and PCA were used in the feature selection. After the first step feature selection, SVM、KNN、C4.5、AdaBoost、Bagging were used to evaluate the subsets with 10-cv and independent test set. Then t

16、he wrapper selection with AdaBoost was conducted on the subset from CFS. As a result, twenty-three biochemistry features were found based on jackknife test. The prediction model obtains accuracy rate of 88.1% for jackknife test and 87.5% for independent set test.3. By using Java web technology、weka

17、and third party develop package, a series of online prediction service were built to predict the biological functions of proteins. Design theory, implement methods and optimization ideas were disscused here. These online services deal with subcell location, PTM, protein interaction, interaction betw

18、een enzyme and small molecule. The MVC pattern is used in building the online server which makes our work clear and efficient. The use of weak, httpclient, multithread ensure the better user experiences of our services.Keywords: biological function of protein, machine learning, ensemble learning, co

19、mbining classifiers, enzyme and compound, O-glycosylation, AdaBoost, CFS , online prediction service目录摘要VAbstractVII目录IX第一章绪论11.1机器学习方法概述11.2蛋白质的生物学基础21.3机器学习在蛋白质生物功能注释中的应用31.3.1表征手段31.3.2算法应用41.4生物在线Web预报系统简介51.5论文的主要内容6第二章机器学习算法原理72.1基本学习算法72.1.1人工神经网络算法72.1.2SVM算法72.1.3决策树分类算法82.1.4最近邻算法92.2集成学习算

20、法102.2.1投票算法Voting102.2.2AdaBoost算法102.2.3Bagging算法122.3变量压缩 / 筛选算法132.3.1主成分变换132.3.2CFS算法142.4本章小结15第三章蛋白质-小分子相互作用预报的集成学习研究163.1引言163.2数据来源与表征163.2.1数据来源163.2.2数据表征173.3结果与讨论213.3.1试验方法的选择213.3.2变量筛选结果223.3.3建模与分析233.4本章小结28第四章 蛋白质糖基化位点预报的数据挖掘研究304.1引言304.2数据来源与表征314.2.1数据来源314.2.2数据表征314.3结果与讨论33

21、4.3.1试验方法的选择334.3.2初步变量筛选334.3.3Wrapper变量筛选354.3.4建模与分析354.4本章小结39第五章 蛋白质生物功能在线Web预报系统的建设405.1引言405.2在线Web预报系统设计架构与原理415.2.1在线预报系统设计架构415.2.2在线预报系统设计原理435.3在线预报服务器的实现以及优化445.3.1蛋白质间相互作用分类在线预报系统445.3.2蛋白质翻译后修饰sumo位点的在线预报系统465.3.3蛋白质和小分子相互作用的在线预报系统485.4本章小结50第六章 总结与展望526.1全文总结526.2工作展望53参考文献54作者在攻读硕士学

22、位期间公开发表的论文和专利61致谢62第一章绪论1.1机器学习方法概述机器学习是人工智能领域中与算法相关的一个子领域,其研究主旨是使用计算机模拟人类的学习活动,也就是说如何使机器不断地进行学习,当然,这里的学习是指从数据中学习1。这就相当于将一组数据传递给算法,然后去由这些算法预报出和这些数据相关的一些属性和信息。其重点在于对未知的数据进行预报。机器学习之所有这种作用,是因为在同一主题的大量数据中一般都含有某些模式,通过对数据的学习,可以对这些隐含的模式进行归纳和整理,以此得到一个模型。而做出预报的就是这个学习后的模型2。在机器学习领域中有许多不同的算法,从宏观上可以把这些算法分成有人监督学习

23、、无人监督学习、半监督学习等。应该说所有算法都各有千秋、各有所长,并适应于不用的问题,有些算法直观明了,比如决策树。而有的算法比如人工神经网络其学习过程则是一个黑箱。应该说机器学习仍然是一门高速发展的学科,我们也要看到其缺点和限制。大部分的方法受限在大规模样本的学习情况,而对于小样本数据集的学习可能会产生错误的学习和理解。然而在进行大规模数据处理的时候控制计算复杂度、缺失值的处理和分析、非均衡样本的分类界限等课题都迫切地需要有效地解决。对于机器学习这一迷人的方法,我们应抱着辩证的角度去看。机器学习的结果更应该被视作为一种获取新信息、新知识的途径。从模型中我们提取有益的信息并利用之。对于机器学习

24、的结果进行分析和解释是非常重要的环节。人类拥有的学习能力要远远大于机器,因此从某种角度说我们人类也是某种机器。总的说来,机器学习应该成为一名科研工作者的工具,正确使用它可以有效降低工作量、提高工作质量。1.2蛋白质的生物学基础 蛋白质是由20种常见氨基酸组成的生物大分子。对于两两氨基酸来说可以通过羧基与氨基的缩合形成酰胺键,也叫肽键。多个氨基酸通过肽键连接形成了多肽链。从另一个角度来说蛋白质就是通过肽键把氨基酸聚合起来的多肽链大分子。而由于氨基酸之间的脱水反应,所以在蛋白质中的氨基酸又被称作残基。在后文我们的研究对象一般针对蛋白质,所以我们会交替使用氨基酸和残基这2个名字来称呼多肽链中的氨基酸

25、。就蛋白质的结构来说,可以分为一、二、三、四级结构。蛋白质的一级结构是指构成蛋白质大分子的残基的排列顺序。一级结构是蛋白质结构的基础,它影响着蛋白质更高层次的结构。每种蛋白质都具有特定的一级结构。但是一些彼此相关的蛋白质,其一级结构具有不同程度的相似性3。蛋白质的一级结构派生出二级结构。它是指多肽链沿一维方向排列成为具有周期性结构的构象。二级结构其实指的是多肽链的局部构象,其基本的类型有螺旋、折叠以及回折3。螺旋是很常见的二级结构,也很容易进行识别。其特征是:每圈含有3.6个残基,螺距为0.54nm,残基高度0.15nm,螺旋半径是0.23nm,相邻螺旋间形成氢键,取向与螺旋轴几乎平行。折叠也

26、在蛋白质中普遍的存在着。每个折叠的平均长度约相当于6.5个残基。一般来说,单个的折叠很难形成肽键,所以不太稳定。只有通过肽链之间的氢键使多个折叠形成一组折叠才可以比较稳定。这样的一组折叠叫折叠片4。而回折结构指的是多肽链发生180的结构转弯。这样的回折并非像螺旋那样是一种周期性扭转。回折主要分为2种:转角和转角。前者是由4个连续的残基构成的,其中首个残基中的羰基会和第4个残基的亚氨基产生氢键作用。而转角则由3个连续的氨基酸组成,并也会形成氢键,只不过是由第一个和第三个来形成5。蛋白质的结构还可进一步分成三级结构和四级结构,这里就不详细加以描述了。1.3机器学习在蛋白质生物功能注释中的应用蛋白质

27、相关数据的不断膨胀给机器学习在这一领域的应用做好了铺垫6。各大主流生物数据库更是收集了海量的生物学数据。所以把机器学习算法用在和蛋白质相关信息的建模和预报上是非常合适的。近年来,蛋白质的生物功能的研究逐渐得到重视。机器学习方法在蛋白质和核酸、蛋白质和蛋白质、蛋白质和小分子相互作用、蛋白质亚细胞定位以及蛋白质翻译后修饰等领域的研究都有很多的报道7。我们下面分别从表征手段和方法应用予以介绍。1.3.1表征手段1.3.1.1氨基酸组成在前面的小节中我们介绍了蛋白质是由20种常见氨基酸组成的生物大分子。所以把蛋白质序列中氨基酸组成含量来表征序列是一个直接又基本的方法。它反映了序列的全局属性。在这样的方

28、法的表示下,整个序列成为了一个20维的向量。Nakashima用氨基酸组成的方法来预报蛋白质类型8。Stawiski等用氨基酸组成等变量预测蛋白质与核酸之间的作用9。Chou用氨基酸组成来表征蛋白质以预报其结构的分类10。1.3.1.2拟氨基酸组成在氨基酸组成的基础上,Chou等提出了拟氨基酸组成11。它被定义为一个(20+) 维的向量,前20维元素代表前面提到过的氨基酸组成。而后维元素则表示序列相关因子,该因子可以根据残基的疏水指数、亲水指数和侧链分子量等性质计算得到。由于拟氨基酸组成进一步加入了氨基酸的物化性质,而且该方法加入了可以扩展的物化性质参数,所以预报正确率有所提高。Chou和Ca

29、i发展了基于连续模式的拟氨基酸组成12。Fang等用拟氨基酸组成研究了蛋白质与DNA相互作用分类体系,取得了比较好的推广效果13。1.3.1.3物化性质表征用物化参数来表征蛋白质序列也是一种很成熟的表征手段。应该说在前面提到的拟氨基酸组成中已经引入了部分物化性质。而我们这里主要介绍利用AAIndex氨基酸索引数据库来表征蛋白质序列。AAIndex收集了大量常见氨基酸的各种物化性质参数14。它包括了疏水性指数、电负性、酸碱性、结构性、溶剂可及性等各种参数。一般来说用AAIndex的表征方法不会对整个蛋白质序列进行表征,而是和指定长度的肽段结合起来进行。Lu等用AAIndex和mRMR筛选相结合,

30、研究了糖基化位点的预报15。Guan等选用了93个AAIndex参数研究了肽段和蛋白质之间的相互作用16。1.3.2算法应用研究蛋白质及其作用对象是一个既重要又具有挑战的课题。通过研究小分子与蛋白质17、蛋白质与蛋白质相互作用18、DNA与蛋白质之间的作用19, 20,可以揭示有机小分子的生物功能以及设计药物21,理解蛋白质在生物的各种过程中的重要作用。我们这一小节主要介绍不同算法在蛋白质领域的发展。Cai等用最近邻算法研究了酶和底物之间的相互作用22。Liu等用了蛋白质组成及其物化结构信息等114个参数,用十组交叉验证的mRMR-KNN的变量筛选方法研究了果蝇体系的46万条蛋白质相互作用关系

31、,总体正确率达到了73% 18。Cai 等采用支持向量机方法来研究验证蛋白质与DNA之间有无相互作用,其多组交叉验证的正确率达到81.00%23。蛋白质在细胞中只有被转运到正确的部位才能参与到细胞的各种生命活动。所以蛋白质亚细胞定位也成为了蛋白质生物功能的机器学习热点。Cedano等人提出了ProtLoek算法并对五类亚细胞定位进行预测24。Hubbard运用神经网络方法分别对4种真核生物蛋白质和3种原核生物蛋白质进行了分类25。Chou提出了基于SVM算法来对十二类不同的亚细胞定位进行预报11。Niu等用AdaBoost的集成学习方法对蛋白质12类亚细胞定位进行了预报26。翻译后的蛋白质还需

32、要额外的反应来对自己进行结构上的修饰。这些反应包括添加新的基团如磷酸化、糖基化,以及对已有的基团进行修饰,如巯基的氧化。这些修饰对于蛋白质功能有重要的作用。在机器学习领域对翻译后修饰也形成了一个研究热点。Plewczynski 等用对SVM方法对Swiss-Prot数据库中的各种翻译后修饰建立了预报模型27。Blom等用人工神经网络方法对蛋白质的磷酸化问题进行了研究,并建立了在线预报系统28。Xue等用GPS 和MotifX方法对蛋白质的SUMO化修饰位点进行了研究,其多组交叉验证正确率达到了97.2%29。1.4生物在线Web预报系统简介目前,不少针对蛋白质生物功能的研究以实验或量化模拟方法

33、为主。用实验方法研究蛋白质生物功能,人力物力投入大,实验成本高。而与量化模拟有关的研究大多是依靠已建的相关数据库用分子动力学以及量子力学的模拟方法。这些方法模拟精度和可解释性好,但往往模拟时间长、计算复杂度高、难以实现批量的快速预报、并且一般需要配备大型的计算服务器。而对于普通的实验者来说没有相应的软硬件,则无法获取其有效资源。用机器学习方法获得的统计模型和一些软件结合起来,却可以制作成网页形式的在线预报系统30。实验者在我们的预报页面提交相应的数据,在短时间内,我们做出的统计模型就可以返回预报结果。由于该预报系统安装在我们自己的服务器上,计算工作由我们完成。所以对实验者只要有电脑、能上网即可

34、使用26。由于机器学习所需的建模数据可以通过国际上一些免费的数据库获得,无须其他设备和费用。在线预报时,用户只需在预报网页界面提供诸如蛋白质序列之类的数据,无需任何算法和计算背景,实施起来方便快捷。综上所述,该预报系统具有预报迅速、实施成本低廉的优点。所以这种结合机器学习、网络开发、生物信息的预报方式,将很有应用和推广的前景。1.5论文的主要内容本论文运用各种机器学习方法,研究了蛋白质和小分子的相互作用,蛋白质糖基化位点的预测,以及各种和蛋白质生物功能相关的在线预报系统的建设和实施。本文各章研究的主要内容分别为:第一章为绪论,简要介绍了机器学习及其在蛋白质生物功能注释研究中的应用。第二章介绍了

35、本研究用到的机器学习算法。第三章系统研究了基于集成学习算法的蛋白质和小分子相互作用研究。第四章论述了如何用机器学习方法进行蛋白质糖基化位点的预报。第五章介绍了蛋白质生物功能在线预报系统的实现原理与其实现和优化。本文的主要工作成果在于:1. 建立起了有关蛋白质和小分子相互作用的模型2. 建立起了蛋白质糖基化位点预报的模型3. 建立了蛋白质生物功能在线预报服务器,使预报模型能够为领域专家和实验工作者所用。第二章机器学习算法原理本章我们将介绍文章中出现的以及非常经典的机器学习算法原理。对于这些原理,我们期望能摆脱繁琐的数学推导而更注重算法本身背后的思想。2.1基本学习算法2.1.1人工神经网络算法

36、本文用的是机器学习算法来研究生物问题。其实有很多机器学习算法的原型来自于生物领域。生物的智能行为与思考方式是机器学习原理参照的一面非常好的镜子。而人工神经网络就是这样一种试图模拟生物体神经系统结构的机器学习算法。应该说人工神经网络的最初形式-神经元以及感知器模型甚至是机器学习乃至人工智能的鼻祖。McCulloch和Pitts早在1943年就以神经元的激励和抑制,建立了具有指定输入、输出方式的McCulloch- Pitts模型31。Rosenblatt在1962年研究了多层结构的感知器模型32。它实际就是后续人工神经网络的简化版。在当时没人知道如何去为每层的神经元选择合适的参数。Rosenbl

37、att所采用的策略是:固定输出神经元外的所有其他神经元的全部参数,然后对输出神经元的参数进行调整,以最终找到一个合理的分类平面。25年后,也就是1986年,一种通过后向传播技术来确定感知器所有神经元合适参数的方法被报道出来33,Rosenblatt感知器模型从而产生了一个质的飞跃,它已无需再指定参数。利用基于梯度下降算法的误差逆传递技术,后向传播的神经网络就可以确定各层的权重。后向传播技术带来的是更为一般的学习机器,人们把这种黑箱的学习机器称作后向传播人工神经网络。对于复杂的非线性拟合,此种机制下的人工神经网络展现出优秀的特性。2.1.2SVM算法支持向量机是Vapnik 等人提出的机器学习方

38、法,它以“统计学习理论”(Statistical Learning Theory)作为基础34, 35。其基本思想是将训练集在更高维的空间进行表达,同时在更高维空间中寻求训练集中两类不同样本分类的最优超平面(Optimal hyperplane)。距离该超平面最近的那部分样本向量被称为支持向量(Support Vector),它们是确定超平面的训练样本,同时也是最难分类的样本,其对分类的决策有着丰富的信息量。在下图中加粗的黑线即为最优超平面,该超平面把空间分割为2个类别,R1和R2。粗黑线两侧的2条灰色直线上的点就是支持向量。它们到最优超平面的距离(间隔)在一定的约束条件下是最大化的。图2.1

39、 SVM分类示意图SVM 有线性和非线性两种,这取决于SVM采用的核函数变换是线性的还是非线性的。采用核函数变换可以避免样本从低维空间向高维空间映射后所引起的维数灾难问题。 SVM方法往往能够避开局部最优解,同时能针对小样本集获取比其他方法更好的推广推力。2.1.3 决策树分类算法决策树分类算法是以树结构为基础发展出来的一系列算法36。它对噪声和缺失数据有比较好的包容性。通过对训练样本集训练,可以构造出一棵可表达一定规则的决策树,该树对样本空间进行了划分。当使用决策树对未知样本预报时,决策树算法利用已生成的树,从根结点开始对该样本的属性测试其值,并且顺着分枝向下移动,直至达到某个叶结点为止。此

40、叶结点代表的类即为该样本的分类结果37。例如,图2.1即为一棵决策树,它将整个样本空间分为二类。如果一个样本属性Outlook的取值为Sunny且Humidity属性为Normal,则该样本被分为Yes类,而如果该样本的Outlook的取值为Rain且Wind取值为Strong,则该样本属于No类别。图2.2 一颗决策树实例对于分类树来说,决策树会根据信息增益或信息增益比这样的评判函数来确定什么样的属性合适作为结点。在早期的决策树中,往往只使用自顶向下式的贪心搜索遍历去发现可能的解空间。而这种方式容易引起过拟合,而导致树的推广能力变差。为了避免过拟合现象的出现,改进了的决策树算法采取及时停止树

41、的增长,以及利用后修剪方法来改善树的规模和复杂度38。对于连续值的属性,改进了的决策树也采取分割的手段,把连续的值进行离散化,即划分为离散的区间集合。划分的依据是对样本按该属性进行排序后,确定目标分类不同的相邻实例,再取相邻值的均值作为划分的候选39。最后选取信息增益最大的划分作为正式划分。2.1.4最近邻算法 KNN算法,也叫K最近邻算法,是机器学习领域最基础的算法之一,属于有人监督的分类方法40。其基本思想是“近朱者赤、近墨者黑”。即先将分好类别的训练样本点计入多维空间中去,再把待分类的未知样本也记入空间,并考察未知样本点的K个近邻(为了避免产生不可分情况,K通常取单数,比如1,3,5,7

42、等)。若未知样本的K个近邻中某一类样本占多数,则可将未知样本判为该类,也就是我们前面说的“近朱者赤、近墨者黑”。在多维空间中,各个点之间的距离度量通常规定为欧氏距离、马氏距离等。 KNN的好处是对数据集本身的结构没有要求,只要用每个未知点的近邻属类来判别就行了。同时KNN也不需要训练过程,即只要明确距离大小,就可分类41。由于评价KNN模型需要计算所有样本点彼此之间的距离,且每判断一个新的未知点都要计算其与所有已知点的距离,所以随着样本点的增加计算量急剧增多。2.2集成学习算法推广能力是机器学习领域关心的一个核心问题。而正由于集成学习可以利用分类器的多样性来有效地提高推广能力,故最近二十年,对

43、集成学习理论和算法的研究成为了机器学习的一个热点。狭义地说,集成学习是指利用多个同质的学习器来对同一个问题进行学习,这里的“同质”是指所使用的学习器属于同一种类型。广义地来说,只要是组合多个学习器来解决问题,就是集成学习。2.2.1投票算法Voting投票算法是最简单和实用的集成方法。该方法通过把多个分类器集成起来可以有效利用各个分类器之间的互补性,提高模型的鲁棒性和推广性42。投票算法既是广义集成算法,也可以集成同质的分类器。而且投票过程也是后续要介绍的集成算法中必须要进行的一个步骤。其算法流程是:1. 对数据集的每个样本,用n个分类器来训练2. 将所有分类器的结果进行汇总3. 选出投票占最

44、多数的那个分类类别作为该样本最终类别的结果4. 对数据集的其他样本重复1-3步骤,直到所有样本分类完毕对于一个2类的分类问题,我们一般把分类器的数量指定为奇数,这样可以避免以下公式中因为分类结果数相当而无法分类的情况。另外投票体系还可以针对分类器的不同结果进行加权。比如正确率高的分类器在整个投票体系中拥有更高的权重。2.2.2AdaBoost算法AdaBoost (Adaptive Boosting),即自适应提升算法在集成学习领域有着广泛的用途。其原型来自于Boosting方法43。Boosting方法的核心理念,浅白地说就是“失败是成功之母”。通过对失败情况的足够重视,可以吸取教训,从而提

45、高最终成功的概率。用Boosting方法能迭代地产生一系列的分类器。在该系列分类器的每轮迭代中,当前的一个分类器会对前一个分类器的错误分类会给予更大的重视。在分类器的训练过程中,每个样本都会被赋予一个相应的权重。每当当前分类器完成了本次迭代的学习后,会增加被错分的训练样本的权重,也就是说要对其引起重视。通过对整个训练数据集权重的重新计算后,就进入下一个迭代轮次中分类器的训练,本轮迭代就结束。这样的迭代会重复多次。最终的分类器从迭代过程中产生的分类器系列中综合投票得出。Boosting能够将不稳定的弱分类器结合起来,通过最终获取到的弱分类器进行多数投票,将会得到一个分类性能大大提高的强分类器。B

46、oosting的具体过程如下所示:1. 先通过对样本大小为N的数据集训练得到第一个弱分类器h1;2. 将h1分错的数据和其它的新数据一起构成一个新的有N个训练数据的样本,通过对这个样本集的学习得到第二个弱分类器h2;3. 将h1和h2都分错了的数据加上其它的新数据,构成另一个大小为N的训练样本集,通过对该个样本集的学习得到第三个弱分类器h3。4. 最终经过提升的强分类器。即某个数据被分为哪一类要通过的多数表决。AdaBoost44在Boosting算法的基础上对一些策略进行了调整: 比如使用加权后选取的训练数据代替随机选取的训练数据,这样将训练的焦点集中在比较难分的训练数据上。而在最终的投票阶段,使用加权的投票机制代替平均投票机制。让分类效果好的分类器其权重较大,而效果差的分类器则具有小的权重45。其算法的流程如下:1. 给定训练样本集,初始化权重系数;2. 循环t=1,.T,在循环中的每一次:1)根据训练集的概率分布Dt来训练样本,并得到基本分类器ht;2)根据ht的分类结果来更新样本的权重系数;3)得到预报误差最小的基本分类器ht;3. 用加权方式处理前面产生的分类器,并输出最终的强分类器H2.2.3Bagging算法Breiman在1996年提出了Bagging方法,即装袋的集成学习方法46

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1