模型集成(Ensemble)

集成学习的基本思想是“将多个模型组合在一起通常可以产生更强大的模型”,它通过构建多个个体学习器,再用某种策略将其结合起来完成学习任务。

为了将多个个体学习器集成起来,获得比单一个体学习器更好的性能,个体学习器的性能不能太差,而且个体学习器间要有差异。如何产生有差异的模型,是集成学习的关键
根据集成的模型可分为同质集成和异质集成。同质集成学习中的模型是同类型的,如都是神经网络或者都是决策树;异质集成学习中的模型包含不同类型的模型,如可以包含神经网络和决策树。

Boosting

Boosting先基于初始训练集得到一个弱学习器,再根据当前弱学习器的表现对训练样本分布进行调整,使得较难的样本(即弱学习器学的不好的样本)得到更多关注,基于调整后的样本训练新的弱学习器。如此重复进行,直到训练了所需数目的弱学习器,将他们加权集成,得到最终模型。
Boosting更关注模型偏差,Adaboost是该类算法的典型代表。

Bagging和随机森林

个体学习器无强依赖关系的集成算法,对训练集进行采样,得到若干个不同的子集,由每个数据子集训练得到不同的个体学习器。为保证每个弱学习器都可被较好的训练,可采用有交叠的数据子集以避免无交叠数据子集过小。

Bagging

给定数据集,从数据集D中随机取出样本a放到子集A中,再将a放回D,这样在下次取样时仍有可能被取到。如此重复采样,得到T个大小为m的子集,分别在每个子集上训练得到T个弱学习器。
Bagging通常用投票法或平均法来得到最终输出。

随机森林

随机森林是Bagging的变体,它以决策树为基学习器来构建模型集成,在决策树训练过程中引入了随机集成。

上述提到的主要是同质集成,Stacking可实现异质集成,可参考常用的模型集成方法介绍:bagging、boosting、stacking

你可能感兴趣的:(模型集成(Ensemble))