M2-031M2: Classical Machine Learning集成方法 (Bagging/RF)Hard
Mastery:

集成方法 (Bagging/RF): 什么是 Stacking?它与 Blending 的区别是什么。

📐 Mathematical Definition
y^=Meta(f1(x),…,fm(x))\hat y=\text{Meta}\big(f_1(x),\dots,f_m(x)\big)
⚡ Executive Summary
Core Concept: Stacking 用元学习器组合基模型输出(交叉验证生成元特征);Blending 用固定留出集,简单但数据利用低。

📌 Key Takeaways

  • •
    必须用 CV 生成元特征以防泄漏
  • •
    基模型应多样化(互补)

📐 Mathematical Derivations

Stacking 的两层结构:<strong>第一层(基模型)</strong> 训练 m 个不同的模型(如 RF、GBDT、线性模型、神经网络);<strong>第二层(元学习器)</strong> 用第一层的输出作为特征、原始标签作为目标,学习如何组合。<strong>关键实现细节是元特征的生成必须用交叉验证</strong>:对每个基模型,用 K 折 CV 得到'每个样本的折外预测'作为元特征(这样元特征不包含该样本自身标签的信息);若直接用基模型在训练集上的预测(in-sample)作为元特征,会因基模型过拟合训练集而给出<strong>过于乐观</strong>的元特征,导致元学习器高估基模型能力——这就是 Stacking 的泄漏陷阱。<strong>Blending</strong> 是简化版:固定划分一个留出集,基模型在训练集上训练、在留出集上预测得到元特征;优点是简单(无需 CV、无泄漏风险),缺点是<strong>留出集数据未用于训练基模型</strong>(数据利用不充分),且元特征的样本量受留出集大小限制。

🏭 Production Trade-offs

实践要点:① <strong>基模型的多样性</strong>是关键——Stacking 的收益来自基模型的<strong>互补性</strong>(错误不相关);若所有基模型都是同族 GBDT,收益很小。理想组合是'不同归纳偏置'的模型(树 + 线性 + KNN + 神经网络)。② <strong>元学习器的选择</strong>——通常用<strong>简单模型</strong>(线性回归、逻辑回归、浅树),因为元特征已含强信息,复杂元学习器易过拟合;正则应加在元学习器上。③ <strong>计算成本</strong>——Stacking 需 m×K 次训练,是主要代价;可用 <strong>bagged stacking</strong>(对元学习器再做 Bagging)提升稳定性。④ <strong>与简单平均的对比</strong>——若基模型性能相近,简单平均(或加权平均)常与 Stacking 效果相当且更简单;Stacking 的优势在基模型性能差异大时(元学习器能学到'何时信任哪个模型')。⑤ <strong>竞赛中的常见做法</strong>——多层 Stacking + 大量基模型,但需谨慎防过拟合(尤其排行榜过拟合)。
⚠️ Common Interview Pitfalls
  • ✕
    用 in-sample 预测作为元特征(严重泄漏)
  • ✕
    基模型全用同族模型(缺乏多样性,收益有限)
🎯 Interviewer Follow-ups
  • ?
    Stacking 为什么会泄漏?
  • ?
    元学习器该用复杂还是简单模型?
📚

Associated Knowledge Base Guides & Mindmaps

Explore the comprehensive technical article, exam cards, and global architecture tree.

← PreviousM2-030: 集成方法 (Bagging/RF): 解释 out-of-bag(OOB)估计,它有什么用。📋Back to BankNext →M2-032: 梯度提升 (GBDT/XGBoost): 解释 GBDT 的核心思想:为什么是'拟合负梯度'。