首页
/ ML for Beginners 第一课精读:什么是机器学习——从 AI/ML/深度学习关系图到本地学习环境搭建

ML for Beginners 第一课精读:什么是机器学习——从 AI/ML/深度学习关系图到本地学习环境搭建

2026-09-06 17:21:53作者:宗隆裙

本篇指南基于 ML for Beginners(12 周、26 课、52 题测验的经典机器学习课程)第一组“Introduction”的第一课 Introduction to machine learning 展开:讲清机器学习的定义、它与 AI 和深度学习的边界、课程覆盖范围与明确排除项,并给出开课前的完整环境准备清单(Python、Node.js、VS Code、Scikit-learn、Jupyter 依赖安装)。读完本篇,你应能独立完成笔记本(notebook)本地运行环境搭建,理解课程的术语体系与学习路线,知道下一课与后续动手练习在哪里。

AI、机器学习、深度学习与数据科学的关系信息图

Google Trends 显示的“machine learning”一词热度曲线

1. 课程定位:经典机器学习,以 Scikit-learn 为核心

ML for Beginners 是 Microsoft Cloud Advocates 出品的 12 周、26 课课程,主打 classic machine learning(经典机器学习):以 Scikit-learn 为主要库(课程说明中不再重复外链,库的定位见课程 README.md),并刻意不涉及深度学习——那部分由另一门 AI for Beginners 课程覆盖。

本课(Lesson 01)在课程总表中的定位是:

课程编号 主题 所属分组 学习目标
01 Introduction to machine learning Introduction 掌握机器学习背后的基本概念

第一组 Introduction 共 4 课,依次是:

  1. 机器学习导论(本篇)
  2. 机器学习与 AI 的历史
  3. 公平性与机器学习
  4. 机器学习技术(建模七步法)

课程的 pedagogy(教学法)有两条主线:一是项目式学习(project-based),二是高频测验——课前预热测验(pre-lecture quiz)设定学习意图,课后测验(post-lecture quiz)巩固记忆。全部 52 份每份 3 题的测验代码都放在 quiz-app/ 目录,这是一个 Vue.js 3 应用,可以在本地用 npm install + npm run serve 运行,也可部署为静态站点(详见 AGENTS.md 中的“Quiz Application”章节)。

每个课时的固定结构为:可选 sketchnote → 可选补充视频 → 课前测验 → 书面讲义 → 知识检查(knowledge check)→ Challenge → Assignment → 课后测验。本课属于纯概念课,因此目录下没有 notebook.ipynbsolution/ 文件夹,只有讲义 README.md、作业 assignment.md 和本课插图 images/ 目录——从目录结构看,动手环节被有意推迟到第 5 课(回归工具课)才开始,体现“先概念、后实操”的设计。

另外,整个课程文档基于 Docsify 实现“零构建”在线阅读:index.html 配置了 docsify 入口,仓库根目录执行 docsify serve 后在 localhost:3000 即可离线浏览全部讲义;package.json 还定义了 npm run convert 用于通过 docsify-to-pdf 生成课程 PDF(输出为 pdf/readme.pdf)。侧边栏导航定义在 docs/_sidebar.md,与 9 个主题组一一对应。

2. 机器学习到底是什么:从“孩子的大脑”到系统定义

原文档从人的学习过程切入,逐步给出机器学习的定义,这条推理链值得完整保留:

  1. 孩子的大脑:儿童通过感官接收周围环境的事实,逐渐学会生活中隐藏的规律,并据此构造逻辑规则去识别已学到的模式;
  2. 脑可塑性(brain plasticity):持续“发现隐藏模式 → 在模式上创新”的循环让人类在一生中不断进化,这是人类成为最精密生命体的学习机制;
  3. 人类智能行为:人脑从现实世界感知事物、处理感知到的信息、做出理性决策、并根据情境采取行动——我们把这种行为称为“智能行为”;
  4. 人工智能(AI):当把这个智能行为过程用程序实现到机器上时,就得到 AI;
  5. 机器学习(ML):它是 AI 的一个重要子集,原文给出的核心定义是——“ML 关注使用专门算法,从感知到的数据中发现有意义的信息、找出隐藏模式,以支撑理性决策过程”

从系统视角,原文进一步将其表述为:机器学习是构建能够自动从数据中学习隐藏模式、以辅助智能决策的自动化系统。这个定义在后续课程中会被反复印证,例如 1-Introduction/4-techniques-of-ML/README.md 中“决定问题 → 收集与准备数据 → 选择训练方法 → 训练模型 → 评估 → 调参 → 预测”的七步建模流程。

为什么需要机器学习而不是硬编码规则?原文抛出的思考题是:企业为什么愿意尝试 ML 策略而不是创建硬编码的规则引擎?结合下一课的例子可以回答:规则引擎在多变量场景下会迅速失效——例如精算场景中,若变量只有“是否吸烟”还可以手写规则;但一旦引入更多变量(如天气预报需要经度、纬度、气候变化、距海洋距离、急流模式等),ML 模型比人工规则更高效。这正是本课“为什么学习 ML”一节的实质答案。

3. 术语辨析:AI、ML、深度学习、数据科学

原文配图(见文首关系图,Infographic by Jen Looper)展示了 AI、ML、深度学习、数据科学四个概念的包含与交叉关系。结合课程给出的边界声明,可以得到一张清晰的概念地图:

  • AI ⊃ ML:AI 是更大的概念,ML 是其子集,专门指“从数据中学模式”的分支;
  • 深度学习 ⊂ ML:深度学习是用多层神经网络建模的 ML 子分支;
  • 数据科学与 ML 交叉:数据科学覆盖数据探索、清洗、可视化到建模的完整链条,ML 是其中的建模核心。

原文明确列出了课程覆盖不覆盖的内容,这是理解整门课边界的依据:

覆盖(经典 ML,主要使用 Scikit-learn):

  • 机器学习核心概念
  • ML 的历史
  • ML 与公平性(fairness)
  • 回归技术(regression)
  • 分类技术(classification)
  • 聚类技术(clustering)
  • 自然语言处理技术(NLP)
  • 时间序列预测(time series forecasting)
  • 强化学习(reinforcement learning)
  • ML 的真實世界应用

不覆盖:

  • 深度学习(deep learning)
  • 神经网络(neural networks)
  • 广义 AI

课程的理由是:为了避免神经网络带来的复杂度,让“经典 ML”成为理解更广阔 AI 概念所必需的地基;数据科学方向则留待另一门 Data Science for Beginners 课程。从仓库结构看,这十个方向恰好对应根目录下 1-Introduction9-Real-World 的主题分组和 README.md 课程总表中的 26 课(第 21–23 课为时间序列,第 24–25 课为强化学习,Postscript 两课为真实世界应用与模型调试)。

4. 开课前的环境准备清单(可执行版)

原文档的 Getting started 一节要求:开始前,你的电脑必须配置好并能本地运行 notebooks。原始清单与仓库 AGENTS.md 中的 Setup Commands 相互印证,合并后如下表:

准备项 原始要求 仓库确认的具体操作
Python 安装 Python 并理解基础语法 Python 3.8+,用 python --version 验证
Jupyter 能本地运行 notebooks pip install jupyter
ML 常用库 熟悉 Scikit-learn pip install scikit-learn pandas numpy matplotlib seaborn
Node.js + npm 部分课程(Web App)使用 JavaScript 安装 node 与 npm
代码编辑器 设置一个开发用编辑器 Visual Studio Code(同时支持 Python 与 JavaScript)
GitHub 账号 Fork 本课程到自己名下学习 Fork 整个仓库后在本地完成练习
Web App 课依赖 第 9 课构建 Flask 应用 pip install flask(仅 Web App 课需要)
R(可选) 多课提供 R 版本答案 R 中执行 install.packages(c("tidyverse", "tidymodels", "caret"))

验证环境的典型命令(依据 AGENTS.md 的 Setup Commands 与 Common Commands Reference):

# 检查 Python 版本(需要 3.8+)
python --version

# 安装 Jupyter 与课程常用库
pip install jupyter scikit-learn pandas numpy matplotlib seaborn

# 进入某个含 notebook 的课时目录后启动
jupyter notebook notebook.ipynb

注意事项(来自 TROUBLESHOOTING.mdAGENTS.md 的 Troubleshooting 章节):

  • 若从 GitHub 克隆整个仓库,50+ 语言的翻译目录会显著增大下载体积;README.md 提供了 sparse checkout 方式(git clone --filter=blob:none --sparsegit sparse-checkout set --no-cone '/*' '!translations' '!translated_images')跳过翻译目录;
  • Jupyter 内核卡死时执行 Kernel → Restart;import 报错先确认对应包已 pip 安装;路径报错时注意从 notebook 所在目录启动。

5. 为什么数据质量重要:贯穿后续课程的暗线

原文专门用一节强调:高质量数据提升模型性能;低质量或噪声数据即使搭配先进算法也会导致预测不准。 这一论断在课程后续动手课中都有落地案例,从仓库文件可以定位到每课处理的具体数据集:

主题组 实践数据 数据文件路径
回归 美国南瓜价格 2-Regression/data/US-pumpkins.csv
Web App 部署回归模型为 Flask 应用 3-Web-App/1-Web-App/data/
分类 亚洲与印度菜谱 4-Classification/data/cuisines.csv
聚类 尼日利亚音乐数据 5-Clustering/data/nigerian-songs.csv
时间序列 世界电力使用量 7-TimeSeries/data/energy.csv

因此从第 6 课起,几乎每个动手课都会先做数据可视化与清洗(例如 2-Regression/2-Data/README.md 专门练习“为 ML 准备数据”),这正是本课数据质量论点的教学闭环。

6. 机器学习的应用场景:原文示例与课程对应

原文列举的四个典型应用方向,在课程主题组中都能找到对应的动手练习:

  • 从患者的病史或检查报告预测患病可能性 → 对应分类主题组 4-Classification/README.md(对菜谱分类数据训练分类器,方法论同构);
  • 利用气象数据预测天气事件 → 对应时间序列主题组 7-TimeSeries/README.md(用 ARIMA 与 SVR 预测电力使用量);
  • 理解文本的情感 → 对应 NLP 主题组 6-NLP/README.md(酒店评论情感分析两课);
  • 检测假新闻以阻止宣传扩散 → 对应 9-Real-World/1-Applications/README.md 中的真实世界应用场景讨论。

原文还指出:金融、经济、地球科学、太空探索、生物医学工程、认知科学乃至人文学科,都已将 ML 用于解决各自领域中“数据处理繁重”的难题。

7. 本课挑战与作业:动手前的最后一步

  • Challenge(挑战):在纸上或用在线绘图工具,手绘你对“AI、ML、深度学习、数据科学四者差异”的理解图,并标注每种技术擅长解决什么问题。该挑战直接检验第 3 节的概念地图,可结合 sketchnotes/ 目录中课程作者绘制的各主题手绘速记图对照检查。
  • Assignment(作业)Get up and running——一项非计分作业,要求:复习 Python 基础(按原始指引的 Python Learning Path),并完成本机环境搭建,确保能够运行 notebooks。完成标准即第 4 节清单全部打勾、jupyter notebook 可正常打开课时笔记本。
  • 课前/课后测验:由 quiz-app/ 提供的测验应用承载(全课程共 52 份)。
  • 自研拓展:原文明确列出两条 Microsoft Learn 学习路径作为后续自学方向(云上用无代码方式构建预测模型、ML 基础入门模块),可在完成本课作业后按图索骥。

8. 小结与下一步

机器学习的本质是自动化地发现数据中的隐藏模式,并以发现的洞察辅助智能决策;它是 AI 的子集、深度学习又是 ML 的子集,数据科学则与之交叉覆盖更宽的数据处理链条。本课程的边界是“经典 ML + Scikit-learn”,不碰神经网络与深度学习。

完成本课后的推荐路线:

  1. 按第 4 节清单搭好 Python/Jupyter 环境并跑通一个空 notebook;
  2. 完成 Challenge(手绘四概念关系图)与 Assignment(环境自检);
  3. 依序学习 ML 历史公平性ML 建模七步技术
  4. 进入 2-Regression/1-Tools/README.md 开始第一个带 Jupyter notebook 与 R 双语解答的动手课。
登录后查看全文
热门项目推荐
相关项目推荐