机器学习
回归模型评估
案例一:鸢尾花分类
机器学习的优化算法
交叉熵
lightGBM
处理非平衡数据集的方法
AdaBoost
GBDT
XGBoost
决策树
线性回归
pytorch 优化器的使用
分类模型评估
损失函数
前馈神经网络
特征工程
分箱
评分卡实现过程
逻辑回归
本文档使用 MrDoc 发布
-
+
首页
AdaBoost
### 概念 `Adaboost`是一种迭代算法,其核心思想是针对同一个训练集训练不同的分类器(弱分类器),然后把这些弱分类器集合起来,构成一个更强的最终分类器(强分类器)。 `Adaboost`算法是通过改变数据分布来实现的,它根据每次训练后每个样本的分类是否正确,来确定每个样本的权值,将修改过权值的新数据集送给下级分类器进行训练,最后将所有得到的分类器融合起来,作为最后的决策分类器。 ### 算法步骤 给定训练数据集$$T= [ (x_1, y_1),(x_2, y_2), ... ,(x_n, y_n) ]$$ 训练M个弱分类器,最终构建出一个强分类器 1. 初始化数据集的权值分布 ```latex D_1 = (w_{11},w_{12},...w_{1n}), \quad \\ \ \\ w_{1i}=\frac{1}{n}, \quad i=1,2,...,n ``` 2. 对 $$m=1,2,...,M$$,进行如下循环处理 (1). 对经过权值处理的数据集进行训练,得到基本分类器$$G_m(x)$$ 比如你可以使用逻辑回归模型对数据集进行训练,训练之后可以计算出模型的参数,从而得到模型结果$$G_m(x)$$ (2). 计算基本分类器$$G_m(x)$$在训练数据集上的分类误差率 ```latex e_m=\sum_{i=1}^n w_{mi}I(G_m(x_i)\ne y_i) ``` (3). 计算$$G_m(x)$$的系数 ```latex \alpha_m = \frac{1}{2}log\frac{1-e_m}{e_m} ``` (4). 更新训练数据集的权值分布,用于下一个分类器的学习 ```latex w_{m+1,i} = \frac{w_{mi}}{Z_m}e^{-\alpha_my_iG_m(x_i)} ``` 其中,$$i=1,...,n$$, $$Z_m$$是归一化因子,它使得$$D_{m+1}$$成为一个概率分布,从而方便分类误差率$$e_m$$的计算。 ```latex Z_m=\sum_{i=1}^nw_{mi}e^{-\alpha_my_iG_m(x_i)} ``` 从上面也可以看出,$$y_i$$只能是-1或+1,不能为0,因此该算法只能用于二分类问题,且标签值必须为-1或+1。 3. 构建基本分类器的线性组合 ```latex f(x)=\sum_{m=1}^M\alpha_mG_m(x) ``` 4. 最终分类器 ```latex F(x) = sign(f(x)) ``` > 其中`sign`是符号函数 > ```latex > sign(x)=\begin{cases} > \text{ +1 },\quad x \ge 0 \\ > \text{\ -1 },\quad \ x<0 > \end{cases} > ``` ### 总结 综上所述,该算法的大致流程为: > 1.每个基础分类器在计算前都要获得数据集的权值,使用加权后的数据集进行计算; 2.该分类器在训练好模型后,根据预测结果与真实结果的差异计算得到分类误差率$$e$$; 3.根据分类误差率计算得到模型的权值$$\alpha$$; 4.根据分类误差率计算得到数据集的权值,用于下一个分类器的计算。权值的作用主要是减少分类正确的样本在下一轮计算的参与度,提高分类错误的样本在下一轮计算的参与度; 5.将所有分类器模型线性相加,得到最终的分类器模型; ### 问题 书中在讲解该算法时,$$G_m(x)$$使用的是取值为-1和+1的阶跃函数,训练的过程就是求得跳跃的阈值。那么能不能使用逻辑回归来作为基本分类器呢?
gaojian
2022年12月26日 00:08
分享文档
收藏文档
上一篇
下一篇
微信扫一扫
复制链接
手机扫一扫进行分享
复制链接
关于 MrDoc
觅思文档MrDoc
是
州的先生
开发并开源的在线文档系统,其适合作为个人和小型团队的云笔记、文档和知识库管理工具。
如果觅思文档给你或你的团队带来了帮助,欢迎对作者进行一些打赏捐助,这将有力支持作者持续投入精力更新和维护觅思文档,感谢你的捐助!
>>>捐助鸣谢列表
微信
支付宝
QQ
PayPal
Markdown文件
分享
链接
类型
密码
更新密码