什么是集成学习
-
集成学习是一种分布式机器学习框架,通过构建多个学习器并将其结合起来完成学习任务。由于在实际应用中单一的学习器往往不能达到理想的学习效果,且有时单一学习器会导致过拟合,因此使用多个学习器进行集成学习往往能够达到更好的学习效果。
-
根据学习器训练的模型是否为同类模型,集成学习分为
同质
集成学习和异质
集成学习两类。- 若训练的多个模型是同一类型的模型,则为同质集成学习,所用算法称为"基学习算法",每一个模型称为"基学习器"。
- 若训练的多个模型非同一类型的模型,则为异质集成学习,每一个模型称为"组件学习器"或"个体学习器"。
-
根据模型训练和结合策略的不同,集成学习可分为串行方法(Boosting)、并行方法(Bagging)和堆叠方法(Stacking)三类。
-
根据任务类型是分类还是回归,集成学习的融合方式可以分为投票(voting),平均(averaging)
-
sklearn
中的集成算法模块ensemble
类 类的功能 ensemble.AdaBoostClassifier AdaBoost分类 ensemble.AdaBoostRegressor AdaBoost回归 ensemble.BaggingClassifier 袋装分类器 ensemble.BaggingRegressor 袋装回归器 ensemble.ExtraTreesClassifier Extra-trees分类(超树,极端随机树) ensemble.ExtraTreesRegressor Extra-trees回归 ensemble.GradientBoostingClassifier 梯度提升分类 ensemble.GradientBoostingRegressor 梯度提升回归 ensemble.IsolationForest 孤立森林 ensemble.RandomForestClassifier 随机森林分类 ensemble.RandomForestRegressor 随机森林回归 ensemble.RandomTreesEmbedding 完全随机树的集成 ensemble.VotingClassifier 用于不合适估算器的软投票/多数规则分类器 集成算法中,有一半以上都是树的集成模型,可以想见决策树在集成中必定是有很好的效果。