学习笔记|聚合方法

1.弱分类器:

1)具有较高的偏置(例如,低自由度模型),

2)方差太大导致鲁棒性不强(例如,高自由度模型)。


1)使用单一的基础学习算法,这样一来我们就有了以不同方式训练的同质弱学习器,这样得到的集成模型被称为「同质的」。

2)一些方法使用不同种类的基础学习算法:将一些异质的弱学习器组合成「异质集成模型」。


2.聚合方法的选择原则:

1)如果我们选择具有低偏置高方差的基础模型,我们应该使用一种倾向于减小方差的聚合方法;

2)而如果我们选择具有低方差高偏置的基础模型,我们应该使用一种倾向于减小偏置的聚合方法。


3.聚合方法:

1)bagging,该方法通常考虑的是同质弱学习器,相互独立地并行学习这些弱学习器,并按照某种确定性的平均过程将它们组合起来。

2)boosting,该方法通常考虑的也是同质弱学习器。它以一种高度自适应的方法顺序地学习这些弱学习器(每个基础模型都依赖于前面的模型),并按照某种确定性的策略将它们组合起来。

3)stacking,该方法通常考虑的是异质弱学习器,并行地学习它们,并通过训练一个「元模型」将它们组合起来,根据不同弱模型的预测结果输出一个最终的预测结果。

总结:bagging 的重点在于获得一个方差比其组成部分更小的集成模型,而 boosting 和 stacking 则将主要生成偏置比其组成部分更低的强模型(即使方差也可以被减小)

4.bagging

在「并行化的方法」中,我们单独拟合不同的学习器,因此可以同时训练它们。

使用自助法抽取样本,前提是:

1)首先初始数据集的大小 N 应该足够大,以捕获底层分布的大部分复杂性。这样,从数据集中抽样就是从真实分布中抽样的良好近似(代表性)

2)其次,与自助样本的大小 B 相比,数据集的规模 N 应该足够大,这样样本之间就不会有太大的相关性(独立性)

自助法经常被用于评估某些统计估计量的方差或置信区间

5.Boosting

在「顺序化的方法中」,组合起来的不同弱模型之间不再相互独立地拟合。其思想是迭代地拟合模型,使模型在给定步骤上的训练依赖于之前的步骤上拟合的模型,它生成的集成模型通常比组成该模型的弱学习器偏置更小。

序列中每个模型在拟合的过程中,会更加重视那些序列中之前的模型处理地很糟糕的观测数据。

由于拟合不同模型的计算无法并行处理(与 bagging 不同),顺序地拟合若干复杂模型会导致计算开销变得非常高。

1)自适应提升(adaboost ):更新附加给每个训练数据集中观测数据的权重

并没有对所有 L 个模型进行「全局优化」,而是通过「局部」优化来近似最优解并将弱学习器逐个添加到强模型中。

Adaboost 在每次迭代中更新观测数据的权重。正确分类的观测数据的权重相对于错误分类的观测数据的权重有所下降。在最终的集成模型中,性能更好的模型具有更高的权重

1.用当前观测数据的权重拟合可能的最佳弱模型

2.计算更新系数的值,更新系数是弱学习器的某种标量化评估指标,它表示相对集成模型来说,该弱学习器的分量如何

3.通过添加新的弱学习器与其更新系数的乘积来更新强学习器

4.计算新观测数据的权重,该权重表示我们想在下一轮迭代中关注哪些观测数据(聚和模型预测错误的观测数据的权重增加,而正确预测的观测数据的权重减小)

2)梯度提升(gradient boosting):更新这些观测数据的值

6.Stacking

假设我们想要拟合由 L 个弱学习器组成的 stacking 集成模型。我们必须遵循以下步骤: 

1.将训练数据分为两组

2.选择 L 个弱学习器,用它们拟合第一组数据

3.使 L 个学习器中的每个学习器对第二组数据中的观测数据进行预测

4.在第二组数据上拟合元模型,使用弱学习器做出的预测作为输入

可以使用某种「k-折交叉训练」方法(类似于 k-折交叉验证中的做法),这样所有的观测数据都可以用来训练元模型:对于任意的观测数据,弱学习器的预测都是通过在 k-1 折数据(不包含已考虑的观测数据)上训练这些弱学习器的实例来完成的。


参考:常用的模型集成方法介绍:bagging、boosting 、stacking

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容