机器学习-adaboost 手推

1 手推

1) 初始化训练数据(每个样本)的权重分布D,如果有m个样本,则每个训练样本点最开始都被赋予相同的权重:1/m

2) 训练弱分类器。具体训练过程中,如果某个样本已经被正确分类,那么在构造下一个训练集中,权重就会被降低,相反如果某个样本点没有被准确地分类,那么它的权重就得到提高,同时得到第t个弱分类器对应的话语权wt,然后更新权重后的样本集被用于训练下一个分类器,整个训练过程如此迭代地进行下去。

3) 将各个训练得到的弱分类器组合成强分类器hs(x).各个弱分类器的训练过程结束后,分类误差率小的弱分类器的话语权较大,其在最终的分类函数中起较大的决定作用,而分类误差率大的弱分类器的话语权较小,其在最终的分类函数中起着较小的决定作业,换言之,误差率低的弱分类器在最终分类器中占的比例较大,反之较小。

 

1)对所有训练训练集初始化相等的样本权重

 ,n 为数据集的总数

2) 将带有初始化权重的数据集送入基本分类器中训练,计算分类器误差率

其中,X 表示所有数据集,m 表示第m个基本分类器,假设一共有M 个基本分类器

3) 根据分类器的误差率,计算该分类器的系数

4)根据分类器的误差率,更新样本权重。(采取惩罚那些分类正确的样本,奖励那些分类错误的样本的原则)

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

6) 得到最终的强分类器G(X)

ref:https://blog.csdn.net/hanss2/article/details/80365766

https://blog.csdn.net/jiafeier_555/article/details/70500006

 

2 Adaboost 和决策树的区别

2.1 Adaboost 

作为提升方法,有两个问题需要解决:

2.1.1 每一轮如何改变训练数据的权值或者概率分布?

2.1.2 如何将弱分类器组合成一个强分类器?

Adaboost 的做法: 提高那些被前一轮弱分类器错误分类样本的权值,而降低那些被正确分类样本的权值。

加权多数表决的方法,加大分类误差小的弱分类器的权值,使其在表决中起较大作用,减小分类误差率大的弱分类器的权值,使其在表决中起较小的作用

缺点:可理解性差

推广:提升树,提升树是以分类树或回归树作为基本分类器的提升方法。利用假发模型和前向分布算法实现学习的优化过程,当损失函数是平方损失和指数损失函数时,每一步的优化是很简单的,但对一般的损失函数而言,往往每一步优化并不那么容易,针对这一问题,有人提出了梯度提升算法,其关键是利用损失函数的负梯度在当前模型的值作为回归问题提升算法中的残差的近似值,拟合一个回归树,梯度提升决策树简称GBDT。

2.2 随机森林

随机选样本和随机选特征。

缺点:不做特征选择,

优点:在训练完后,能给出哪些feature 比较重要。

http://www.voidcn.com/article/p-vxfxnykf-bbz.html 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值