集成方法涉及组合多个模型的预测结果。
预测的组合是集成方法的核心部分,并且在很大程度上取决于构成集成的模型类型以及正在建模的预测问题类型,例如分类或回归。
尽管如此,有一些常见或标准的技术可用于组合预测,这些技术易于实现,并且通常能够获得良好或最佳的预测性能。
在这篇文章中,您将了解用于集成学习中组合预测的常见技术。
阅读本文后,你将了解:
- 组合来自贡献模型的预测是集成模型的一个关键特性。
- 在组合分类预测时,投票技术是最常用的。
- 在组合回归预测时,统计技术是最常用的。
通过我的新书《使用Python的集成学习算法》启动您的项目,其中包括分步教程和所有示例的Python源代码文件。
让我们开始吧。

如何组合集成学习的预测结果
照片来自cafuego,保留部分权利。
教程概述
本教程分为三个部分;它们是:
- 集成学习中的预测组合
- 组合分类预测
- 组合预测类别标签
- 组合预测类别概率
- 组合回归预测
集成学习中的预测组合
集成学习方法的一个关键部分涉及组合多个模型的预测。
通过预测的组合,可以实现集成学习方法的好处,即更好的预测性能。因此,组合预测的方法有很多,以至于它成为一个完整的学习领域。
在生成一组基本学习器之后,集成方法不是试图找到最佳的单个学习器,而是通过组合来实现强大的泛化能力,其中组合方法起着至关重要的作用。
— 第67页,《集成方法》,2012年。
标准集成机器学习算法确实规定了如何组合预测;然而,出于多种原因,单独考虑这个主题很重要,例如:
- 解释标准集成算法所做的预测。
- 为算法手动指定自定义预测组合方法。
- 开发您自己的集成方法。
集成学习方法通常不是很复杂,开发自己的集成方法或指定预测组合方式相对容易且是常见做法。
预测的组合方式取决于进行预测的模型和预测问题的类型。
此步骤中使用的策略部分取决于用作集成成员的分类器类型。例如,某些分类器(如支持向量机)仅提供离散值标签输出。
— 第6页,《集成机器学习》,2012年。
例如,模型所做预测的形式将与预测问题的类型相匹配,例如预测数字的回归和预测类别标签的分类。此外,某些模型类型可能只能预测类别标签或类别概率分布,而其他模型类型可能能够同时支持分类任务。
我们将以这种基于问题类型的预测类型划分作为基础,探索用于组合集成中贡献模型预测的常见技术。
在下一节中,我们将介绍如何组合分类预测建模任务的预测。
组合分类预测
分类是指涉及给定输入预测类别标签的预测建模问题。
模型做出的预测可以是直接的清晰类别标签,也可以是示例属于每个类别的概率,称为类别成员概率。
分类问题的性能通常使用准确性或相关正确预测的计数或比率来衡量。在评估预测概率的情况下,可以通过选择截止阈值将其转换为清晰的类别标签,或者使用交叉熵等专门指标进行评估。
我们将分别审查类别标签和概率的分类预测组合。
想开始学习集成学习吗?
立即参加我为期7天的免费电子邮件速成课程(附示例代码)。
点击注册,同时获得该课程的免费PDF电子书版本。
组合预测类别标签
预测的类别标签通常映射到问题领域中有意义的东西。
例如,模型可能预测“红色”或“绿色”等颜色。但在内部,模型为类别标签预测一个数值表示,例如在我们的颜色分类示例中,“红色”为0,“绿色”为1,“蓝色”为2。
如果我们直接使用整数编码的类别标签,组合类别标签的方法可能更容易考虑。
或许最简单、最常见且通常最有效的方法是通过投票来组合预测。
投票是名义输出最流行和最基本的组合方法。
— 第71页,《集成方法》,2012年。
投票通常涉及每个模型进行预测,为预测的类别分配一票。然后对投票进行统计,并以某种方式利用投票或统计结果选择一个结果。
投票有多种类型,让我们来看看最常见的四种:
- 多数投票。
- 绝对多数投票。
- 一致投票。
- 加权投票。
简单投票,称为多数投票,选择获得最多票数的类别标签。
如果两个或更多类别获得相同票数,则任意打破僵局,但以一致的方式,例如对出现平局的类别标签进行排序并选择第一个,而不是随机选择一个。这很重要,这样具有相同数据的相同模型总是做出相同的预测。
在出现平局时,通常采用奇数个集成成员来自动打破僵局,而不是偶数个集成成员,因为偶数个集成成员更容易出现平局。
从统计学的角度来看,这被称为众数或预测集合中最常见的值。
例如,考虑一个模型对三类颜色预测问题所做的三个预测:
- 模型1预测“绿色”或1。
- 模型2预测“绿色”或1。
- 模型3预测“红色”或0。
因此,投票结果是:
- 红色票数:1
- 绿色票数:2
- 蓝色票数:0
预测结果将是“绿色”,因为它获得了最多票数。
绝对多数投票选择获得超过半数票数的类别标签。如果没有类别获得超过半数票数,则做出“无预测”的决定。有趣的是,如果分类器是独立的,绝对多数投票被证明是组合分类器的最佳方法。
如果分类器输出是独立的,则可以证明绝对多数投票是最佳组合规则。
— 第1页,《集成机器学习》,2012年。
一致投票与绝对多数投票相关,不同之处在于,它不要求获得半数票数,而是要求所有模型预测相同的值,否则不进行预测。
加权投票以某种方式权衡每个模型所做的预测。一个例子是根据模型的平均性能(例如分类准确率)来权衡预测。
每个分类器的权重可以根据其在验证集上的准确性表现成比例设置。
— 第67页,《使用集成方法的模式分类》,2010年。
为分类器分配权重本身就可以成为一个项目,可能涉及使用优化算法和保留数据集、线性模型,甚至完全是另一个机器学习模型。
那么,我们如何分配权重呢?如果我们事先知道哪些分类器效果更好,我们只会使用那些分类器。在没有这些信息的情况下,一种合理且常用的策略是使用分类器在单独的验证(甚至训练)数据集上的性能,作为该分类器泛化性能的估计。
— 第8页,《集成机器学习》,2012年。
加权投票的想法是,某些分类器比其他分类器更有可能准确,我们应该通过给予它们更大的投票份额来奖励它们。
如果我们有理由相信某些分类器比其他分类器更可能正确,那么对这些分类器的决策进行更重的加权可以进一步提高整体性能,优于简单多数投票。
— 第7页,《集成机器学习》,2012年。
组合预测类别概率
概率将事件的可能性概括为0.0到1.0之间的数值。
当预测类别成员资格时,它涉及为每个类别分配一个概率,总和为1.0;例如,一个模型可能预测:
- 红色:0.75
- 绿色:0.10
- 蓝色:0.15
我们可以看到“红色”类别具有最高概率,是模型预测的最可能结果,并且各类别概率的分布(0.75 + 0.10 + 0.15)总和为1.0。
概率的组合方式取决于所需的结果。
例如,如果需要概率,那么独立的预测概率可以直接组合。
也许组合概率最简单的方法是汇总每个类别的概率,然后将预测值通过softmax函数。这确保了分数得到适当的归一化,这意味着跨类别标签的概率总和为1.0。
……此类输出——在适当归一化(如softmax归一化 [...])后——可以解释为对该类别支持的程度。
— 第8页,《集成机器学习》,2012年。
更常见的是,我们希望从预测的概率中预测一个类别标签。
最常见的方法是使用投票,其中预测的概率代表每个模型对每个类别的投票。然后将投票相加,并可以使用上一节中的投票方法,例如选择总和概率最大的标签或平均概率最大的标签。
- 使用平均概率投票
- 使用总和概率投票
- 使用加权总和概率投票
通常,这种将概率视为选择类别标签的投票方法被称为软投票。
如果所有单个分类器都被同等对待,简单的软投票方法通过简单地平均所有单个输出生成组合输出……
— 第76页,《集成方法》,2012年。
组合回归预测
回归是指预测建模问题,涉及给定输入预测数值。
回归问题的性能通常使用平均误差来衡量,例如平均绝对误差或均方根误差。
组合数值预测通常涉及使用简单的统计方法;例如:
- 平均预测值
- 中位数预测值
两者都给出预测分布的集中趋势。
平均是数值输出最流行和最基本的组合方法。
— 第68页,《集成方法》,2012年。
均值,也称为平均值,是预测值的归一化总和。当预测值的分布呈高斯分布或接近高斯分布时,平均预测值更适用。
例如,均值计算为预测值之和除以预测总数。如果三个模型预测了以下价格:
- 模型1:99.00
- 模型2:101.00
- 模型3:98.00
平均预测值将计算为:
- 平均预测值 = (99.00 + 101.00 + 98.00) / 3
- 平均预测值 = 298.00 / 3
- 平均预测值 = 99.33
由于其简单性和有效性,简单平均是使用最广泛的方法之一,并且是许多实际应用中的首选。
— 第69页,《集成方法》,2012年。
中位数是所有预测值排序后的中间值,也称为第50个百分位数。当预测值的分布未知或不遵循高斯概率分布时,中位数预测值更适用。
根据预测问题的性质,可能需要保守的预测,例如最大值或最小值。此外,可以对分布进行汇总以给出不确定性的度量,例如为每个预测报告三个值:
- 最小预测值
- 中位数预测值
- 最大预测值
与分类一样,每个模型所做的预测可以根据预期的模型性能或其他值进行加权,并报告预测的加权平均值。
进一步阅读
如果您想深入了解,本节提供了更多关于该主题的资源。
书籍
- 使用集成方法进行模式分类, 2010.
- 集成方法, 2012.
- 集成机器学习, 2012.
- 数据挖掘中的集成方法, 2010.
文章
总结
在这篇文章中,您了解了集成学习中组合预测的常见技术。
具体来说,你学到了:
- 组合来自贡献模型的预测是集成模型的一个关键特性。
- 在组合分类预测时,投票技术是最常用的。
- 在组合回归预测时,统计技术是最常用的。
你有什么问题吗?
在下面的评论中提出你的问题,我会尽力回答。
暂无评论。