机器学习系统设计
这门课学什么
课程讲机器学习上线后的工程问题:数据管道、特征工程、模型部署、监控、分布漂移和持续学习。课程网站公开了详细讲义和幻灯片。
内容摘要
这门课讲机器学习模型离开笔记本之后的事:怎样设计一个能部署、可靠、能扩展的机器学习系统。主讲人 Chip Huyen 后来把课程讲义扩写成 O'Reilly 出版的《Designing Machine Learning Systems》。课程约 3/4 是讲座,1/4 是工具实操。
课程按机器学习项目的生命周期展开。前 2 次课讲生产环境的特点和数据系统基础。接着讲训练数据、特征工程、模型开发和离线评估。中段讲部署方式、系统故障诊断、数据分布漂移和监控,并引出持续学习。最后讲基础设施与平台,以及机器学习怎样产生商业价值。
课程请来多位业界讲者。实操课覆盖 Ray Serve、Weights & Biases、WhyLogs 和 Evidently 这几种工具,案例课讲 Stitch Fix 的部署实践。成绩以期末项目为主,占 65%:学生组队做一个完整的机器学习应用,并在展示日现场演示。另有 2–3 次短作业占 30%,课堂参与占 5%。
学完后,你能从业务目标出发,权衡数据、模型、部署和监控各环节的设计选择。讲课风格重案例和取舍,公式推导少。课程视频不公开。自学时可以按课表读讲义和幻灯片,再配合同名书籍。
为什么值得学
讲义后来扩写成 O'Reilly 出版的《Designing Machine Learning Systems》。这本书是 MLOps 的常用参考。
课程信息
- 学校
- 斯坦福(Stanford)
- 课程号
- CS329S
- 讲师
- Chip Huyen
- 学期
- Winter 2022
- 平台
- 课程官网
- 费用
- 免费
- 难度
- 中级
- 先修
- 需要机器学习基础和 Python 工程经验。
- 材料
- 讲义、幻灯片、作业
- 许可证
- 未注明
课程大纲 · 共 18 节
大纲依据:Winter 2022 课程表(18 次课,含讲座、工具实操、客座讲座和项目展示)(查看原始页面 ↗)
- 1理解生产环境中的机器学习Understanding Machine Learning Production
对比研究中和生产中的机器学习有什么不同。以 Booking.com 上线 150 个模型的经验为例。
- 2机器学习与数据系统基础ML and Data Systems Fundamentals
讲数据格式、数据模型和数据处理方式。配 Airbnb 房价预测案例和推特热门话题的设计练习。
- 3训练数据Training Data
讲采样、标注、类别不平衡和数据增强。讨论标签不足时的应对方法。
- 4特征工程Feature Engineering
讲常用的特征处理方法。分析数据泄漏的成因和检测方法。
- 5模型选择、开发与训练Model Selection, Development, and Training
讲选择模型的原则。介绍实验跟踪、版本管理和分布式训练。
- 6离线评估Offline Evaluation
讲上线前的评估方法:建立基线、扰动测试和按数据切片评估。
- 7模型评估实操Model Evaluation (Tutorials)
演示 MadeWithML 的模型评估流程。介绍推荐系统测试工具 RecList。
- 8模型部署Deployment
比较批量预测和在线预测。讲模型压缩,以及云端部署和边缘部署的取舍。
- 9部署实操Deployment Tutorials
讲怎样评估 MLOps 工具。演示用 Ray Serve 部署模型。
- 10系统故障诊断、分布漂移与监控Diagnosis of ML System Failures, Data Distribution Shifts and Monitoring
归纳机器学习系统的失效类型。讲怎样检测数据分布漂移,以及该监控哪些指标。
- 11监控与持续学习Monitoring & Continual Learning
客座讲座,讲流式数据上的分布漂移。讨论模型怎样随新数据持续更新。
- 12Stitch Fix 部署案例与实验跟踪Model Deployment at Stitch Fix; Experiment Tracking & Versioning
介绍 Stitch Fix 的模型部署实践。演示用 Weights & Biases 做实验跟踪和版本管理。
- 13监控实操Monitoring Tutorial
演示 WhyLogs 和 Evidently 两个监控工具。
- 14时间序列与图神经网络部署;准确率之外Deploying Time Series Forecasting and GNNs; ML Beyond Accuracy
客座讲座。一部分讲时间序列预测和图神经网络的部署,另一部分讲公平、安全和治理问题。
- 15机器学习基础设施与平台ML Infrastructure and Platform
讲存储与计算、开发环境和模型平台的组成。讨论自建与采购的取舍。
- 16期末项目研讨Final Project Discussion
全班讨论各组期末项目的进展和问题。
- 17把机器学习融入业务Integrating ML into Business
三位投资人做客座讲座。话题包括融资路演、进入市场和 AI 的商业价值。
- 18期末项目展示日Final Project Demo Day
各组现场演示自己的机器学习应用。24 个演示的录像公开在 YouTube。
斯坦福的其他AI课
- 机器学习 · Machine Learning
- 深度学习 · Deep Learning
- 面向计算机视觉的深度学习 · Deep Learning for Computer Vision
- 基于深度学习的自然语言处理 · Natural Language Processing with Deep Learning
- 图机器学习 · Machine Learning with Graphs
- 人工智能:原理与技术 · Artificial Intelligence: Principles and Techniques