周志华 《机器学习》之 第八章(集成学习)概念总结

看完集成学习类容,最大的感受就是学习了众多机器学习算法,各有优缺点,那么如何集各大算法优点使得最优的完成任务呢?那就是本章提到的集成学习。集成学习通过构建并结合多个学习器来完成学习任务,有时也被称为多分类器系统。周老师书中按如下章节介绍:

1、个体与集成

“同质”:由类型相同的学习器组合而成的集成学习器,每个学习器可称为基学习器
“异质”:由类型不相同的学习器组合而成的集成学习器,每个学习器可称为“组件学习器”
集成学习通过将多个学习器进行结合,常常可以获得比单一学习器具有显著优越的泛化性能。这个对于弱学习器尤为明显。
如何获得一个好的集成学习器呢?每个个体学习器具有一定的准确性(每个学习器不能太坏)和多样性(每个学习器之间存在差异)
集成学习方法可以分为两大类:一是个体学习器间存在强依赖关系、必须串行生成序列化方法,代表有Boosting算法,二是个体学习器之间不存在强依赖关系、可同时生成的并行化方法,代表有Bagging和随机森林(Random Forest)

2、Boosting

Boosting算法是一族可以将弱学习器提升为强学习器的算法。
Boosting工作原理:先从初始训练集中训练出一个基学习器,再根据基学习器的表现对训练样本分布进行调整,使得先前基学习器做错的的训练样本在后续受到更多的关注,然后基于调整后的样本分布训练下一个基学习器,如此重复进行,知道基学习器数目达到事先指定的值 T ,最终将这 T 个基学习器进行加权结合。这种算法最具有代表的是AdaBoost算法。
AdaBoost算法可以理解是基于“加性模型”,即基学习器的线性组合。

H(x)=t=1Tαtht(x)

参阅: http://blog.csdn.net/dark_scope/article/details/14103983

3、Bagging与随机森林

(1)、Bagging算法
Bagging算法基本流程:采用自助采样法,可以采用出 T 个含 m 个训练样本的采样集,然后基于每个采样集训练出一个基学习器,再将这些基学习器进行结合。
(2)、随机森林(Random Forest)
随机森林是Bagging的一个扩展变体,随机森林是在以决策树为基学习器构建Bagging集成的基础上,进一步在决策树的训练过程中引入了随机属性选择。具体的说,传统决策树在选择划分属性时是在当前结点的属性集合(假定有 d 个属性)中选择一个最优属性;而在随机森林(RF)中,对基决策树的每个结点,先从该结点的属性集合中随机选择一个包含 k 个属性的子集,然后再从这个子集中选择一个最优属性用于划分。
可以参阅:http://www.cnblogs.com/hrlnw/p/3850459.html

4、结合策略

集成算法,介绍完后,那么如何使结合后的集成算法明显的优势呢?也就是说如何将训练出来的多个基学习器如何很好的结合在一起呢形成新的集成算法呢?本书提出平均法、投票法、学习法三种结合策略。

5、多样性

多样性,在前面已经提到过,一个好集成算法,需要训练出来的基学习器具有很强的多样性。
(1)误差-分歧分解
(2)多样性度量
(3)多样性增强
在集成学习中需要有效地生成多样性大的个体学习器。如果增强多样性呢?一般思路是在学习过程中引入随机性,常见的做法是对数据样本、输入属性、输出表示、算法参数进行扰动。

你可能感兴趣的:(机器学习)