分享
15集成学习2.pptx
下载文档

ID:3454550

大小:2.76MB

页数:48页

格式:PPTX

时间:2024-05-08

收藏 分享赚钱
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,汇文网负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
网站客服:3074922707
15 集成 学习
集成学习2,Boosting集成算法Adaboost算法GBDT算法代码实战,目录,2,什么是Boosting?,目录,3,Boosting集成算法集成模型一览Boosting思想经典算法介绍Adaboost算法GBDT算法代码实战,目录,4,集成模型一览,5,由于是抽象的,也可以叫思想,具体实现,集成模型,boosting模型,bagging模型,AdaBoost模型,提升树,GBDT,xgboost,随机森林,base_estimator KNN,base_estimator 决策树,LightGBM,集成学习Boosting思想,6,个体学习器1,强学习器,结合策略,数据1,个体学习器2,数据2,个体学习器T,数据T,.,Boosting通过串行地构造多个个体分类器,然后以一定的方式将他们组合成一个强学习器,Boosting在集成学习领域是非常耀眼的一类方法,其中又以AdaBoost和GBDT最为突出AdaBoost是Adaptive Boosting的简称,在人脸识别和处理不均匀数据相关领域得到广泛引用;GBDT 更是被称为最强学习器,在各类数据竞赛中得到追捧。这两类方法都是集成模型,其构造方法是通过构造多个弱分类器来组成一个强分类器,且他们同属于Boosting框架Adaboost和GBDT之间有什么区别呢?,集成学习Boosting思想,AdaBoost不属于梯度提升方法(Gradient Boosting),即它在构造集成模型的时候没有用到梯度下降的思想,而是用的 Forward Stagewise Additive Modeling(分步前向加性模型,FSAM)。基于Gradient Boosting算法的学习器被称为Gradient Boosting Machine(GBM),如果说AdaBoost是boosting方法的开山之作,那么GBM就是boosting方法的集大成者。,集成学习Boosting思想,Boosting集成算法Adaboost算法直观理解概述分类解析分类案例回归解析Adaboost小结GBDT算法代码实战,目录,9,直观理解,10,直观理解,11,直观理解,12,直观理解,13,直观理解,14,直观理解,15,直观理解,16,概述,17,定义Adaboost是一种迭代算法,其核心思想是针对同一个训练集训练不同的分类器(弱分类器),然后把这些弱分类器集合起来,构成一个更强的最终分类器(强分类器)。介绍AdaBoost,是“Adaptive Boosting”(自适应增强)的缩写,是一种机器学习方法,由Yoav Freund和Robert Schapire于1995年提出。思想前面的模型对训练集预测后,在每个样本上都会产生一个不同损失,AdaBoost会为每个样本更新权重,分类错误的样本要提高权重,分类正确的样本要降低权重,下一个学习器会更加“关注”权重大的样本;每一次得到一个模型后,根据模型在该轮数据上的表现给当前模型设置一个权重,表现好的权重大,最终带权叠加得到最终集成模型。,概述,18,两个问题如何得到若干个个体学习器?如何将个体学习器进行结合?,分类解析,19,输入:训练集为训练弱学习器M个。输出:最终的强学习器G(x)1)初始化样本集权重为2)对于m=1,2,.,M:a)使用具有权值分布Dm的训练数据来训练模型,得到弱学习器Gm(x)b)计算Gm(x)的分类误差率,1=11,12,.,1 1=1,=1,2,.,=1(),=(1,1),(2,2),.,(,),1,+1,分类解析,20,c)计算弱学习器的系数d)更新训练集中样本的权重 m=(,exp)3)最终学习器为:,=1 2 1,()=(),+1,=,m exp,i=1,2,3,=1,分类解析,21,个体学习器1,强学习器,结合策略,数据1,个体学习器2,数据2,个体学习器T,数据T,.,1,2,3,=1,()=(),1,2,3,第一次设置样本权重相同通过错误率计算学习器权重更新下一次样本权重。计算每个学习器权重和结果的乘积,计算最终结果,有如下的训练样本,我们需要构建强分类器对其进行分类。x是特征,y是标签如何才能使用AdaBoost进行处理?,分类案例,22,设置初始的样本权重值 1 初始每个样本的权重为 1,=0.1,=1,2,10初始第一个弱分类器,经过决策树分类原则,知道最佳阈值点为2,得到弱分类器:1=1,2 1,2,分类案例,23,通过误差率计算,可以计算出误差率为=0.3计算 1 在强分类器中的权重系数 1=1 2 log 1 1 1=0.4236更新样本的权重分布,用于下一轮迭代:归一化因子(用于将样本权重加和值固定为1)1=(1,exp 1 1)更新后的权重进行调整可以看出,计算正确的样本权重减小,错误的权重增大,分类案例,24,=1(),2,=1,1 exp 1 1,i=1,2,10,得到第一轮迭代的强分类器sign(F1(x)=sign(0.4236G1(x)依此类推,经过多轮以后,得到如下强分类器:sign(F3(x)=sign(0.4236G1(x)+0.6496G2(x)+0.7514G3(x)分类误差率为0,结束迭代。F(x)=sign(F3(x)就是最终的强分类器。,分类案例,25,分类案例,26,输入:训练集为训练弱学习器M个。输出:最终的强学习器G(x)1)初始化训练集权重为2)对于m=1,2,.,M:a)使用具有权值分布Dm的训练数据来训练模型,得到弱学习器Gm(x)b)计算fm(x)的回归误差率,回归解析,27,1=11,12,.,1,1=1,=1,2,.,=(1,1),(2,2),.,(,),=1()2 2,c)计算m(用于计算弱学习器的系数)d)更新训练集中样本的权重误差小的,降低权重,误差大的增加权重3)最终学习器先对弱学习器进行加权,取中位数,再组成最终模型,回归解析,28,()=1(1)(),其中()是所有(),=1,2,.,的中位数,=1,+1,=1 1,优点:可以使用各种回归分类模型来构建弱学习器,非常灵活Sklearn中对AdaBoost的实现是从带权学习视角出发的,思想朴素,易于理解控制迭代次数可以一定程度防止发生过拟合缺点:对异常样本敏感,异常样本在迭代中可能会获得较高的权重,影响最终预测准确性。,AdaBoost小结,29,AdaBoost属于boosting思想,他是1995年由Freund等人提出提升树AdaBoost思想结合决策树的基学习器,就得到提升树模型。提升树做分类时,基学习器选CART分类树;回归时选CART回归树两个视角带权学习视角、前向分布学习视角前向分步学习的说明在前向分步学习视角下,当提升树的损失函数是平方损失和指数损失时,优化是简单的,但对一般损失函数而言优化难度大,即没有通用的求解方案因此2001年,Friedman提出了一个通用方案梯度提升,起名为GBDT,AdaBoost小结,30,Boosting集成算法Adaboost算法GBDT算法直观理解概述算法解析代码实战,目录,31,如何制作美丽的冰雕,直观理解,32,如何制作美丽的冰雕,直观理解,33,如何制作美丽的冰雕,直观理解,34,如何制作美丽的冰雕,直观理解,35,GBDT全称Gradient Boosting Decison Tree,同为Boosting家族的一员,它和Adaboost有很大的不同。Adaboost 是利用前一轮弱学习器的误差率来更新训练集的权重,这样一轮轮的迭代下去,简单的说是Boosting框架+任意基学习器算法+指数损失函数。GBDT通过多轮迭代,每轮迭代产生一个弱分类器,每个分类器在上一轮分类器的残差基础上进行训练。对弱分类器的要求一般是足够简单,并且是低方差和高偏差的。因为训练的过程是通过降低偏差来不断提高最终分类器的精度,概述,36,GBDT由三部分构成:DT(Regression Decistion Tree)、GB(Gradient Boosting)和Shrinkage(衰减)由多棵决策树组成,所有树的结果累加起来就是最终结果 迭代决策树和随机森林的区别:随机森林使用抽取不同的样本构建不同的子树,也就是说第m棵树的构建和前m-1棵树的结果是没有关系迭代决策树在构建子树的时候,使用之前子树构建结果后形成的残差作为输入数据构建下一个子树;然后最终预测的时候按照子树构建的顺序进行预测,并将预测结果相加,概述,37,回归树(Regression Decistion Tree,DT):GBDT的核心在于累加所有树的结果作为最终结果,所以GBDT中的树都是回归树,而不是分类树。注:GBDT实质上是一个回归算法,不过可以稍微的进行转换后就可以解决分类问题。在分类问题中,假设有k个类别,那么每一轮实质上是构建了k棵树,对于某个样本x的会产生k个输出值,然后将这些输出值使用softmax来产生属于c类别的概率值,选择概率最大的最为最终的预测值,概述,38,=1,衰减(Shrinkage):每次走一小步逐渐逼近结果的效果,要比每次迈一大步很快逼近结果的方式更容易避免过拟合。即模型不完全信任每一个残差树,认为每颗树只“学习”到一部分预测信息,所以在累加的时候只累加一小部分,通过多棵树的迭代就可以弥补不足,概述,39,给定输入向量X和输出变量Y组成的若干训练样本(X1,Y1),(X2,Y2),(Xn,Yn),目标是找到近似函数 F,使损失函数最小在这里我们损失函数使用最小二乘损失函数最优解为:,算法解析,40,以贪心算法的思想扩展得到Fm(X),求解最优f 以贪心法在每次选择最优基函数f时仍然困难,使用梯度下降的方法近似计算 给定常数函数F0(X),算法解析,41,根据梯度下降计算“导数(残差)”值使用数据(,)(i=1n)计算拟合残差找到一个CART回归树,得到第m棵树更新模型,算法解析,42,Boosting集成算法Adaboost算法GBDT算法代码实战API解析回归案例分类案例,目录,43,API解析,44,API解析,45,回归案例,46,并行地训练多颗回归树,对样本进行预测时,所有回归树同时预测,取均值作为输出,分类案例,47,For Your Information,感谢聆听,期待各位的指正!,

此文档下载收益归作者所有

下载文档
你可能关注的文档
收起
展开