machine-learning-zoomcamp
Machine Learning Zoomcamp 是一个为期四个月的免费开源课程,旨在帮助学习者系统掌握机器学习工程的全流程。它解决了从理论模型到生产部署之间的技能断层问题,不仅教授如何使用 Python 构建回归、分类及深度学习模型,更重点讲解如何利用 Docker、FastAPI、Kubernetes 和 AWS Lambda 将这些模型真正落地到生产环境中。
该项目非常适合拥有一年以上编程经验、熟悉命令行基础,但希望转型或进阶为机器学习工程师的开发者。即使你此前没有机器学习背景,课程也会从基础算法(如线性回归、决策树)讲起,循序渐进地引导你掌握 TensorFlow 和 PyTorch 等主流框架。
其独特亮点在于“端到端”的工程化视角:不同于仅关注算法理论的教程,Machine Learning Zoomcamp 强调实战,通过两个完整的项目演练和同伴评审机制,让学员亲手经历数据预处理、模型训练、API 封装到容器化部署的完整闭环。你可以选择加入有截止日期和证书认证的直播期次,感受社群共进的氛围;也可以利用仓库中开放的资料随时自学。无论哪种方式,都能让你在真实的工程场景中积累宝贵经验,为职业发展打下坚实基础。
使用场景
某初创公司的后端工程师李明,虽有一年 Python 开发经验,但被要求独立负责将团队的原型算法转化为可上线的机器学习服务,却对工程化部署一无所知。
没有 machine-learning-zoomcamp 时
- 知识断层严重:熟悉 Scikit-learn 建模,但完全不懂如何将模型封装为 API,导致算法只能停留在本地 Jupyter Notebook 中无法交付。
- 部署环境混乱:尝试手动在服务器上配置依赖,因环境不一致导致“在我电脑上能跑”的问题频发,浪费大量时间排查兼容性错误。
- 缺乏系统路径:在网上零散搜索 Docker、Kubernetes 教程,内容碎片化且难度跳跃,难以形成从训练到上线的完整工程闭环。
- 孤军奋战无反馈:遇到报错只能独自摸索,没有同伴讨论或代码审查机制,项目进度严重滞后,面临延期风险。
使用 machine-learning-zoomcamp 后
- 掌握全链路技能:通过课程系统学习了用 FastAPI 构建模型服务,并成功将线性回归与决策树模型包装成标准接口,实现了从代码到服务的跨越。
- 容器化解决一致性:学会使用 Docker 容器化应用,确保开发、测试与生产环境完全一致,彻底消除了环境差异导致的部署故障。
- 实战导向的学习路径:跟随 4 个月的结构化大纲,按部就班地完成了从数据预处理到 AWS Lambda 无服务器部署的完整项目,建立了清晰的工程视野。
- 社区支持加速成长:加入 Slack 频道参与作业互评,在真实案例交流中快速修正错误,最终顺利通过了包含同行评审的期末项目考核。
machine-learning-zoomcamp 帮助开发者填补了从“会写模型”到“能落地服务”的关键鸿沟,让机器学习工程化变得有章可循。
运行环境要求
- 未说明
- 机器学习模块无需特殊 GPU(普通笔记本即可)
- 深度学习模块建议使用云端资源进行计算,本地具体配置未说明
未说明

快速开始
机器学习Zoomcamp:免费的4个月机器学习工程课程
包含作业和项目截止日期及提交表单的课程平台 • Slack上的课程频道(#course-ml-zoomcamp) • Telegram公告 • 课程播放列表 • 常见问题解答 • 分享关于该课程的推文
从核心模型到实际应用的部署,全面学习机器学习工程。
使用Python构建回归和分类模型,掌握线性/逻辑回归、决策树和深度学习等关键算法,并通过Docker、FastAPI、Kubernetes和AWS Lambda将其部署到生产环境。
目录
关于ML Zoomcamp
Machine Learning Zoomcamp教授完整的机器学习工程知识,涵盖整个流程:从用Python构建模型到将其部署到生产环境中。
你将掌握线性回归、逻辑回归、决策树以及使用TensorFlow和PyTorch进行深度学习等关键机器学习算法,随后学习如何使用Docker容器化、用FastAPI构建API,并借助Kubernetes和AWS Lambda实现规模化部署。
先决条件
你需要:
- 至少1年以上的编程经验
- 熟悉命令行基础操作
你无需具备机器学习方面的任何先验知识。我们将从基础知识开始。
技术准备:对于机器学习模块,你只需要一台连接互联网的笔记本电脑即可。而在深度学习部分,我们将使用云资源来进行更密集的计算。
如何加入
你可以选择跟随直播班级或按照自己的节奏学习来加入ML Zoomcamp。
本仓库中提供了所有免费的学习资料。每个模块都有独立的文件夹(例如01-intro、03-classification),而针对不同班级的作业和截止日期则位于cohorts目录下。讲座均为预先录制好的视频,可在本YouTube播放列表中观看。
flowchart TD
A["想学习Machine Learning Zoomcamp"] --> B{"你是否需要<br/>截止日期和证书?"}
B -->|是| C["加入直播班级"]
B -->|否 / 不确定| D["自主学习"]
C --> C1["固定时间表(9月–12月)"]
C --> C2["有评分的作业 + 排行榜"]
C --> C3["2个项目 + 同行评审"]
C --> C4["可获得证书"]
D --> D1["随时开始,按自己的节奏进行"]
D --> D2["无评分的作业及可选项目"]
D --> D3["无法获得证书"]
选项1:自主学习
你可以随时开始学习。你将获得对所有资料的完全访问权限,并在Slack上得到社区支持。
完成作业:作业及其解答可在课程平台上找到。为你的作品集构建一个项目。
在自主学习模式下,作业不计分,项目也不会接受同行评审,因此你无法获得证书。
选项2:直播班级
2025届班级:9月15日开课。请在此处报名:填写此表格
每年举办一次(9月至12月)。
包括:
- 更新后的作业
- 自动作业评分及排行榜
- 项目同行评审
- 达到所有要求后可获得证书
即使你在正式开课日期之后加入,仍然可以跟上进度——但请注意,某些作业表单可能已经关闭。所有当前有效的截止日期都列在课程平台上。
对比
我们在这张表格中总结了两种加入方式之间的主要区别:
| 特性 | 自主学习 | 播放班级 |
|---|---|---|
| 时间安排 | 按自己的节奏学习,随时开始 | 固定的4个月时间表(每年9月–12月) |
| 课程材料 | 完全访问GitHub仓库和YouTube讲座 | 完全访问GitHub仓库和YouTube讲座 |
| 社区支持 | 可访问Slack社区(#course-ml-zoomcamp) |
可访问Slack社区(#course-ml-zoomcamp) |
| 作业 | 提供但不计分 | 自动作业评分,并显示在排行榜上 |
| 项目 | 自行完成,不进行评估 | 提交2个项目(期中+结业项目 或 两份结业项目)并接受同行评审 |
| 证书 | 无法获得 | 完成项目和同行评审后可获得 |
| 结构 | 灵活,无截止日期 | 每周有固定的节奏,设有截止日期和同伴监督 |
课程大纲
| 模块 | 描述 | 主题 |
|---|---|---|
| 模块1:机器学习导论 | 学习机器学习的基础知识:什么是机器学习、何时使用以及如何利用CRISP-DM框架来解决机器学习问题。 | • 机器学习与基于规则的系统 • 监督学习基础 • CRISP-DM方法论 • 模型选择概念 • 环境搭建 |
| 模块2:回归任务的机器学习 | 在学习线性回归、特征工程和正则化的同时,构建一个汽车价格预测模型。 | • 线性回归(从零开始实现及使用scikit-learn) • 探索性数据分析 • 特征工程 • 正则化技术 • 模型验证 |
| 模块3:分类任务的机器学习 | 使用逻辑回归创建客户流失预测系统,并学习特征选择方法。 | • 逻辑回归 • 特征重要性和选择 • 分类变量编码 • 模型解释 |
| 模块4:分类模型的评估指标 | 学习如何正确评估分类模型,并处理不平衡数据集。 | • 准确率、精确率、召回率、F1分数 • ROC曲线与AUC • 交叉验证 • 混淆矩阵 • 不平衡类别处理 |
| 模块5:机器学习模型部署 | 将你的模型转化为Web服务,并通过Docker和云平台进行部署。 | • 使用Pickle序列化模型 • FastAPI Web服务 • Docker容器化 • 云上部署 |
| 模块6:决策树与集成学习 | 学习基于树的模型和集成方法,以获得更好的预测效果。 | • 决策树 • 随机森林 • 梯度提升(XGBoost) • 超参数调优 • 特征重要性 |
| 期中项目 | ||
| 模块8:神经网络与深度学习 | 使用TensorFlow和Keras介绍神经网络,包括卷积神经网络和迁移学习。 | • 神经网络基础 • PyTorch • TensorFlow与Keras • 卷积神经网络 • 迁移学习 • 模型优化 |
| 模块9:无服务器深度学习 | 使用AWS Lambda等无服务器技术部署深度学习模型。 | • 无服务器概念 • 使用AWS Lambda部署scikit-learn模型 • 使用AWS Lambda部署TensorFlow和PyTorch模型 • API网关 |
| 模块10:Kubernetes与TensorFlow Serving | 学习使用Kubernetes和TensorFlow Serving大规模部署机器学习模型。 | • Kubernetes基础 • TensorFlow Serving • 模型部署与扩展 • 负载均衡 |
| 毕业设计1 | ||
| 毕业设计2 |
项目
选择一个你感兴趣的问题,找到合适的数据集,开发你的模型,并将其部署为Web服务。
本课程共有3个项目:
- 期中项目,在完成模块6:决策树与集成学习之后;
- 毕业设计1,在课程结束时,完成模块10:Kubernetes与TensorFlow Serving之后;
- 毕业设计2,同样在课程结束时,完成模块10:Kubernetes与TensorFlow Serving之后。
这些项目将帮助你应用所学知识,并为你的GitHub和个人作品集增添亮点。
往届学员项目示例
一位学员项目中的本地Kubernetes集群部署架构(使用Kind)
往届学员的一些课程项目:
- 用于癌症预测的血细胞分类器:一个端到端工具,能够从显微镜图像中分割并分类血细胞,以辅助检测急性淋巴母细胞白血病(ALL)的迹象。
- 垃圾分类器:基于Xception的图像分类器,训练数据约15,000张垃圾图片,测试准确率达到93.3%,并通过封装在Docker中的Flask API提供预测服务。
结业证书
成功完成课程后颁发的Machine Learning Zoomcamp结业证书
要获得结业证书,你需要完成并提交两个项目:
- 完成两个项目:提交一个期中项目和一个毕业设计,或者直接提交两个毕业设计;
- 按时提交:在规定的截止日期前提交项目,方可获得认证资格;
- 同行评审:在同行评审环节中,对三位同学的项目进行评估并提供反馈。
用户评价
机器学习Zoomcamp课程内容非常全面且深入,涵盖了从基础概念到模型准备与部署的全流程。无论是初学者还是有一定经验的从业者,都能从中受益。此外,课程背后的社区氛围也非常活跃,大家互相帮助、共同进步。我要感谢Alexey Grigorev分享的宝贵知识,以及他的团队为我们解决遇到的各种问题所提供的支持。
在Alexey Grigorev的专业指导下,参加机器学习Zoomcamp课程是一段非常难忘的经历。我由衷地感谢Alexey、Timur以及DataTalksClub团队提供的这门课程,也感谢同期的同学们给予的宝贵支持,让我的学习体验更加丰富。这门课程设计严谨、讲解清晰,作业和实践项目都安排得当,不仅培养了我们按时完成任务的能力,还让我们掌握了应对实际问题的实用技能。
在兼顾其他工作的同时完成密集的机器学习Zoomcamp课程并不容易,但这段经历极大地提升了我在机器学习工程领域的专业能力,坚定了我对ML部署和云技术的热情,并增强了我应对实际ML挑战的信心和韧性。感谢Alexey Grigorev带来的这门课程!
强烈推荐ML Zoomcamp给任何希望系统性掌握生产级机器学习技术的人。特别感谢Alexey Grigorev以及DataTalksClub团队,他们打造了一门结构清晰、内容生动有趣的课程。
非常感谢Alexey Grigoriev创建了这样一门精彩的课程——而且还是免费的!这真的令人深受启发。
衷心感谢Alexey Grigorev和DataTalksClub社区在整个学习过程中给予的大力支持与清晰指导。开源精神和协作式笔记让学习体验更加充实。
社区与求助
寻求帮助的途径
- Slack:
#course-ml-zoomcamp频道 - 常见问题解答: 常见问题与解答
- 学习小组: 与其他学员交流互动
社区行为准则
公开学习
我们鼓励大家分享自己的学习进展!可以撰写博客文章、制作视频,或在社交媒体上使用#mlzoomcamp标签发布内容。这不仅能帮助你更好地吸收知识,还能拓展你的职业人脉。
小贴士: 公开分享学习经验还可以获得额外积分哦!
了解更多:公开学习
赞助商
有意赞助者请联系alexey@datatalks.club。
关于DataTalks.Club
DataTalks.Club 是一个全球性的数据爱好者在线社区。这里是一个讨论数据、学习知识、分享经验、答疑解惑并相互支持的平台。
官网 • 加入Slack社区 • 邮件通讯 • 即将举行的活动 • YouTube频道 • GitHub仓库 • LinkedIn主页 • Twitter账号
DataTalks.Club的大部分活动都在Slack平台上进行。我们会在那里发布最新动态,讨论数据相关话题、职业发展等问题等。
版本历史
dl-models2025/08/15chapter7-model2020/09/26常见问题
相似工具推荐
openclaw
OpenClaw 是一款专为个人打造的本地化 AI 助手,旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚,能够直接接入你日常使用的各类通讯渠道,包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息,OpenClaw 都能即时响应,甚至支持在 macOS、iOS 和 Android 设备上进行语音交互,并提供实时的画布渲染功能供你操控。 这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地,用户无需依赖云端服务即可享受快速、私密的智能辅助,真正实现了“你的数据,你做主”。其独特的技术亮点在于强大的网关架构,将控制平面与核心助手分离,确保跨平台通信的流畅性与扩展性。 OpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者,以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力(支持 macOS、Linux 及 Windows WSL2),即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你
stable-diffusion-webui
stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面,旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点,将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。 无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师,还是想要深入探索模型潜力的开发者与研究人员,都能从中获益。其核心亮点在于极高的功能丰富度:不仅支持文生图、图生图、局部重绘(Inpainting)和外绘(Outpainting)等基础模式,还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外,它内置了 GFPGAN 和 CodeFormer 等人脸修复工具,支持多种神经网络放大算法,并允许用户通过插件系统无限扩展能力。即使是显存有限的设备,stable-diffusion-webui 也提供了相应的优化选项,让高质量的 AI 艺术创作变得触手可及。
everything-claude-code
everything-claude-code 是一套专为 AI 编程助手(如 Claude Code、Codex、Cursor 等)打造的高性能优化系统。它不仅仅是一组配置文件,而是一个经过长期实战打磨的完整框架,旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。 通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能,everything-claude-code 能显著提升 AI 在复杂任务中的表现,帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略,使得模型响应更快、成本更低,同时有效防御潜在的攻击向量。 这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库,还是需要 AI 协助进行安全审计与自动化测试,everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目,它融合了多语言支持与丰富的实战钩子(hooks),让 AI 真正成长为懂上
ComfyUI
ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎,专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式,采用直观的节点式流程图界面,让用户通过连接不同的功能模块即可构建个性化的生成管线。 这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景,也能自由组合模型、调整参数并实时预览效果,轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性,不仅支持 Windows、macOS 和 Linux 全平台,还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构,并率先支持 SDXL、Flux、SD3 等前沿模型。 无论是希望深入探索算法潜力的研究人员和开发者,还是追求极致创作自由度的设计师与资深 AI 绘画爱好者,ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能,使其成为当前最灵活、生态最丰富的开源扩散模型工具之一,帮助用户将创意高效转化为现实。
gemini-cli
gemini-cli 是一款由谷歌推出的开源 AI 命令行工具,它将强大的 Gemini 大模型能力直接集成到用户的终端环境中。对于习惯在命令行工作的开发者而言,它提供了一条从输入提示词到获取模型响应的最短路径,无需切换窗口即可享受智能辅助。 这款工具主要解决了开发过程中频繁上下文切换的痛点,让用户能在熟悉的终端界面内直接完成代码理解、生成、调试以及自动化运维任务。无论是查询大型代码库、根据草图生成应用,还是执行复杂的 Git 操作,gemini-cli 都能通过自然语言指令高效处理。 它特别适合广大软件工程师、DevOps 人员及技术研究人员使用。其核心亮点包括支持高达 100 万 token 的超长上下文窗口,具备出色的逻辑推理能力;内置 Google 搜索、文件操作及 Shell 命令执行等实用工具;更独特的是,它支持 MCP(模型上下文协议),允许用户灵活扩展自定义集成,连接如图像生成等外部能力。此外,个人谷歌账号即可享受免费的额度支持,且项目基于 Apache 2.0 协议完全开源,是提升终端工作效率的理想助手。
markitdown
MarkItDown 是一款由微软 AutoGen 团队打造的轻量级 Python 工具,专为将各类文件高效转换为 Markdown 格式而设计。它支持 PDF、Word、Excel、PPT、图片(含 OCR)、音频(含语音转录)、HTML 乃至 YouTube 链接等多种格式的解析,能够精准提取文档中的标题、列表、表格和链接等关键结构信息。 在人工智能应用日益普及的今天,大语言模型(LLM)虽擅长处理文本,却难以直接读取复杂的二进制办公文档。MarkItDown 恰好解决了这一痛点,它将非结构化或半结构化的文件转化为模型“原生理解”且 Token 效率极高的 Markdown 格式,成为连接本地文件与 AI 分析 pipeline 的理想桥梁。此外,它还提供了 MCP(模型上下文协议)服务器,可无缝集成到 Claude Desktop 等 LLM 应用中。 这款工具特别适合开发者、数据科学家及 AI 研究人员使用,尤其是那些需要构建文档检索增强生成(RAG)系统、进行批量文本分析或希望让 AI 助手直接“阅读”本地文件的用户。虽然生成的内容也具备一定可读性,但其核心优势在于为机器
