Bagging 是「Bootstrap Aggregating」(自助聚合)的技术。其实质是选取 T 个 bootstrap 样本,每个样本安装一个分类器,然后“并行”训练模型(通常在随机森林中,决策树是并行训练的)。然后,将所有分类器的结果平均化,得到一个 bagging 分类器。
让我们考虑 3 个分类器,它们生成一个分类结果,该结果可能是对的也可能是错的。假如其中有一个分类器的结果是错误的,而另外两个分类器的结果是正确的,通过投票,可以获得很高的分类准确率。
但bagging 机制有时不能很好地起作用,例如大多数分类器都会在同一个区域内获得错误的分类结果。
出于这个原因,对 boosting 方法改进的想法是:
1.串行训练模型,而不是并行训练。
2.每个模型需要重点关注之前的分类器表现不佳的地方。
上述想法可以诠释为:
在整个数据集上训练模型 h1
对 h1 表现较差的区域的数据加权,并在这些数据上训练模型 h2
对 h1 ≠ h2 的区域的数据加权重,并在这些数据上训练模型 h3
...
我们可以串行地训练这些模型,而不是并行训练。这是 Boosting 的本质!
Boosting 方法会随着时间的推移,通过调整误差度量来训练一系列低性能算法,称之为弱学习器。弱学习器指的是那些误差率略低于 50% 的算法
网友评论