机器学习之集成学习1

集成学习通过结合多个学习器,通常能获得更好的性能。本文详细介绍了集成学习中的boosting算法,特别是Adaboost、GBDT(Gradient Boosting Decision Tree)、XGBoost,并对比了它们之间的差异。此外,还讨论了随机森林及其与GBDT的比较,以及分类树和回归树的区别。
摘要由CSDN通过智能技术生成

集成学习:

最直白的理解:人多力量大

  • 集成学习通过将多个学习器进行结合,从理论上来讲使用弱学习集成可以获得更好的性能。
  • 集成算法的两个主要问题:如何选择若干个体学习器,以及选择何种策略将这些个体学习器集成为一个强学习器。
  • 集成算法的成功在于保证个体学习器的多样性(好而不同),且集成不稳定的算法也能够得到一个比较明显的性能提升。

常见的集成学习有:

        Bagging:训练多个分类器取平均——用于减少方差

        Boosting: 从弱分类器开始加强,新分类器一定更强——用于减少偏差

        Stacking:聚合多个分类和回归模型——用于提升预测结果

在这里插入图片描述

1、boosting算法

boosting算法是一族可将弱分类器提升为强分类器的算法。算法的工作机制类似:先从初始训练集训练出一个基分类器,再根据基学习器的表现对训练样本分布进行调整,使得先前基学习器分错的样本在后续受到更多的关注,然后基于整理后的样本分布来训练下一个基学习器;反复进行,直至基学习器的数目达到事先指定的值T,最终将这T个基学习器进行加权结合。
Boosting算法包括:Adaboost、GB、GBDT与XGBoost,其中最出名的就是Adaboost

1.1Adaboost算法

设训练数据集T={(x1,y1), (x2,y2)…(xN,yN)}
初始化训练数据的权值分布
在这里插入图片描述
使用具有权值分布Dm的训练数据集学习,得到基本分类器Gm


在这里插入图片描述

计算Gm(x)在训练数据集上的分类误差率


在这里插入图片描述

计算Gm(x)的系数


在这里插入图片描述

更新训练数据集的权值分布


在这里插入图片描述

这里,Zm是规范化因子,它的目的仅仅是使Dm+1成为一个概率分布


在这里插入图片描述
在这里插入图片描述

构建基本分类器的线性组合


在这里插入图片描述

得到最终分类器


在这里插入图片描述

看不懂以上公式也没关系,下面将举一个例子:
如果想看该例子(adaboost)的程序,可以点这里
给定下列训练样本,试用AdaBoost算法学习一个强分类器。
在这里插入图片描述

初始化训练数据的权值分布:W1i= 0.1


在这里插入图片描述

第一个m=1
在权值分布为D1的训练数据上,阈值v取2.5时误差率最低,故基本分类器为:


在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值