Chapter 1 绪论
一、从"教"到"学"
想象疾旋鼬来到一座陌生的城市,想买一个西瓜。面对成百上千个西瓜,它完全不知道哪个好、哪个坏。
一种思路是请瓜农专家来教它:"青绿、蜷缩、浊响的是好瓜。" 疾旋鼬记住了,下次就能自己挑。这就是专家系统的思路——人类总结知识"教"给机器。
但问题来了:瓜农的经验写了整整一本书,而且不同季节、不同产地的规律还不一样。人类总结知识的速度,远远跟不上数据增长的速度。
"能不能让疾旋鼬自己看成千上万个西瓜的历史数据,自己总结出规律?"
这就是机器学习 (Machine Learning) 的核心思想。
二、机器学习的定义
Tom Mitchell (1997) 给出了经典定义:
对于某类任务 \(T\) 和性能度量 \(P\),如果一个计算机程序在 \(T\) 上以 \(P\) 衡量的性能随着经验 \(E\) 而自我完善,那么称这个程序在从经验 \(E\) 中学习。
用西瓜的例子来说: - 任务 \(T\):判断一个西瓜是好瓜还是坏瓜 - 经验 \(E\):历史上成千上万个西瓜的记录(色泽、根蒂、敲声……以及最终好不好吃) - 性能 \(P\):判断的准确率
经验 \(\to\) 数据。随着领域发展,机器学习目前主要研究智能数据分析的理论和方法。
三、人工智能与机器学习的关系
人工智能从 1956 年达特茅斯会议正式成为一个学科。经历了三个阶段:
| 阶段 | 时期 | 核心思想 | 代表 |
|---|---|---|---|
| 推理期 | 1956-1960s | 逻辑推理 | Logic Theorist |
| 知识期 | 1970s-1980s | 知识工程 | 专家系统 DENDRAL |
| 学习期 | 1990s- | 让系统自己学 | 机器学习算法 |
渐渐地,研究者们发现,仅有逻辑推理能力是不够的;总结出知识再"教"给系统,实在太难了。
机器学习是人工智能的核心研究领域。今天的"人工智能热潮"正是由于机器学习、尤其深度学习技术取得了巨大进展,基于大数据、大算力发挥出巨大威力。
四、基本术语
假设拿到一张西瓜数据表:
| 编号 | 色泽 | 根蒂 | 敲声 | 好瓜 |
|---|---|---|---|---|
| 1 | 青绿 | 蜷缩 | 浊响 | 是 |
| 2 | 乌黑 | 蜷缩 | 浊响 | 是 |
| 3 | 青绿 | 硬挺 | 清脆 | 否 |
| 4 | 乌黑 | 稍蜷 | 沉闷 | 否 |
这里面有一堆术语需要对齐:
- 数据集 (dataset):整张表,即 \(D = \{(x^{(1)}, y^{(1)}), \ldots, (x^{(m)}, y^{(m)})\}\)
- 样本 (sample) / 示例 (instance):表中每一行,即一个西瓜
- 样例 (example):拥有了标记的样本
- 属性 (attribute) / 特征 (feature):色泽、根蒂、敲声——描述样本的维度
- 属性值 (attribute value):青绿、乌黑、蜷缩……每个属性的具体取值
- 属性空间 (attribute space) / 样本空间 / 输入空间:所有可能的属性组合构成的空间。\(d\) 个属性张成一个 \(\mathbb{R}^d\) 的空间
- 特征向量 (feature vector):\(x^{(i)} = (x_1^{(i)}, x_2^{(i)}, \ldots, x_d^{(i)})\),第 \(i\) 个样本在属性空间中的坐标
- 标记 (label):\(y^{(i)}\),即"好瓜"或"坏瓜"
- 标记空间 / 输出空间:所有可能标记的集合
- 训练集 (training set):用来学习的数据
- 测试集 (test set):用来评估模型的数据,必须与训练集互斥
- 学习器 (learner):从数据中学习得到的模型
- 假设 (hypothesis):学习器对数据规律的某种猜测
- 真相 (ground-truth):数据背后的真实规律
- 未见样本 (unseen instance):训练时没见过的新样本
- 独立同分布 (i.i.d.):样本从同一分布 \(\mathcal{P}\) 中独立采样
根据标签的不同,任务也不同:
| 标签类型 | 任务名称 | 例子 |
|---|---|---|
| 离散值 | 分类 (classification) | 好瓜/坏瓜(二分类);手写数字 0-9(多分类) |
| 连续值 | 回归 (regression) | 预测西瓜的甜度值(如 0.85) |
| 无标签 | 聚类 (clustering) | 把西瓜自动分成几堆,每堆"比较像" |
- 监督学习 (supervised learning):有标签的分类/回归任务
- 无监督学习 (unsupervised learning):无标签的聚类任务
- 泛化 (generalization):模型在未见样本上的表现能力
五、假设空间与归纳偏好
假设空间
机器学习的过程,本质上是在假设空间 (hypothesis space) 中搜索。
什么是假设空间?就是所有可能的"规则"的集合。比如: - 规则 A:"色泽=青绿 且 根蒂=蜷缩 → 好瓜" - 规则 B:"敲声=浊响 → 好瓜" - 规则 C:"色泽=乌黑 或 根蒂=硬挺 → 坏瓜"
如果色泽有 3 种取值、根蒂有 3 种取值、敲声有 3 种取值,那么假设空间的大小为:
其中 "+1" 是因为每个属性还可以取"通配符" \(\star\)(即不关心这个属性),最后的 "+1" 对应"空假设"。
学习过程就是:从这 65 个假设中,找到一个与训练集一致的假设。
版本空间 (version space):与训练集一致的所有假设的集合。可能不止一个!在面临新样本时,不同假设会产生不同输出。
归纳偏好
当版本空间中有多个假设时,选哪个?这就是归纳偏好 (inductive bias) 的问题——学习算法对某种类型假设的偏好。
任何一个有效的机器学习算法必有其偏好。一般原则:奥卡姆剃刀 (Occam's Razor)——如无必要,勿增实体。优先选择最简单的假设。
学习算法的归纳偏好是否与问题本身匹配,大多数时候直接决定了算法能否取得好的性能!
六、NFL 定理
定理 (No Free Lunch Theorem):对于一个学习算法 \(\mathfrak{L}_a\),它在某些问题上比另一个算法 \(\mathfrak{L}_b\) 好,那么必然存在另一些问题,\(\mathfrak{L}_b\) 比 \(\mathfrak{L}_a\) 好。
具体地,考虑二分类问题,目标函数可以是任何映射 \(f: \mathcal{X} \to \{0,1\}\),函数空间为 \(\{0,1\}^{\mathcal{X}}\)。对所有可能的 \(f\) 按均匀分布对误差求和,有:
总误差与学习算法无关!所有算法同样好!
NFL 定理的重要前提:所有"问题"出现的机会相同、或所有问题同等重要。实际情形并非如此——我们通常只关注自己正在试图解决的问题。
脱离具体问题,空泛地谈论"什么学习算法更好"毫无意义!具体问题,具体分析!
NFL 定理的寓意: - 单一机器学习模型不能解决所有问题 - 图像数据需要重点关注"局部特征",文本数据需要重点关注"序列信息" - 考虑数据和任务的特性,选择合适的模型 - 机器学习并非"十大套路""二十大招数"的简单堆积 - 最优方案往往来自:按需设计、量身定制
七、机器学习的数学基础
向量与矩阵求导
快速判定:根据求导后结果"形状"判断。参考资料:《The Matrix Cookbook》。
概率论基础
高斯分布:\(X \sim \mathcal{N}(\mu, \sigma^2)\),概率密度函数:
中心极限定理:大量独立同分布的随机变量之和近似服从正态分布。这为将误差建模为高斯噪声提供了理论依据。
极大似然估计 (MLE):寻找使当前观测数据出现"可能性"最大的参数值:
连乘易造成下溢,通常取对数似然:\(\hat{\theta}_{\text{MLE}} = \arg\max_\theta \sum_{i=1}^m \log P(x_i \mid \theta)\)。
2026.06