集成学习与决策树学习路线

分类

1. 同质与异质

只包含同种类型的个体学习器,这样的集成是“同质”的;
包含不同类型的个体学习器,这样的集成是“异质”的。

2. Bagging & Boosting

Bagging

原始数据集通过T次随机采样,得到T个与原始数据集相同大小的子数据集,分别训练得到T个弱分类器Classifier,然后结合为一个强分类器。

过拟合的模型,通常方差variance比较大,这时应该用bagging对其进行修正。

bagging中的模型是强模型,偏差低,方差高。目标是降低方差(variance)。在bagging中,每个模型的bias和variance近似相同,但是互相相关性不太高,因此一般不能降低bias,而一定程度上能降低variance。典型的bagging是random forest (RF)。

基本流程

A)从原始样本集中抽取训练集.每轮从原始样本集中使用Bootstraping(随机且有放回地从训练集中的抽取N个训练样本)的方法抽取n个训练样本(在训练集中,有些样本可能被多次抽取到,而有些样本可能一次都没有被抽中).共进行k轮抽取,得到k个训练集.(k个训练集相互独立)
B)每次使用一个训练集得到一个模型,k个训练集共得到k个模型.(注:根据具体问题采用不同的分类或回归方法,如决策树、神经网络等)
C)对分类问题:将上步得到的k个模型采用投票的方式得到分类结果;对回归问题,计算上述模型的均值作为最后的结果.
在这里插入图片描述

	样本采集均匀有放回、分类器同权、可并行训练

Boosting

boosting是基于权值的弱分类器集成,不断地迭代更新能使得最终的结果无限接近最优分类

欠拟合的模型,通常偏差bias比较大,这时应该可以用boosting进行修正。使用boosting时, 每一个模型可以简单一些。

boosting中每个模型是弱模型,偏差高,方差低。目标是通过平均降低偏差(bias)。boosting的基本思想就是用贪心法最小化损失函数,显然能降低偏差,但是通常模型的相关性很强,因此不能显著降低variance。典型的Boosting是Adaboost,另外常用的并行Boosting算法是GBDT(gradient boosting decision tree)、XgBoost。这一类算法通常不容易出现过拟合。

基本流程

  1. e表示某个弱分类器的错误分类率,计算用来作为这个分类器的可信度权值a,以及更新采样权值D。
  2. D表示原始数据的权值矩阵,用来随机采样。刚开始每个样本的采样概率都一样,为1/m。在某个弱分类器分类时,分类错误或对,则D就会根据e相应地增加或减少,那么分错的样本由于D增大,在下一次分类采样时被采样的概率增加了,从而提高上次错分样本下次分对的概率。
  3. α为弱分类器的可信度,bagging中隐含的α为1,boosting中,根据每个弱分类器的表现(e较低),决定这个分类器的结果在总的结果中所占的权重,分类准的自然占较多的权重。
  4. 最后根据可信度α,以及各个弱分类器的估计h(x),得到最后的结果。

在这里插入图片描述
主要为两个部分,更新采样权值D和计算分类器权重α,前者使得原来分错的样本再下一个分类器中能够有较大的几率出现,从而提高原来分错样本之后分对的概率;后者根据分类器的表现,赋予不同弱分类器不同权值,最后得到一个加权的强分类器。

样本采集依错误率加权,分类器依准确率加权、仅能顺序串行生成。

Boosting 算法会倾向于一直分错的样本,如果样本中有离群的错误样本,boosting就会出现效果不好的情况。即对离群值、异常值敏感。

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_42764932/article/details/111387162