概述
集成学习即结合多个学习器来完成学习任务。
一般个体学习器是弱学习器,如决策树、神经网络等。
为了避免把好坏不一的模型组合的结果比最好的个体学习器差,每个学习器应该有多样性,即好而不同。
集合学习的利率证明:
对于单个分类器hi,其错误率如下:
对于T个分类器,如果超半数分类为正确,则最终分类为正确。
可见随着T增加,错误率会指数级下降,最终趋于0。
然而前提条件是分离器的误差相互独立,针对这个问题,现有的集成学习方法分为两类:1、串行生成的Boosting。 2、并行的Bagging和随机森林。
Boosting
Boosting是先训练出一个基学习器,再根据学习结果,对错误分类的样本增加权重再训练新的分类器,直到达到预先设定的T个分类器。
其中AdaBoost比较有代表性,其为基分类器的线性组合:
使用指数损失函数
训练过程如下:
1、初始样本为等权重1/m
第一个机器学习模型是基于基模型的算法直接获得。
6、后续的基模型ht和权重αt基于调整后的分布Dt产生(D是样本权重的集合),并调整αt使得新模型指数损失函数最小。
获得新的Ht-1模型后再对样本权重进行调整,使下一个学习器能纠正之前的错误。
D是样本权重的集合
新的权重为原始权重*损失函数的值,再除以原始样本权重分布下损失函数的均值以归一化。
Ex~Dt[ l ]表示在D分布下损失函数的期望。
由此得到了每轮训练新模型的权重α计算公式和权重分布Dt+1的计算方式。
除了样本重赋值还能使用样本重采样以因对重赋值新模型不再提升的情况。
图片公式摘自西瓜书
最后
以上就是丰富战斗机为你收集整理的集成学习——AdaBoosting的全部内容,希望文章能够帮你解决集成学习——AdaBoosting所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复