在 MLOps Zoomcamp 中实践公开学习:从作业提交到个人技术品牌的完整指南
【免费下载链接】mlops-zoomcampFree MLOps course from DataTalks.Club. Register here 👇🏼 to get notified about the next cohort项目地址: https://gitcode.com/GitHub_Trending/ml/mlops-zoomcamp
本篇指南以 MLOps Zoomcamp 课程仓库中的 learning-in-public.md 为主体,系统讲解“公开学习”(Learning in Public)这一学习方式:为什么要把学习过程公开记录下来、在 MLOps Zoomcamp 中它与作业和项目提交流程如何衔接,以及如何围绕课程的六大 MLOps 模块组织可检索、可引用的公开学习内容。读完后你将掌握一套贯穿 9 周课程的公开学习实践方案,知道在每个模块该发布什么、发布到哪里、以及如何让自己的学习记录被社区、面试官和潜在合作者看到。
为什么要把学习过程公开
大多数人的学习是私密的:消费了课程、文档和视频,却从不告诉别人。原文档明确指出,这本身没有任何问题;但课程方希望鼓励你把学习进度记录下来,并公开分享到社交媒体上。
公开学习带来的收益在原文档中被归纳为四点:
- 扩展你的社交网络:结识新朋友、结交新伙伴(Expanding your network: meeting new people and making new friends);
- 被邀请参与 Meetup、会议和播客(Being invited to meetups, conferences and podcasts);
- 获得工作机会或客户(Landing a job or getting clients);
- 以及许多其他好事(Many other good things)。
此外,learning-in-public.md 还指向了一篇关于“为什么要公开发布自己的作品”的更全面的外部延伸阅读(publishing your work 指南),读者可结合外部资料进一步深化理解;本文则聚焦于该理念在本课程中的具体落地。
从仓库中的实际案例可以印证这些收益:cohorts/2022/leaderboard.md 收录了 2022 届学员的 Top 100 榜单,其中绝大多数条目都附带了 LinkedIn、GitHub 项目仓库,不少学员还附上了个人博客、个人网站等业务链接。这些公开痕迹正是“公开学习”的直接产物——榜单本身就是由学员公开的帖子和项目链接汇总而成的。
公开学习与 MLOps Zoomcamp 的关系
要理解公开学习在本课程中的位置,先要理解课程本身的形态。根据仓库根目录的 README.md:
- MLOps Zoomcamp 是一门免费的 9 周课程,覆盖 MLOps 从训练、实验到部署、监控的完整链路;
- 课程由 6 个模块加 1 个最终项目组成:
- 模块 1:Introduction——MLOps 是什么、成熟度模型、NYC Taxi 数据集(贯穿课程的示例)、环境搭建;
- 模块 2:Experiment Tracking & Model Management——MLflow 基础、模型保存与加载、模型注册表;
- 模块 3:Orchestration & ML Pipelines——工作流编排;
- 模块 4:Model Deployment——在线(web、streaming)与离线(batch)三种部署策略,Flask Web 服务、AWS Kinesis & Lambda 流式部署、批量评分;
- 模块 5:Model Monitoring——基于 Prometheus、Evidently、Grafana 的 Web 服务监控,以及基于 Prefect、MongoDB、Evidently 的批处理任务监控;
- 模块 6:Best Practices——单元/集成测试、Lint、pre-commit、GitHub Actions CI/CD、Terraform 基础设施即代码;
- 最终项目:把以上所有内容整合为一个端到端的 MLOps 项目。
课程提供两种参与方式(见 README.md 中的 Live Cohort / Self-Paced 对比表):
| Live Cohort | Self-Paced | |
|---|---|---|
| 作业 | 有评分 | 可完成但不计分 |
| 排行榜 | 有 | 无 |
| 同行评审 | 有 | 无 |
| 证书 | 有 | 无 |
两种方式的课程材料都是同一个开源仓库,即本仓库。这意味着:无论你参加哪种形式,公开学习的素材来源都是这套模块材料。Live Cohort 学员在提交作业时可以直接附带公开学习帖子(见下一节);Self-Paced 学员则没有评分和排行榜机制,公开分享更多依赖个人主动维护博客或社交账号。
课程元数据 course.yaml 中定义了统一的社区标签hashtag: mlopszoomcamp,这是你在社交媒体发布内容时建议携带的话题标签,便于同类内容聚合和被社区检索。
如何提交公开学习帖子:与作业、项目同一入口
原文档的核心操作说明在 “Learning in Public for Zoomcamps” 一节:当你提交作业(homework)或项目(project)时,可以同时提交你的 Learning in Public 帖子。具体要点:
- 提交入口在课程平台。上方第一张截图(images/learning-in-public-links.png)展示的就是课程平台提交表单中 Learning in Public 帖子链接的填写位置——表单除了作业/项目链接外,还预留了公开学习帖子的链接字段。
- 帖子形态以原文档的视频预览为准。第二张截图(images/learning-in-public.png)是原文档附带的视频封面,演示了一个典型的公开学习帖子呈现效果:一段面向社交媒体受众、介绍你本阶段学习成果的内容。
适用前提:该提交入口依赖课程平台(courses.datatalks.club)的作业/项目提交流程,属于 Live Cohort 的组成部分;Self-Paced 学习者没有平台评分流程,可参考同样的“每次作业/项目产出一个公开帖子”的节奏自行安排。
每个模块该公开什么:内容组织建议
结合 README.md 的 syllabus 和各模块 README,可以把 9 周的公开学习节奏规划为如下内容序列。每完成一个模块,围绕该模块的技术产出发布一条帖子,形成可连续追踪的学习轨迹:
| 阶段 | 模块 | 可公开的核心内容 | 参考材料 |
|---|---|---|---|
| 第 1 周 | Introduction | 环境搭建过程(Anaconda、Docker、Codespace 或 AWS VM)、NYC Taxi 时长预测基线模型 | 01-intro/README.md、01-intro/duration-prediction.ipynb |
| 第 2 周 | 实验跟踪 | MLflow 记录实验、对比不同超参、模型注册表实践 | 02-experiment-tracking/README.md、02-experiment-tracking/model-registry.ipynb |
| 第 3 周 | 编排 | 用工作流编排工具串联数据下载与训练流程 | 03-orchestration/README.md |
| 第 4 周 | 部署 | batch / web service / streaming 三种部署方式的对比实验与 Dockerfile 设计 | 04-deployment/README.md |
| 第 5 周 | 监控 | 用 Evidently + Grafana 做数据漂移监控的仪表盘实操 | 05-monitoring/README.md、05-monitoring/dashboards/data_drift.json |
| 第 6 周 | 最佳实践 | 测试、CI/CD、Terraform 的集成落地 | 06-best-practices/README.md |
| 第 7 周起 | 最终项目 | 端到端 MLOps 项目的完整仓库与架构说明 | 07-project/README.md |
公开内容不必限于社交短帖。从 2022 届榜单(cohorts/2022/leaderboard.md)可以看到多种被社区认可的公开形式:
- 独立 GitHub 项目仓库:几乎每条榜单条目都附项目仓库链接,如“Project”一列;
- 技术博客系列:有学员将 MLOps 学习拆成 part 1 至 part 4 的多篇博客(实验跟踪、编排、部署、监控各一篇),附在榜单的 “More info” 折叠区中;
- 个人网站与业务站点:部分学员同时挂出个人博客、portfolio 甚至业务站点。
最终项目阶段:让公开学习沉淀为可验证的作品
最终项目是公开学习的集大成时刻。07-project/README.md 对项目提出了具体要求,这些要求与“公开学习”高度契合——它们本质上就是在教你如何让作品对外可理解、可运行、可评估:
- 项目需要覆盖:选择数据集、训练并跟踪实验、构建训练流水线、以 batch/web/streaming 之一部署、监控模型表现、遵循最佳实践;
- 纽约出租车数据集被明确排除在项目之外(它用于课程各模块作业),你需要自选其他数据集;
- 技术栈不限于课程所教(云、MLflow/Weights & Biases、Prefect/Airflow/Flyte/Kubeflow/Argo、Evidently/whylogs、GitHub Actions、Terraform/Pulumi 等),使用课程未覆盖的工具时要在说明中解释该工具的作用——这正是公开帖子写作的关键要求:面向读者而非自己;
- 评分标准(Evaluation Criteria)中“Reproducibility”一项明确奖励“说明清晰、代码易于运行、依赖版本完整指定”,且文档特别建议:为项目新建一个独立仓库,起有意义的标题(如 “Car Price Prediction”),并在 README 中尽可能详细地记录一切——理由原文写得很直白:“这样做不仅便于向潜在雇主展示项目,也有助于被收录进 Projects Gallery”。
此外,Live Cohort 中项目采用同行评审(peer reviewing):需评价 3 个同行项目,每次评价额外加分。公开学习在这里形成闭环——你的公开帖子和项目仓库是别人评审你的材料,你评审别人的公开作品也是学习其 MLOps 实现的机会。
实践清单
综合原文档与仓库材料,可以把公开学习压缩为一份可执行清单:
- 每个模块结束发布一条帖子:说明本模块解决的问题、你的操作过程、遇到的坑与收获;
- 每条帖子附带可验证链接:GitHub 仓库、代码文件、仪表盘或博客全文,让读者能复核;
- 统一携带
mlopszoomcamp话题标签(见 course.yaml),让同届学员的公开学习互相可见; - 提交作业时同步填写帖子链接:在课程平台作业/项目表单的 Learning in Public 字段中提交(对应 learning-in-public.md 中的截图说明);
- 最终项目阶段把全部帖子、仓库和 README 整合成个人作品集,并按项目评分标准自查可复现性、测试与 CI/CD 覆盖。
公开学习不是对课程内容的替代,而是对课程过程的记录与放大:它把你的 9 周学习转化为可持续检索、可被社区引用的技术资产,这正是 MLOps Zoomcamp 在 learning-in-public.md 中倡导这一做法的核心目的。
【免费下载链接】mlops-zoomcampFree MLOps course from DataTalks.Club. Register here 👇🏼 to get notified about the next cohort项目地址: https://gitcode.com/GitHub_Trending/ml/mlops-zoomcamp
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考