Skip to main content
AI EducademyAIEducademy
🌳

AI基础

🌱
AI 种子

面向现实世界的 AI 素养

🌿
AI 萌芽

智能系统背后的基础

🌳
AI 枝干

用当今的 AI 能力去构建

🏕️
AI 树冠

打造可靠的生成式 AI 系统

🌲
AI 森林

负责任地交付 AI 产品

🔨

AI精通

✏️
AI 草图

AI 构建者的工程基础

🪨
AI 雕刻

攻克更难问题的模式

⚒️
AI 匠心

设计可扩展 AI 的系统

💎
AI 打磨

在 AI 时代沟通与引领

🏆
AI 杰作

你的生产级 AI 毕业项目

🚀

职业准备

🚀
面试发射台

驾驭 AI 工程求职市场

🌟
行为面试精通

讲好你创造影响力的故事

💻
技术面试

在压力下解题、设计与沟通

🤖
AI与ML面试

备战现代 ML 与生成式 AI 面试

🏆
Offer与未来

做出自信而明智的下一步

查看所有学习计划→

实验室

已加载 7 个实验
🧠神经网络游乐场🤖AI 还是人类?💬提示实验室🎨图像生成器😊情感分析器💡聊天机器人构建器⚖️伦理模拟器
🎯模拟面试进入实验室→
学习旅程博客
🎯
关于

让AI教育触达每一个人、每一个角落

❓
常见问题

常见问题解答

🧰
AI 工具

我们使用并推荐的精选工具

✉️
联系

与我们取得联系

⭐
开源

在 GitHub 上公开构建

定价
立即开始
AI EducademyAIEducademy

© 2026 AI Educademy. 保留所有权利。

学习

  • 学习计划
  • 课程
  • 实验室
  • AI 入门工具包
  • 定价

社区

  • GitHub
  • 参与贡献
  • 行为准则
  • 关于
  • 常见问题

支持

  • 请我喝杯咖啡 ☕
  • 服务条款
  • 隐私政策
  • 联系我们
  • Sitemap
AI & 工程学习计划›🤖 AI与ML面试›课程›机器学习系统设计访谈
🏗️
AI与ML面试 • 高级⏱️ 25 分钟阅读

机器学习系统设计访谈

🤖

本课程由机器自动翻译成中文,尚未经过人工校对。如果读起来有些奇怪,请以英文原文为准。

🏗️ 机器学习系统设计访谈

您已经完成了编码轮次。现在,面试官将白板笔滑过桌子并说道:“为 5000 万用户设计一个推荐系统。”您的手掌会发湿 - 不是因为您不懂机器学习,而是因为您从未练习过“大声思考”整个系统。本课程为您提供了一个可重复的框架,将开放式问题转变为结构化对话。


🗺️ 为什么机器学习系统设计不同

传统的软件系统设计侧重于数据流、存储和可扩展性。机器学习系统设计增加了一个额外的维度:模型是一个活的组件,它会随着时间的推移而退化,取决于数据质量,并且需要持续评估。

面试官并不是在寻找完美的架构图。他们希望看到您能够:

  • 将模糊的业务问题转化为范围明确的机器学习任务
  • 尽早识别数据要求和潜在陷阱
  • 理性思考权衡而不是背诵教科书答案
  • 考虑模型部署之后会发生什么
💡

候选人犯的最大错误是直接跳到模型选择。面试官一致表示,问题框架和数据讨论是候选人脱颖而出的地方。


🧩 八步机器学习系统设计框架

使用这个框架作为每个设计问题的骨架。你不需要在每一步上花费相同的时间 - 根据问题进行调整 - 但触及每一步都标志着成熟。

1. 问题定义和业务指标

首先明确目标。问:企业的成功是什么样的?

  • 搜索排名:最大化点击率?出结果的时间?
  • 欺诈检测:最大限度地减少误报(错过欺诈),同时控制误报(阻止合法用户)?
  • 内容审核:优先考虑召回(捕捉所有有害的内容)而不是精确度?

尽早将业务指标映射到机器学习友好的目标。例如,“提高用户参与度”可能会转化为“预测每个项目的点击概率并按分数排名”。

2. 数据管道和收集

讨论数据来自哪里、如何收集以及您预计会出现什么问题:

  • 数据来源:用户行为日志、交易记录、第三方API
  • 标签策略:显式标签(用户评分)、隐式信号(点击次数、停留时间)或人工注释
  • 数据新鲜度:数据多久更改一次,过时是否会损害性能?

3.特征工程

描述您要提取的特征。将它们按逻辑分组:

|功能组 |示例 | |---|---| |用户特征|年龄段、任期、历史点击率 | |项目特点|类别、价格范围、受欢迎程度 | |上下文特征|一天中的时间、设备类型、位置 | |交互功能|用户×项目共现,会话深度|

4. 型号选择

现在 - 而且只有现在 - 讨论模型。证明你的选择合理:

  • 基线:逻辑回归或梯度增强树(训练速度快,可解释)
  • 高级:深度学习(用于检索的两塔模型,基于变压器的排序器)
  • Ensemble:将快速检索模型与较慢但更准确的重新排序器相结合

5. 训练策略

介绍如何训练和验证:

  • 训练/验证/测试分割(时态数据的基于时间的分割)
  • 处理类别不平衡(过采样、损失权重)
  • 超参数调整方法

6.线下评估

选择与业务目标相符的指标。 Precision@K 用于排名,AUC-ROC 用于二元分类,NDCG 用于有序列表。

7. 部署和服务

讨论模型如何接触用户:

  • 批量推理:每晚预先计算预测(适合电子邮件推荐)
  • 实时推理:对每个请求进行评分(搜索排名所需)
7 的 1 课已完成 0%
←返回学习计划
继续:模型评估深入研究→

讨论

登录 后参与讨论

建议修改本课内容
  • 混合:预先计算候选集,实时重新排名
  • 8. 监控和迭代

    解释发布后您会看到什么:数据漂移、预测分布变化以及通过 A/B 测试的在线指标。

    🤔
    Think about it:

    想象一下您正在设计一个欺诈检测系统。该公司称“抓住所有欺诈行为”。为什么 100% 召回率是一个危险的目标,您将如何围绕可接受的权衡进行对话?


    🎯 常见的 ML 设计问题以及如何解决这些问题

    推荐系统

    • Framing:预测 P(用户点击项目)→ 按分数对项目进行排名
    • 关键挑战:新用户/项目的冷启动问题
    • 架构:候选生成(快速、近似)→排名(准确、较慢)→重新排名(业务规则、多样性)

    搜索排名

    • 框架:给定查询,按相关性对文档进行排名
    • 关键挑战:平衡相关性、新鲜度和个性化
    • 架构:倒排索引检索→学习排序模型→与业务规则融合

    欺诈检测

    • 框架:二元分类 - 这笔交易是否具有欺诈性?
    • 关键挑战:极端的类别不平衡(欺诈率< 交易的 0.1%)
    • 架构:基于规则的过滤器 → ML 模型 → 针对不确定情况的人工审核队列
    🧠小测验

    在机器学习系统设计面试中,当出现设计提示时,您应该首先做什么?


    ⚖️ 像高级工程师一样讨论权衡

    面试官喜欢权衡讨论,因为它们揭示了经验的深度。以下是最常见的权衡:

    |权衡|何时偏向左|何时偏向右侧| |---|---|---| |延迟与准确性 |实时面向用户(搜索)|批量离线(电子邮件建议)| |简单与复杂模型 |小数据,需要可解释性 |数据大,准确性至关重要 | |批量服务与实时服务 |预测不会很快改变|预测必须反映最新情况| |建造与购买|业务的核心差异化因素|商品能力(例如 OCR)|

    当您讨论权衡时,请使用以下模式:

    “我们可以选择 选项 A,它给我们带来 [好处],但缺点是 [成本]。或者,选项 B [好处],尽管它引入了 [成本]。考虑到 [问题的具体限制],我倾向于 选项 A 因为......”

    🤯

    Netflix 估计,其推荐系统通过减少客户流失,每年为公司节省超过 10 亿美元。单个机器学习系统的价值超过了一些小国家的 GDP。


    🛠️ 将它们放在一起:迷你演练

    提示:“为社交媒体平台设计内容审核系统。”

    1. 问题:将用户生成的内容(文本+图像)分类为安全、边缘或有害
    2. 数据:来自人工审核者的标记审核决定、用户报告
    3. 特征:文本嵌入、图像特征(裸露分数、暴力指标)、用户历史记录(之前的违规行为)
    4. 模型:多模态分类器(文本分支+图像分支→融合层→分类头)
    5. 训练:分层抽样,处理类别不平衡;当新的有害模式出现时定期进行再培训
    6. 评价:有害内容召回率高;精确度对于边界很重要(避免过度审查)
    7. Serving:上传时实时推理;将边缘案例排队等待人工审核
    8. 监控:通过用户申诉跟踪误报率;监控新的滥用模式
    🧠小测验

    为什么混合服务方法(批量候选生成+实时排名)在推荐系统中很常见?


    🔑 要点

    • 使用框架:问题→数据→特征→模型→训练→评估→部署→监控
    • 从业务问题开始,而不是模型 - 当你跳过这个时面试官会注意到
    • 明确讨论权衡 - 这是中级和高级候选人之间最大的区别
    • 超越准确性 - 延迟、成本、公平性和可维护性在生产中都很重要
    • 大声练习 - ML 系统设计既是一项技术练习,也是一项沟通练习
    💡

    最好的机器学习系统设计答案感觉就像一场对话,而不是一场讲座。停下来与面试官核实,提出澄清问题,并在他们将你推向不同的方向时愿意改变立场。