首先抛出问题,如何解决不均衡分类问题?这个问题我觉得应该从原理上和实际调参两个方面来回答,原理部分从adboost入手,实践部分则是sklearn相关参数(这个后面遇到了再补充)。
什么是boosting?通过改变训练样本的权重,学习多个分类器,并将这些分类器进行线性组合,提高分类性能。那么问题又来了,对于提升方法来说,有两个问题需要回答:
(1)每一轮如和改变训练样本的权值和概率分布?
(对于adaboost,提高那些被前一轮弱分类器错误分类样本的权值,降低被争取分类的样本权值)
(2)如何将弱分类器组合成一个强分类器?
(对于adaboost,采用加权多数表决,具体地加大分类误差率小的弱分类器权重,反之亦然)
一、
Adaboost优缺点:
优点:泛化错误率低,易编码,可以应用在大部分分类器上,无参数调整。
缺点:对离群点敏感
适用数据类型:数值型和标称型数据
二、
算法(伪代码)以及算法解析
这一段取自《统计学习方法》,讲解的很详细,适合反复看。根据以下的推导,可以总结一下迭代过程中的几个关键的更新值,
alpha值是弱分类器的权重,是由该轮迭代中的分类错误率决定的,而分类错误率又和样本的权重有关,下一轮的样本权重又和这一轮的分类器权重alpha有关,具体推导式如下。