集成学习Boosting和Bagging和Stacking总结

集成学习

集成相同的个体学习器,则该集成学习方法是“同质”的;若集成不同的个体学习器,则该集成是“异质”的。
集成学习要求个体学习器要“好而不同”,即个体学习器要有一定的“准确性”,并且要有“多样性”。但是,个体学习器的“准确性”和“多样性”本身就是冲突的。一般来说,准确性很高后,要增加多样性往往就要牺牲准确性,集成学习研究的核心恰恰是“好而不同”。
集成学习的分类
1. 个体学习器之间存在强依赖关系,必须串行生成的序列化方法——Boosting;
2. 个体学习器之间不存在强依赖关系,可同时生成的并行化方法——Bagging

Boosting

Boosting原理:Boosting是一族可将弱学习器提升为强学习器的算法,先用初始训练集训练出一个基分类器,然后,重新对所有样本的权重进行调整,使得当前基分类器分错的样本格外收到关注,根据当前基分类器的预测误差设置当前基分类器的权重。然后,将权重调整后的样本重新训练基分类器,逐步重复上述过程,直到达到指定次数,最终将多个基分类器的预测结果加权结合。
AdaBoost
Boosting主要关注降低偏差,因此Boosting能将泛化性能很弱的学习器构建出很强的集成。Boosting族算法的代表是AdaBoost,其主要训练过程如下:
这里写图片描述
AdaBoost算法的每一轮迭代会更新两种权重:样本的权重和分类器的权重,最终的训练结果为所有分类器进行加权结合。

Bagging

Bagging是并行式集成学习方法的代表。该方法采用bootstrap随机重采样方法构成若干训练子集,对每个训练子集构建基分类器,再将这些基分类器的输出结果采用简单投票法进行结合。
袋外数据(OOB)
1. 估计相应基分类器的袋外误差:每个基学习器只使用了其训练集的63.2%,剩下的36.8%构成袋外数据。袋外数据可用作验证集来对该基分类器的泛化性能进行“袋外估计”,比较验证集和测试集预测结果的差别。
2. 估计特征重要性:将某一特征替换后,通过替换前后的分类器预测准确率来判断其重要性;若将某个特征替换为噪声,若替换后OOB准确率大幅下降,则表明该特征的重要程度较高。
随机森林(RF)
随机森林是Bagging族著名的代表算法,随机森林的随机性体现在两点:构成每棵树的训练集随机性和节点分裂时候选特征的随机性。

Stacking

第j个基模型对第i个训练样本的预测值将作为下一层新的训练集中第i个样本的第j个feature,然后基于新的训练集继续训练;第j个基模型对测试集中第i个样本预测结果的平均值,作为下一层测试集第i个样本第j个feature。
Stacking详细算法流程可参考:
https://blog.csdn.net/wstcjf/article/details/77989963
https://zhuanlan.zhihu.com/p/26890738

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值