集成学习(Ensemble Learning)
1.集成学习的分类
- Bagging:Bagging是由多个弱学习器集成起来的强学习器,但弱学习器之间没有依赖关系,可以并行生成,简单来说就是每个弱学习器学习数据的一部分特征,然后测试的时候根据结合策略就能得到一个数据总体特征然后分类。Bagging是基于自助采样法(bootstrap sampling):给定包含m个样本的数据集,先随机取出一个样本放入采样集中,再把该样本放回初始数据集,使得下次采样时该样本仍有可能被选中,这样,经过m次随机采样操作,得到含m个样本的采样集,初始训练集中有的样本在采样集里多次出现,有的则从未出现,然后基于每个采样集训练出一个基学习器,再集成。
- Boosting:Boosting是让整个数据集以放入到一个弱学习器中进行学习,每个样本和弱分类器都有一个初始权重,之后根据训练结果的好坏对权重进行调整,如此重复进行,直到弱学习器数达到事先指定的数目T,最终将这T个弱学习器通过集合策略进行整合,得到最终的强学习器。
2.集成学习的结合策略
- 平均法:当预测问题是连续数值的回归问题时常用。
- 投票法:取单层分类器分类结果的众数,一般还有阈值,也就是说众数达到一定数量才会判断为正确。
- 学习法:从初始训练集训练出初级学习器,然后生成一个新数据集用于训练次级学习器。在这个新数据集中,初级学习器的输出被当作样例输入特征,而初始样本的标记仍被当做样例标记,得到的新学习器作为集成学习器。
3.随机森林
- 方法:从样本集(假设样本集N个数据点)中重采样选出n个样本(有放回的采样,样本数据点个数仍然不变为N,之所以要有放回就是怕过拟合),在所有样本上,对这n个样本建立分类器(ID3\C4.5\CART),重复以上两步m次,获得m个分类器,最后根据这m个分类器的结合策略,决定数据属于哪一类。
- 优点:样本的随机(从样本集中用Bootstrap随机选取n个样本)和特征的随机性(从所有属性中随机选取K个属性,选择最佳分割属性作为节点建立CART决策树ÿ