题目重点:选择题问考虑 ensemble 时的正确因素;从基模型差异、独立验证、服务延迟与可解释性建立判断框架。
题意与假设
这道练习题保留了面经中值得训练的核心约束,并将需要澄清的条件单独列出。现场拿到变体时,先和面试官确认这些条件。
- ensemble 是多个模型输出的组合;训练版区分平均/投票、bagging、boosting 与 stacking,实际选项未知。
- 比较基线与 ensemble 时使用相同独立验证集与目标指标,不能在 test set 调权重。
- 延迟、内存、维护和解释性都是上线条件,不能只看离线指标。
解题路线
- 先看基模型误差相关性:高度相同的错误难靠简单平均改善;有差异且各自有信号的模型更可能互补。
- Bagging 对高方差模型可通过重采样平均降低波动;boosting 逐轮关注难例但会有噪声/过拟合风险;stacking 的 meta model 必须用 out-of-fold 预测训练,避免同训练集泄漏。
- 对照单模型、简单平均和复杂 ensemble 的 PR/AUC 或任务目标,报告置信区间与关键切片,不凭模型数多就宣称更好。
- 把服务成本放进决策:m 个串行模型使延迟/资源上升,平行推理也增算力;如果收益很小且可解释性下降,可能不值得。
- 生产监控各成员模型退化、权重漂移与回滚路径;具体正确选项只能看到原题选项后判断。
手动走一遍
训练例两个模型各错 10% 样本:若总错在同一批样本,投票无法救回这些错误;若错误发生在不同样本,合适组合才有改善空间。即使离线改善 0.1%,若推理延迟翻倍也未必满足上线 SLO。
规模与取舍
m 个模型的推理计算大致为各成员成本之和,串行延迟相加、并行延迟约最大成员加合并开销;存储约参数总量。训练方式另有重复训练/元模型成本。
易错点与追问
容易失分的边界
- 认为 ensemble 总比单模型准。
- 在 test set 上选择组合权重,造成评估泄漏。
- stacking 直接用训练集原位预测训练 meta model。
- 忽略延迟、资源、解释性和回滚。
继续深挖
- 怎样用 out-of-fold 预测做 stacking?
- 误差高度相关时还值得 ensemble 吗?
- 如何动态下线失效成员模型?
