Bagging方法的基本思想实现
在Bagging集成当中,我们并行建立多个弱评估器(通常是决策树,也可以是其他非线性算法),并综合多个弱评估器的结果进行输出。当集成算法目标是回归任务时,集成算法的输出结果是弱评估器输出的结果的平均值,当集成算法的目标是分类任务时,集成算法的输出结果是弱评估器输出的结果少数服从多数。
eg:
(1)当集成算法是分类任务的时候
假设我们有10个弱评估器,对某个样本的判别(三分类, 0,1,2)情况如下:
那么我们如何少数服从多数呢?
1.用np.bincount计算每个数值出现的次数
2.用np.argmax返回最大值的索引,这里十分巧妙的是,索引的顺序是类别
如果是二分类,涉及到有一些负数类别的
如果评估器的数量是偶数,而少数和多数刚好一致怎么办?
(2)当集成算法是回归任务的时候