资讯

组件学习器是什么?异质集成中由不同算法训练的成员

2026-11-053 分钟阅读百科
TL;DR组件学习器(Component Learner)是异质集成学习中的个体学习器,各成员由不同类型的学习算法(如决策树、支持向量机、神经网络、K 近邻)训练得到,与同质集成中的基学习器相对;异质组件天然具有较高的多样性,常通过投票、平均或 Stacking 元学习器组合。

组件学习器(Component Learner)是集成学习中的一个概念,指在“异质集成”中参与组合的各个个体学习器。在异质集成中,各个成员是用不同类型的学习算法训练出来的,比如一个决策树、一个支持向量机、一个神经网络和一个 K 近邻模型组合在一起。由于不存在统一的基学习算法,这些成员不叫基学习器,而叫组件学习器,或者直接称为个体学习器。

同质集成与异质集成

集成学习可以分为两类。同质集成:所有成员都是同一种模型,比如随机森林中全是决策树,其成员叫基学习器。它们之间的差异主要来自训练数据、特征或随机初始化的不同。异质集成:成员是不同种类的模型,其成员叫组件学习器。它们之间的差异主要来自算法本身的不同。

异质集成的优势

集成学习要想有效,成员之间必须“好而不同”:每个成员都要有一定的准确性,彼此之间又要有足够的差异,犯的错误要尽量不同。不同的学习算法有着不同的归纳偏好:决策树擅长处理特征之间的交互和非线性,但边界是轴平行的台阶状;线性模型假设线性关系,稳定但表达能力有限;K 近邻依赖局部的相似性;神经网络能学习复杂的表示;支持向量机追求最大间隔。它们看待同一个问题的“角度”天然不同,在不同的样本上犯错的情况也往往不同,因此组合起来更容易相互弥补。这是异质集成相对于同质集成的一个重要优势。

如何组合组件学习器

投票和平均:最简单的方式,分类时进行多数投票或对概率求平均(软投票),回归时对预测值求平均,还可以根据各个组件在验证集上的表现分配权重。但需要注意,不同类型的模型给出的概率在“校准”程度上可能差别很大,有的模型习惯给出非常极端的概率,直接平均时它可能主导结果,必要时应先对概率进行校准。堆叠(Stacking):这是异质集成最常用的方式。先用交叉验证的方法,让每个组件学习器对训练数据做出“没见过”的预测,再把这些预测作为新的特征,训练一个元学习器来学习如何最好地组合它们。元学习器通常选用逻辑回归、线性回归等简单的模型,以免过拟合。David Wolpert 在 1992 年提出了堆叠泛化的思想,Leo Breiman 后来做了进一步的研究。

实践中的应用

在机器学习竞赛中,排名靠前的方案常常是把梯度提升树、神经网络、线性模型等多种模型堆叠在一起的异质集成。Netflix 推荐大赛的获胜方案就组合了上百个不同类型的模型。异质集成的缺点是需要分别开发、训练和维护多种模型,部署和推理的成本较高,结果也更难解释,因此在实际的生产系统中,往往需要在效果提升与工程代价之间进行权衡。