机器学习中的堆叠集成与贝叶斯超参数优化
1. 堆叠集成概述
堆叠(Stacking),也称为堆叠泛化,是一种创建可能异质的机器学习模型集成的技术。堆叠集成的架构至少包括两个基础模型(称为 0 级模型)和一个元模型(1 级模型),元模型用于组合基础模型的预测结果。其目标是结合一系列表现良好的模型的能力,获得比集成中任何单个模型可能更好的预测性能。
1.1 堆叠集成的步骤
创建堆叠集成的过程可以分为三个步骤:
1. 训练 0 级模型 :每个 0 级模型在完整的训练数据集上进行训练,然后用于生成预测。对于回归问题,使用预测值很直接;对于分类问题,可以使用预测的类别或预测的概率/分数。可以仅使用预测值作为 1 级模型的特征,也可以将原始特征集与 0 级模型的预测结果相结合,实践中结合特征往往效果更好。
2. 训练 1 级模型 :1 级模型(元模型)通常比较简单,理想情况下可以对 0 级模型的预测结果进行平滑解释,因此线性模型常被用于此任务。使用上一步的特征(仅预测值或与初始特征集结合)和某种交叉验证方案来训练 1 级模型,交叉验证用于选择元模型的超参数和/或考虑用于集成的基础模型集。
3. 对未知数据进行预测 :将所有基础模型应用于新的观测数据以获得预测结果,然后元模型使用这些预测结果创建堆叠集成的最终预测。
1.2 堆叠集成的代码实现
以下是创建堆叠集成的具体步骤和代码:
# 1. 导入库
import pandas
超级会员免费看
订阅专栏 解锁全文
46

被折叠的 条评论
为什么被折叠?



