集成算法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了集成算法相关的知识,希望对你有一定的参考价值。

参考技术A

集成学习包括Bagging方法和Boosting方法,下面详细分析这两种方法。

下面是决策树与这些算法框架进行结合所得到的新的算法:
1) Bagging + 决策树 = 随机森林
2)AdaBoost + 决策树 = 提升树
3)Gradient Boosting + 决策树 = GBDT

Bagging法假设训练样本集服从均匀分布,即1/N。

(1) 从训练样本集中 随机可放回抽样(Bootstrapping )N次 ,得到与训练集相同大小的训练集,重复抽样K次, 得到K个训练集 。
(2) 每个训练集得到一个最优模型, K个训练集得到K个最优模型。
(3) 分类问题:对K个模型采用 投票的方式得到分类结果 ;回归问题:对K个模型的值 求平均得到分 类结果。

每一个样本数据是有权重的,每一个学习器是有先后顺序的。在PAC(概率近似正确)的学习框架下,一定可以将弱分类器组装成一个强分类器。

(1)每一轮如何改变训练数据的权值和概率分布?

(2)通过什么方式来组合弱学习器?

其中,学习器性能越好,对应的权值也越大。样本权值1初始化为1/N,即初始样本集服从均匀分布,后面随着前一个学习器的结果更新样本权值。

集成学习得到多个学习器后,结合策略得到最终的结果。通常用到最多的是平均法,投票法和学习法。

适用范围:

规模大的集成,学习的权重较多 加权平均法易导致过拟合

个体学习器性能相差较大时宜使用加权平均法,相近用简单平均法

绝对多数投票法:某标记 超过半数 ,也就是我们常说的要票过半数,否则就当会拒绝预测;

相对多数投票法:预测为得票 最多 的标记,若同时有多个标记的票最高,则从中随机选取一个,也就是所谓的“少数服从多数”。

加权投票法:提供了预测结果,与加权平均法类似。

对于学习法,代表方法是stacking,当使用stacking的结合策略时, 我们不是对弱学习器的结果做简单的逻辑处理,而是再加上一层学习器,也就是说,我们 将训练集弱学习器的学习结果作为输入, 将训练集的输出作为输出,重新训练一个学习器来得到最终结果。
在这种情况下,我们将弱学习器称为初级学习器,将用于结合的学习器称为次级学习器。对于测试集,我们首先用初级学习器预测一次,得到次级学习器的输入样本,再用次级学习器预测一次,得到最终的预测结果。

1)训练样本集
Bagging:训练集是有放回抽样,从原始集中选出的K组训练集是相互独立的。
Boosting:每一次迭代的训练集不变。
2)训练样本权重
Bagging:每个训练样本的权重相等,即1/N。
Boosting:根据学习器的错误率不断调整样例的权值,错误率越大,权值越大。
3)预测函数的权重:
Bagging:K组学习器的权重相等,即1/K。
Boosting:学习器性能好的分配较大的权重,学习器性能差的分配较小的权重。
4)并行计算
Bagging:K组学习器模型可以并行生成。
Boosting:K组学习器只能顺序生成,因为后一个模型的样本权值需要前一个学习器模型的结果。

Bagging和Boosting方法都是把若干个学习器整合为一个学习器的方法,Bagging方法可以降低模型的方差,Boosting方法可以降低模型的偏差,在实际工作中,因情况需要选择集成方法。

以上是关于集成算法的主要内容,如果未能解决你的问题,请参考以下文章

stacking集成算法能有几层

机器学习:集成算法 - baggingboostingadaboost

集成学习算法

数据结构-集成算法-随机森林

数据结构-集成算法-随机森林

集成学习算法