一、集成学习
集成学习(Ensemble Learning)算法的基本思想是将几种机器学习技术组合成一个预测模型的元算法,以减小方差(bagging),偏差(boosting),或者改进预测(stacking)。几种常见的集成学习思想:(1)Bagging;(2)Boosting;(3)Stacking 【这三个其实不属于某种算法,而是一种思想】
1. Bagging
Bagging的思想是并行
训练多个弱分类器,对于分类问腿采用投票的方式决定最终的预测结果,得票最多的分类类别为最终的类别;对于回归问题,采用简单的平均方法得到预测值。在训练每个弱分类器时,并非每次都利用全部数据,而是bootstrap的抽样方式
,即有放回抽样,每次随机抽m个样本进行分类器的训练,然后放回,以此类推。虽然我用了“然后”的字样,但其实每个分类器的训练是独立的,这也是Bagging速度较快可以并行的原因。此外,Bagging方法可以非常有效地降低variance
(不是bias),更好的提升模型的泛化能力。
当基础模型unstable的时候(比如决策树),使用Bagging效果最好
,