Adaptive Boost

2017-11-20  本文已影响16人  Crystalajj

AdaBoost算法是一种迭代算法,其核心思想是针对一个训练集训练不同的弱分类器,然后把这些弱分类器集合起来,构造一个更强的最终分类器。具体来说,就是把多个不同的决策树用一种非随机的方式组合起来,使决策树的准确率大大提高,并且,速度快,基本不用调参数,不会overfitting。

AdaBoost算法本身是通过改变数据分布实现的,它根据每次训练集中的每个样本的分类是否正确,以及上次的总体分类的准确率,来更新每个样本的权值。将修改权值的新数据送给下层分类器进行训练,然后将每次训练得到的分类器融合起来,作为最后的决策分类器。

算法完整描述

Adaboost算法

Note:

import numpy as np
import math
x = np.arange(0.0,1.0,0.002)
y = [math.log((1.0-s)/s,math.e)/2.0 for s in x]
plot(x,y)
show()

带权分类误差越小,该分类器对应的权值越大。

Adaboost讲解01 Python代码实现
Adaboost讲解02 深度讲解
Adaboost讲解03例子

上一篇 下一篇

猜你喜欢

热点阅读