Adaboost算法详解
展开全部
1.从弱学习算法出发,反复学习,得到一系列弱分类器(大多数提升方法都是改变训练数据
的概率分布来学习不同的弱分类器的);
2.组合这些弱分类器,得到一个强分类器;
▶如何改变训练样本的权重学习弱分类器?
▶ 如何将弱分类器组合成强分类器?
▶ 提高被前一个弱分类器分类错误的样本的权重,降低被分类正确的样本权重,学习新的弱
分类器;
▶ 加大分类误差率小的弱分类器的权重,减小分类误率差大的弱分类器的权重。
首先,我们来理一下adaboost算法的流程:我们用 来训练集的总数, 表示第 个样本, 表示第 次迭代后的样本权重, 表示第 次提升得到的分类器。
1:对每个 ,初始化权重: , 即
2: 对每个 , 我们用权重 来训练数据集, 得到分类器:
计算 的分类误差:
和 的权重系数
更新权重分布
其中
以及规范化因子
迭代后的组合分类器为:
组合分类器的分类误差(分类错误率)为
很明显,这是被指数型损失函数控制住的:
而上式的最后一项可以如下化为:
上式第二个等号用到了权重更迭的公式,接下来我们来估计 ,由于
上式最后一个等号用到了 ,由于我们的弱分类器好于随机猜测,所以存在正数 ,使得 ,所以我们有
所以我们有
即Adaboost的集成误差是指数减少的。
的概率分布来学习不同的弱分类器的);
2.组合这些弱分类器,得到一个强分类器;
▶如何改变训练样本的权重学习弱分类器?
▶ 如何将弱分类器组合成强分类器?
▶ 提高被前一个弱分类器分类错误的样本的权重,降低被分类正确的样本权重,学习新的弱
分类器;
▶ 加大分类误差率小的弱分类器的权重,减小分类误率差大的弱分类器的权重。
首先,我们来理一下adaboost算法的流程:我们用 来训练集的总数, 表示第 个样本, 表示第 次迭代后的样本权重, 表示第 次提升得到的分类器。
1:对每个 ,初始化权重: , 即
2: 对每个 , 我们用权重 来训练数据集, 得到分类器:
计算 的分类误差:
和 的权重系数
更新权重分布
其中
以及规范化因子
迭代后的组合分类器为:
组合分类器的分类误差(分类错误率)为
很明显,这是被指数型损失函数控制住的:
而上式的最后一项可以如下化为:
上式第二个等号用到了权重更迭的公式,接下来我们来估计 ,由于
上式最后一个等号用到了 ,由于我们的弱分类器好于随机猜测,所以存在正数 ,使得 ,所以我们有
所以我们有
即Adaboost的集成误差是指数减少的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询