Skip to content

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 种取值,那么假设空间的大小为:

\[|\mathcal{H}| = (3+1) \times (3+1) \times (3+1) + 1 = 65\]

其中 "+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\) 按均匀分布对误差求和,有:

\[\sum_f E(\mathfrak{L}_a \mid f) = \sum_f E(\mathfrak{L}_b \mid f)\]

总误差与学习算法无关!所有算法同样好!

NFL 定理的重要前提:所有"问题"出现的机会相同、或所有问题同等重要。实际情形并非如此——我们通常只关注自己正在试图解决的问题。

脱离具体问题,空泛地谈论"什么学习算法更好"毫无意义!具体问题,具体分析!

NFL 定理的寓意: - 单一机器学习模型不能解决所有问题 - 图像数据需要重点关注"局部特征",文本数据需要重点关注"序列信息" - 考虑数据和任务的特性,选择合适的模型 - 机器学习并非"十大套路""二十大招数"的简单堆积 - 最优方案往往来自:按需设计、量身定制

七、机器学习的数学基础

向量与矩阵求导

\[\frac{\partial x^T a}{\partial x} = \frac{\partial a^T x}{\partial x} = a\]
\[\frac{\partial}{\partial x}(Ax - b)^T W(Ax - b) = 2A^T W(Ax - b)\]

快速判定:根据求导后结果"形状"判断。参考资料:《The Matrix Cookbook》。

概率论基础

高斯分布\(X \sim \mathcal{N}(\mu, \sigma^2)\),概率密度函数:

\[f(x) = \frac{1}{\sqrt{2\pi}\sigma}\exp\left(-\frac{(x-\mu)^2}{2\sigma^2}\right)\]

中心极限定理:大量独立同分布的随机变量之和近似服从正态分布。这为将误差建模为高斯噪声提供了理论依据。

极大似然估计 (MLE):寻找使当前观测数据出现"可能性"最大的参数值:

\[\hat{\theta}_{\text{MLE}} = \arg\max_\theta \prod_{i=1}^m P(x_i \mid \theta)\]

连乘易造成下溢,通常取对数似然:\(\hat{\theta}_{\text{MLE}} = \arg\max_\theta \sum_{i=1}^m \log P(x_i \mid \theta)\)


2026.06