M2-031M2: Classical Machine Learning集成方法 (Bagging/RF)Hard
Mastery:
集成方法 (Bagging/RF): 什么是 Stacking?它与 Blending 的区别是什么。
📐 Mathematical Definition
⚡ 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.