M8-001M8: ML Systems, Engineering & ResearchML System Design FrameworkEasy
Mastery:

ML System Design Framework: 给出 ML 系统设计的通用框架。

📐 Mathematical Definition
framework: goal→data→model→serve→monitor (loop)\text{framework}:\ \text{goal}\to\text{data}\to\text{model}\to\text{serve}\to\text{monitor}\ (\text{loop})
⚡ Executive Summary
Core Concept: 五步:明确目标与指标 → 数据 → 特征与模型 → 服务与部署 → 监控与迭代;每步都要谈权衡与失败模式。

📌 Key Takeaways

  • •
    明确目标:业务目标 → 可量化的 ML 指标(含护栏)
  • •
    数据与特征:来源、质量、时效、规模
  • •
    模型与服务:选型、训练、部署形态、延迟预算
  • •
    监控与迭代:漂移、退化、闭环(含失败模式)

📐 Mathematical Derivations

数学机理:<strong>ML 系统设计的五步框架</strong>(面试中可套用)——(1) <strong>明确目标与指标(clarify)</strong>——(a) <strong>业务目标</strong>(提升什么:GMV/留存/效率);(b) <strong>ML 指标</strong>(代理指标:CTR/AUC/NDCG/延迟);(c) <strong>护栏指标</strong>(不能恶化的);(d) <strong>约束</strong>(延迟预算、成本预算、数据合规、团队规模);<strong>关键</strong>——<strong>先问清楚再设计</strong>(面试中'澄清需求'是加分项,而非浪费时间)。(2) <strong>数据(data)</strong>——(a) <strong>来源</strong>(日志/标注/第三方/合成);(b) <strong>规模与增长</strong>(日增多少、总量多大);(c) <strong>质量</strong>(噪声/缺失/标签延迟);(d) <strong>时效</strong>(实时/近线/离线);(e) <strong>标签</strong>(如何获得、延迟多少、是否有偏);(f) <strong>隐私合规</strong>(PII/授权)。(3) <strong>特征与模型(features & model)</strong>——(a) <strong>特征</strong>(用户/物品/上下文/交叉;离线 vs 在线计算);(b) <strong>模型选型</strong>(规则/线性/GBDT/深度/LLM;按数据量与延迟约束选);(c) <strong>训练</strong>(离线/在线、频率、分布式);(d) <strong>评估</strong>(离线指标 + 在线 A/B)。(4) <strong>服务与部署(serving)</strong>——(a) <strong>部署形态</strong>(批处理/在线/流式/边缘);(b) <strong>架构</strong>(召回-排序-重排 / 级联);(c) <strong>延迟预算</strong>(各阶段分配);(d) <strong>容量</strong>(QPS、峰值、扩缩容);(e) <strong>降级</strong>(超时/故障时的 fallback)。(5) <strong>监控与迭代(monitor & iterate)</strong>——(a) <strong>数据漂移/概念漂移</strong>;(b) <strong>模型退化</strong>;(c) <strong>业务指标</strong>;(d) <strong>闭环</strong>(如何收集反馈、更新模型);(e) <strong>失败模式</strong>(数据管道断流、模型服务故障、指标恶化)。<strong>回答的结构</strong>——(a) <strong>先澄清</strong>(目标/约束/规模);(b) <strong>给框架</strong>(五步);(c) <strong>逐层展开</strong>(每步谈选择与权衡);(d) <strong>主动提'失败模式'与'如何监控'</strong>(体现工程成熟度);(e) <strong>总结取舍</strong>。<strong>加分点</strong>——(a) <strong>量化</strong>(QPS/延迟/数据量);(b) <strong>对比方案</strong>(为什么选 A 不选 B);(c) <strong>失败模式</strong>('如果 X 挂了怎么办');(d) <strong>演进路径</strong>('MVP 怎么做、之后怎么扩展')。<strong>实践建议</strong>——(a) <strong>先澄清再设计</strong>;(b) <strong>用五步框架</strong>(结构化);(c) <strong>每步谈权衡</strong>;(d) <strong>主动提失败模式与监控</strong>;(e) <strong>给演进路径</strong>(MVP → 完整)。<strong>度量</strong>——(a) 框架的完整性;(b) 权衡的合理性;(c) 失败模式的覆盖。

🏭 Production Trade-offs

深度剖析与工程权衡:① <strong>'先澄清再设计'是面试的关键</strong>——不问需求就设计会被认为'缺乏工程素养';面试中能主动澄清是深度理解的标志。② <strong>'护栏指标'要主动提</strong>——体现'不只优化单一指标'的成熟度。③ <strong>'失败模式'是加分项</strong>——'如果数据管道断流怎么办'这类思考体现工程经验。④ <strong>'量化'很重要</strong>——QPS/延迟/数据量级的估算体现'能落地'。⑤ <strong>'演进路径'</strong>——'MVP 先怎么做'体现务实(而非一上来就设计完美系统)。⑥ <strong>面试要点</strong>——被问'设计一个 ML 系统',应给出'<strong>五步框架(目标/数据/模型/服务/监控)+ 先澄清 + 每步权衡 + 失败模式 + 演进路径</strong>';能主动提'护栏指标'是深度理解的标志。
⚠️ Common Interview Pitfalls
  • ✕
    不问需求直接设计(缺乏工程素养)
  • ✕
    不主动提失败模式与监控(显得不成熟)
🎯 Interviewer Follow-ups
  • ?
    面试中被问'设计一个系统'应该先说什么?
  • ?
    为什么要先问'目标和约束'?
📚

Associated Knowledge Base Guides & Mindmaps

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

← PreviousM7-102: Online Metrics & Guardrails: 解释新颖效应(novelty effect)与首因效应。📋Back to BankNext →M8-002: ML System Design Framework: 设计一个商品搜索相关性系统,说明各层设计。