集成学习

狂风中的少年 提交于 2019-11-25 23:50:58

一、集成学习

对于训练集数据,通过训练若干个个体学习器,通过一定的结合策略,形成一个强学习器。

在这里插入图片描述

二、Boosting模型

下一个子学习器,在当前学习器的基础上生成。最后,通过结合策略,将子学习器间的输出结合起来。
训练样本有权值,每次得到一个新的分类器后,会更新训练集中样本的权值。
参考刘建平–集成学习https://www.cnblogs.com/pinard/p/6131423.html
boosting 模型

2.1 AdaBoost

摘自李航《统计学习方法》

2.1.1 AdaBoost算法

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

  • 误差率
    em=P(Gm(xi)yi)=Σwm,iI(Gm(xi)yi))e_{m}=P(G_{m}(x_{i})\neq y_{i})=\Sigma w_{m,i}I(G_{m}(x_{i})\neq y_{i}))
  • Gm(x)G_{m}(x)系数
    αm=12log1emem\alpha_{m}=\frac{1}{2}log\frac{1-e_{m}}{e_{m}}
  • 样本更新后的权值
    wm,i=wm,iZmiexp(αmyiGm(xi))w_{m,i}=\frac{w_{m,i}}{Z{m}{i}}exp(-\alpha_{m}y_{i}G_{m}(x_{i}))
  • 分类器
    f(x)=Σmαmfm(x)f(x) = \Sigma_{m}\alpha_{m}f_{m}(x)
    G(x)=sign(f(x))G(x)=sign(f(x))

2.1.2 AdaBoost算法误差分析

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

2.2 提升树算法

提升方法实际采用加法模型(基函数的线性组合)和前向算法。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.3 梯度提升树(Gradient Boosting Decision Tree)算法

上面的提升树是对于误差函数取MSE时的构建方法,当损失函数是一般函数时,每次拟合的不是残差,而是拟残差。(提升树中的残差其实也是损失函数对函数f(x)梯度的负方向)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.4 XGBoost

三、Bagging模型

从m个样本训练集中有放回地随机采样m次得到采样集1,训练学习器1,重复n次采样和训练,得到n个弱学习器,通过结合策略结合n个子学习器间的输出。
在这里插入图片描述

四、结合策略

  1. 投票法
  2. 加权
  3. stacking
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!