热线电话:13121318867

登录
2020-08-10 阅读量: 971
Adaboost

模型如何根据样本的权重来进行调整:

  • 在更新样本权重之后,模型会通过更改自身模型的形状,更加小心的对待这些权重大的样本,从而达到这样一个效果!牺牲权重小的样本,尝试将权重大的样本预测正确。这时,模型会在每一次分类的情况下计算分类之后的误差率,选择误差率最小的分类结果

adaboost在处理多分类问题时,可参考逻辑回归将多分类问题转化为二分类问题。

如果存在样本不均衡的问题,那么可以在基分类器决策树中通过class_weight参数设置

adaboost方法只有在训练集中中的数据通过拟合的模型全部预测正确之后,才会停止迭代,否则会一直迭代下去,在实际的代码实现中可以通过参数n_eatimators的设置来控制模型迭代的次数

adaboost可以解决模型的欠拟合问题,但是会出现严重的过拟合

1/2法则:

  • 在adaboost中,预测正确的样本的权重和肯定是0.5,预测错误的样本的权重和也肯定是0.5

  • 当前这次一次迭代,预测错的样本,这些样本在进行增加权重之后能,增加权重后的样本总和肯定为1/2

  • 当前这次一次迭代,预测正确的样本,这些样本在减小权重之后能,这些样本新权重总也肯定为1/2

代码:

  • adaboot的基分类器可以自己选择,可以是决策树、逻辑回归、高斯回归,甚至是集成算法中的随机森林、Adaboost本身也可以,但是基分类器种类确定之后,所有的基分类器都是同一个种类。

  • sample_weight,在决策树/逻辑回归中,fit和score中有这样一个参数,可以通过这个参数的设置来进行权重的设置

  • 必须要有sample_weight的参数才能放入到adaboost模型中

  • 分类问题,必须使用AdaBoostClassifier,并且基分类器也是分类型

  • 回归问题,必须使用AdaRegresser,并且基分类器必须是回归类的


34.3725
6
关注作者
收藏
评论(0)

发表评论

暂无数据
推荐帖子