这三种方法之间的异同是什么:
- 套袋
- 提振
- 堆叠?
哪个最好?又为什么呢
你能给我一个例子吗?
这三种方法之间的异同是什么:
哪个最好?又为什么呢
你能给我一个例子吗?
Answers:
所有这三种都是所谓的“元算法”:将几种机器学习技术组合到一个预测模型中的方法,以减小方差(装袋),偏差(提升)或提高预测力(堆叠别名集合)。
每个算法都包含两个步骤:
在原始数据的子集上生成简单ML模型的分布。
将分布组合成一个“汇总”模型。
这是这三种方法的简短说明:
装袋(代表乙 ootstrap此Agg regat荷兰国际集团)是一种方法,通过使用从原始数据集生成用于训练的附加数据到降低你的预测的方差与重复的组合,以产生多集相同的基数/大小作为原始数据。通过增加训练集的大小,您不能提高模型的预测力,而只能减小方差,将预测范围缩小到预期结果。
提升是一种两步式方法,其中首先使用原始数据的子集来生成一系列性能平均的模型,然后通过使用特定成本函数(=多数票)将它们组合在一起来“提升”其性能。与装袋不同,在经典的提升中,子集的创建不是随机的,并且取决于先前模型的性能:每个新的子集都包含(可能被)先前模型错误分类的元素。
堆叠类似于提升:您还可以将多个模型应用于原始数据。但是,这里的区别在于,您不仅仅具有权函数的经验公式,而是引入了元级别,并使用另一种模型/方法来估计输入,并且使用每个模型的输出来估计权重,或者换句话说,要确定哪些模型在输入数据方面表现良好,哪些模型表现不佳。
这是一个比较表:
如您所见,所有这些都是将几种模型组合成更好模型的不同方法,这里没有一个赢家:一切都取决于您的领域和您打算做什么。你还可以把堆积作为一种更进步的助推然而,找到适合您的元级的好做法的难度,难以在实际中应用这种方法。
每种的简短示例:
套袋:
并行集成:每个模型都是独立构建的
旨在减少差异而不是偏见
适用于高方差低偏差模型(复杂模型)
基于树的方法的一个示例是随机森林,它可以开发完全生长的树木(请注意,RF修改了生长过程以减少树木之间的相关性)
提升:
顺序集成:尝试添加新模型,这些模型在以前的模型缺乏的情况下效果很好
旨在减少偏差而不是方差
适用于低方差高偏差模型
基于树的方法的一个示例是梯度增强
只是为了详细说明于谦的答案。套袋背后的想法是,当您使用非参数回归方法(通常是回归树或分类树,但几乎可以是任何非参数方法)进行过度投资时,您倾向于趋于高方差,而没有(或低)偏倚部分/方差折衷。这是因为过拟合模型非常灵活(如果有相同样本的话,对相同样本的许多重采样具有较低的偏差),但变异性较高(如果我收集样本并过拟合,而您收集样本并过拟合,我们结果会有所不同,因为非参数回归会跟踪数据中的噪声)。我们能做些什么?我们可以进行多次重新采样(自举),每次过度拟合,然后将它们平均在一起。这应该导致相同的偏差(较低),但可以抵消一些差异,
本质上,梯度提升可与UNDERFIT非参数回归一起使用,因为非参数回归过于简单,因此无法灵活地描述数据中的真实关系(即有偏见),但由于拟合度较低,因此方差低(您倾向于如果您收集新的数据集,将获得相同的结果)。您如何对此进行更正?基本上,如果您处于适应状态,则模型的残差仍然包含有用的结构(有关总体的信息),因此您可以使用在残差上构建的树来扩充所拥有的树(或任何非参数预测变量)。这应该比原始树更灵活。您反复生成越来越多的树,每个树在步骤k都基于根据步骤k-1的残差拟合的树被加权树扩充。这些树之一应该是最佳的 因此,您要么将所有这些树加权在一起,要么选择看起来最合适的树。因此,梯度增强是构建一堆更灵活的候选树的方法。
像所有非参数回归或分类方法一样,有时套袋或增强效果很好,有时一种或另一种方法很普通,有时一种或另一种方法(或两者)会崩溃并燃烧。
同样,这两种技术都可以应用于除树以外的回归方法,但是它们最常与树相关联,这可能是因为难以设置参数以避免避免过拟合或过拟合。
装袋和装袋都对所有步骤使用单一学习算法;但是他们使用不同的方法来处理训练样本。两者都是结合了来自多个模型的决策的整体学习方法。
套袋:
1.对训练数据重新采样以获取M个子集(自举);
2.基于M个数据集(不同样本)训练M个分类器(相同算法);
3.最终分类器通过投票合并M个输出;
均匀取样重量;
分类器的权重相等;
通过减小方差减小误差
助推:这里着眼于AdaBoost算法
1开始以相等的重量为在第一轮的所有样本;
2.在接下来的M-1轮中,增加在上一轮中被错误分类的样本的权重,减少在上一轮中正确分类的样本的权重
。3.使用加权投票,最终分类器合并前一轮的多个分类器,并赋予更大的权重减少误分类的分类。
逐步重采样 每轮的权重基于上一轮的结果进行
重加权(增强)而不是重采样(装袋)。