zoukankan      html  css  js  c++  java
  • AdaBoost

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

    一、简介

      提升算法(Boosting)是一种常用的统计学习方法。在解决分类或者回归问题当中,通过训练可以得到许多若模型,可以对这些若模型进行线性组合从而得到一个更可靠的模型,从而提升模型的准确率或者精度,这就是Boosting算法。

      对于弱分类器的产生以及强分类器的组合,AdaBoost的做法是:

    • 提高每一轮被上一个分类器分错样本的权值(被分错的样本会受到更大的关注),从而迭代产生弱分类器。
    • 加大误差小的弱分类器权值,使其在强分类器中有更大的决策作用。

    二、AdaBoost算法

     1 弱学习算法   

      (1)初始化训练数据的权值分布(对于$omega$,左下标是第几轮的分类器,右下标是第几个样本)

    $$D_{1}=(omega_{11},...,omega_{1i},...,omega_{1N})$$

    $$omega_{1i}=frac{1}{N}$$

      (2)对m=1,2,...,M

        (a)使用具有权值分布$D_{m}$的训练数据集学习,得到基本分类器

    $$G_{m}(x):chi ightarrow left { -1,+1 ight }$$

        (b)计算$G_{m}$在训练数据集上的分类误差率

    $$e_{m}=P(G_{m}(x_{i}) eq y_{i})=sum_{i=1}^{N}omega_{mi}I(G_{m}(x_{i}) eq y_{i})$$

        (c)计算$G_{m}(x)$的系数

    $$alpha_{m}=frac{1}{2}logfrac{1-e_{m}}{e_{m}}$$

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

    $$D_{m+1}=(omega_{m+1,1},...,omega_{m+1},i,...,omega_{m+1,N})$$

    $$w_{m+1,i}=frac{omega_{mi}}{Z_{m}}exp(-alpha_{m}y_{i}G_{m} (x_{i})), i=1,2,...,N$$

          $Z_{m}$是规范化因子,他使得$D_{m+1}$成为一个概率分布

    $$Z_{m}=sum_{i=1}^{N}omega_{mi}exp(-alpha_{m}y_{i}G_m(x_{i}))$$

        (e)可以简写为

    $$omega_{m+1,i}=egin{Bmatrix}
    frac{omega_{mi}}{Z_{m}}e^{-alpha_{m}}&,G_{m}(x_{i})=y_{i}\
    frac{omega_{mi}}{Z_{m}}e^{alpha_{m}}&, G_{m}(x_{i}) eq y_{i}
    end{Bmatrix}$$

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

    $$f(x)=sum_{m=1}^{M}alpha_{m}G_{m}(x)$$

    2 AdaBoost算法的训练误差分析

    AdaBoost的最终训练误差

    $$frac{1}{N}sum_{i=1}^{N}I(G(x_{i}) eq y_{i})leqslant frac{1}{N}sum_{i}^{} exp(-y_{i}f(x_{i}))=prod_{m}^{}Z_{m}$$

    二分类问题AdaBoost的训练误差界

    $$prod_{m}^{M}Z_{m}=prod_{m=1}^{M}[2sqrt{e_{m}(1-e_{m})}]=prod_{m=1}^{M}sqrt{(1-4 gamma_{m}^{2})}leqslant exp(-2sum_{m=1}^{M}gamma_{m}^{2})$$ 

  • 相关阅读:
    -bash: fork: Cannot allocate memory 问题的处理
    Docker top 命令
    docker常见问题修复方法
    The Absolute Minimum Every Software Developer Absolutely, Positively Must Know About Unicode and Character Sets (No Excuses!)
    What's the difference between encoding and charset?
    hexcode of é î Latin-1 Supplement
    炉石Advanced rulebook
    炉石bug反馈
    Sidecar pattern
    SQL JOIN
  • 原文地址:https://www.cnblogs.com/ylxn/p/13375940.html
Copyright © 2011-2022 走看看