1. 综述
集成学习通过构建并结合多个学习器来完成学习任务,有时也被称为多分类器系统、基于委员会的学习等。集成中只包含同种类型的个体学习器的集成是“同质”的,同质集成中的个体学习器亦称“基学习器”,相应的学习算法称为“基学习算法”。集成中也可包含不同类型的个体学习器,这样的集成是“异质”的,异质集成中的个体学习器由不同的学习算法生成,这时就不再有基学习算法,相应的,个体学习器称为“组件学习器”或直接称为个体学习器。
集成学习通过将多个学习器进行结合,常可获得比单一学习器显著优越的泛化性能。这对若学习器尤为明显,因此很多集成学习理论研究都是针对弱学习器进行的,而基学习器有时也被直接称为弱学习器。但需要主义的是,虽然从理论上来说使用弱学习器足以获得好的性能,但在实践中出于种种考虑,例如希望使用较少的个体学习器,或是重用关于常见学习器的一些经验等,人们往往会使用比较强的学习器。
集成学习把多个学习器结合起来,
2.Boosting---Adaboost
Boosting是一族可将弱学习器升为强学习器的算法。这族算法的工作机制类似:先从初始训练集训练一个基学习器,再根据基学习器的表现对训练样本分布进行调整,使得先前基学习器做错的训练样本在后续得到更多关注,然后基于调整后的样本分布来训练下一个基学习器,如此重复进行,直至基学习器数目达到事先指定的值T,最终将这T个基学习器进行加权结合。Boosting族算法最著名的代表是Adaboost.
关于Adaboost算法内容转自(http://blog.csdn.net/guyuealian/article/details/70995333)
一、AdaBoost简介
Boosting, 也称为增强学习或提升法,是一种重要的集成学习技术, 能够将预测精度仅比随机猜度略高的弱学习器增强为预测精度高的强学习器,这在直接构造强学习器非常困难的情况下,为学习算法的设计提供了一种有效的新思路和新方法。其中最为成功应用的是,Yoav Freund和Robert Schapire在1995年提出的AdaBoost算法。
AdaBoost是英文"AdaptiveBoosting"(自适应增强)的缩写,它的自适应在于:前一个基本分类器被错误分类的样本的权值会增大,而正确分类的样本的权值会减小,并再次用来训练下一个基本分类器。同时,在每一轮迭代中,加入一个新的弱分类器,直到达到某个预定的足够小的错误率或达到预先指定的最大迭代次数才确定最终的强分类器。
Adaboost算法可以简述为三个步骤:
(1)首先,是初始化训练数据的权值分布D1。假设有N个训练样本数据,则每一个训练样本最开始时,都被赋予相同的权值:w1=1/N。
(2)然后,训练弱分类器hi。具