第11讲 · EECS 189:分类

UC Berkeley EECS 189/289A《机器学习导论》2026 春季 · 课堂实录重构

原始标题 Classification
视频 https://www.youtube.com/watch?v=oid6SvXy8Kw
课程主页 https://eecs189.org/sp26/
官方讲义/笔记(Lecture 11) Google Drive PDF
图片来源 书中幻灯片插图为官方 PDF 高清渲染图

对应讲次:第11讲(UC Berkeley EECS 189 机器学习导论)

制作模型:deepseek-flash(coding-agent / pi;据 ~/.pi/agent/settings.json)

说明:课程材料版权归 UC Berkeley 及授课教师所有,本书仅供学习

编者说明:本讲 deck 共 92 页,课堂在「离散特征的朴素贝叶斯」处结束;分类评估(混淆矩阵、ROC/AUC、精确率/召回率、代价敏感)部分(第 55–92 页)收录于文末附录。

本讲路线图

(参考时间: 00:00)

  1. 复习 ImageNetV2 论文(测试集被反复使用会导致高估);
  2. 分类 vs 回归;构建分类器的三种方式;
  3. 生成式 vs 判别式分类器;高斯判别分析(GDA) = LDA / QDA;
  4. LDA 与逻辑回归的联系;离散特征的朴素贝叶斯。
标题页

📷 标题页
回到原视频 (00:00:37)

上节课回顾

📷 上节课回顾
回到原视频 (00:00:45)


一、复习:测试集会「被用坏」

(参考时间: 00:01)

讲师复习第 3 讲提到的 ImageNetV2 论文:把各种模型在原始 ImageNet 测试集上的报告准确率,与在同分布新建的测试集上的准确率对比,发现:

这正是「测试集被反复使用会造成有偏估计」的实证。

关于训练/测试划分的论文

📷 关于训练/测试划分的论文
回到原视频 (00:01:37)

分类:引言

📷 分类:引言
回到原视频 (00:04:35)

分类 vs 回归

📷 分类 vs 回归
回到原视频 (00:04:50)

回顾:分类 vs 回归

📷 回顾:分类 vs 回归
回到原视频 (00:05:49)


二、分类的基本图景

2.1 分类 vs 回归

(参考时间: 00:05)

决策边界是特征空间中「两个类别概率相等」的集合;点落在边界哪一侧就归到哪一类。离边界越远,置信度越高。

三类构建分类器的方法

📷 三类构建分类器的方法
回到原视频 (00:13:00)

两类概率分类器

📷 两类概率分类器
回到原视频 (00:13:48)

编者说明:讲师特别提醒术语坑:所谓 高斯判别分析(GDA)其实是生成式模型;而 逻辑回归名字里既有「回归」又容易误导,其实是判别式分类器。请关注概念本身,而非历史命名。

2.2 生成式 vs 判别式

(参考时间: 00:17)

用一个「两个孩子」的寓言:

形式化区别:

两个孩子的故事(一)

📷 两个孩子的故事(一)
回到原视频 (00:17:31)

两个孩子的故事(二)

📷 两个孩子的故事(二)
回到原视频 (00:19:10)

两个孩子的故事(三)

📷 两个孩子的故事(三)
回到原视频 (00:21:18)

由贝叶斯规则:

$$ p(y\mid X) \propto p(X,y) = p(X\mid y)\,p(y) $$

判别式直接学左边;生成式学右边两个再「反推」。生成式把参数预算花在模拟每个类的完整形状上,判别式则把预算花在找准决策边界上。生成式的假设更强(你得相信类条件真的是某个高斯),如果假设不对就会误入歧途;判别式更灵活。

p(y|X) 与贝叶斯规则

📷 p(y|X) 与贝叶斯规则
回到原视频 (00:25:24)

p(y|X) ∝ p(X,y)

📷 p(y|X) ∝ p(X,y)
回到原视频 (00:26:39)

这意味着什么(一)

📷 这意味着什么(一)
回到原视频 (00:28:02)

这意味着什么(二)

📷 这意味着什么(二)
回到原视频 (00:29:30)

判别式 vs 生成式分类器

📷 判别式 vs 生成式分类器
回到原视频 (00:31:40)

(过渡)

📷 (过渡)
回到原视频 (00:32:05)

(过渡)

📷 (过渡)
回到原视频 (00:33:20)


三、高斯判别分析(GDA)

(参考时间: 00:35)

GDA 是一类生成式分类器:假设每个类的类条件密度是高斯:

$$ p(x\mid y=k)=\mathcal{N}(x\mid \mu_k,\Sigma_k),\qquad p(y=k)=\pi_k $$

自由参数:每个类的均值 $\mu_k$ 与协方差 $\Sigma_k$,加上类先验(伯努利/多项分布)。用 MLE 拟合:

GDA(一)

📷 GDA(一)
回到原视频 (00:35:22)

GDA(二)

📷 GDA(二)
回到原视频 (00:36:24)

GDA(三)

📷 GDA(三)
回到原视频 (00:36:58)

GDA:两类条件高斯

📷 GDA:两类条件高斯
回到原视频 (00:38:22)

GDA:两类条件高斯(续)

📷 GDA:两类条件高斯(续)
回到原视频 (00:39:08)

GDA:参数与先验

📷 GDA:参数与先验
回到原视频 (00:40:05)

GDA:参数与先验(续)

📷 GDA:参数与先验(续)
回到原视频 (00:40:13)

GDA:似然与 MLE

📷 GDA:似然与 MLE
回到原视频 (00:42:10)

GDA:联合似然

📷 GDA:联合似然
回到原视频 (00:42:32)

GDA:各参数的 MLE

📷 GDA:各参数的 MLE
回到原视频 (00:45:41)

GDA:均值的 MLE

📷 GDA:均值的 MLE
回到原视频 (00:46:08)

GDA:先验的 MLE

📷 GDA:先验的 MLE
回到原视频 (00:47:19)

GDA:先验估计与抽样偏置

📷 GDA:先验估计与抽样偏置
回到原视频 (00:47:55)

GDA:何时不用 MLE

📷 GDA:何时不用 MLE
回到原视频 (00:49:32)

GDA:先验的估计与陷阱

📷 GDA:先验的估计与陷阱
回到原视频 (00:48:43)

3.1 决策边界:三种情形

决策边界 = 使 $p(y=A\mid x)=p(y=B\mid x)$ 的 $x$ 集合(用贝叶斯规则把生成模型「换算」成判别式的相等条件)。由协方差假设的不同,得到三种边界:

情形 假设 决策边界 名称
1 两类的协方差都是球面($\sigma^2 I$) 线性(垂直于两类均值之差) LDA 的特例
2 协方差相同但任意 线性 LDA(线性判别分析)
3 协方差任意且不同 二次(曲线) QDA(二次判别分析)

情形 2 的关键技巧:协方差相同但非球形时,用线性变换「白化/球化」坐标($x \mapsto \hat x = \Sigma^{-1/2}(x-\mu)$),把问题变成情形 1,从而仍得到线性边界——且线性变换保持「线性」。

GDA 决策边界(球面协方差 ⇒ 线性)

📷 GDA 决策边界(球面协方差 ⇒ 线性)
回到原视频 (01:11:09)

GDA 决策边界(一)

📷 GDA 决策边界(一)
回到原视频 (00:52:56)

GDA 决策边界(二)

📷 GDA 决策边界(二)
回到原视频 (00:54:49)

GDA 决策边界(三)

📷 GDA 决策边界(三)
回到原视频 (00:55:46)

GDA 决策边界(二)

📷 GDA 决策边界(二)
回到原视频 (00:57:17)

GDA 决策边界(相同协方差 ⇒ 线性)

📷 GDA 决策边界(相同协方差 ⇒ 线性)
回到原视频 (01:03:09)

GDA 决策边界(白化技巧)

📷 GDA 决策边界(白化技巧)
回到原视频 (01:05:20)

GDA 决策边界(线性变换)

📷 GDA 决策边界(线性变换)
回到原视频 (01:04:36)

GDA 决策边界(不同协方差 ⇒ 二次)

📷 GDA 决策边界(不同协方差 ⇒ 二次)
回到原视频 (01:08:44)

GDA 决策边界(二次推导)

📷 GDA 决策边界(二次推导)
回到原视频 (01:07:56)

GDA 决策边界(情形分析)

📷 GDA 决策边界(情形分析)
回到原视频 (01:08:40)

GDA 决策边界(QDA 二次项)

📷 GDA 决策边界(QDA 二次项)
回到原视频 (01:09:27)

GDA 决策边界(多类)

📷 GDA 决策边界(多类)
回到原视频 (01:10:10)

一般情形(QDA):无法消掉二次项,边界是二次曲线。多类时:所有类协方差相同 ⇒ 两两之间都是线性边界;协方差各异 ⇒ 一般是二次边界。

GDA 决策边界总结

📷 GDA 决策边界总结
回到原视频 (01:11:12)

LDA 示例(11 个类):黑点是各高斯均值,同心椭圆是水平集,线性决策边界把它们分开。

LDA

📷 LDA
回到原视频 (01:11:18)

3.2 预测分布与「LDA → 逻辑回归」

LDA 学完后,$p(y=A\mid x)$ 可写成类条件高斯 × 先验,正比于一个二次型;对二分类,两个类的该项之比导出一个特殊形式的预测分布——这正是逻辑回归的形式:

LDA 总能写成逻辑回归,但反之不成立:并非逻辑回归的每个 $w$ 都对应一个合法的「高斯均值+协方差」。因此逻辑回归(判别式)是更灵活的模型——它对 $p(y\mid x)$ 的形式限制更少。

(讲师的铺垫:逻辑回归 = 把线性模型 $w^\top x$ 送进 sigmoid 压缩到 $[0,1]$,其决策边界是线性的。)

LDA 的预测条件分布(一)

📷 LDA 的预测条件分布(一)
回到原视频 (01:13:14)

LDA 的预测条件分布(二)

📷 LDA 的预测条件分布(二)
回到原视频 (01:13:54)

LDA 的预测条件分布(三)

📷 LDA 的预测条件分布(三)
回到原视频 (01:14:54)

LDA 的预测条件分布(四)

📷 LDA 的预测条件分布(四)
回到原视频 (01:15:21)

LDA vs 逻辑回归

📷 LDA vs 逻辑回归
回到原视频 (01:18:08)

3.3 离散特征:朴素贝叶斯

若特征是离散的(如蛋白质由 20 种氨基酸组成、文本由词组成),类条件密度用高斯就没意义了。常用办法是 朴素贝叶斯(Naive Bayes):假设给定类别时各特征条件独立,于是

$$ p(x\mid y=k)=\prod_j p(x_j\mid y=k) $$

「朴素」正来自这个(通常不成立的)独立性假设。它曾经很常用,现在已经少见。

特征离散时:朴素贝叶斯

📷 特征离散时:朴素贝叶斯
回到原视频 (01:19:34)


总结(Takeaways)


附录:课堂未展示的幻灯片(分类评估:ROC/AUC 等)

以下幻灯片属于本讲 deck 的分类评估部分(混淆矩阵、ROC/AUC、精确率/召回率、代价敏感学习),本次录像未展开,作为延伸阅读收录。

分类问题的种类

🖼️ 分类问题的种类

CS 189/289

🖼️ CS 189/289

回顾:交叉验证

🖼️ 回顾:交叉验证

如何在两个分类器间选择(一)

🖼️ 如何在两个分类器间选择(一)

如何在两个分类器间选择(二)

🖼️ 如何在两个分类器间选择(二)

一个未校准但有用的分类器

🖼️ 一个未校准但有用的分类器

定义假正例、假负例等

🖼️ 定义假正例、假负例等

(本讲只考虑二分类器)

🖼️ (本讲只考虑二分类器)

定义:真阳性 TP

🖼️ 定义:真阳性 TP

定义:假阳性 FP

🖼️ 定义:假阳性 FP

定义:真阴性 TN

🖼️ 定义:真阴性 TN

定义:假阴性 FN

🖼️ 定义:假阴性 FN

分类决策结果汇总

🖼️ 分类决策结果汇总

混淆矩阵

🖼️ 混淆矩阵

分类决策结果汇总(二)

🖼️ 分类决策结果汇总(二)

回到决策阈值

🖼️ 回到决策阈值

移动阈值得到 ROC 曲线

🖼️ 移动阈值得到 ROC 曲线

比较不同分类器的 ROC 曲线(一)

🖼️ 比较不同分类器的 ROC 曲线(一)

比较不同分类器的 ROC 曲线(二)

🖼️ 比较不同分类器的 ROC 曲线(二)

比较不同分类器的 ROC 曲线(三)

🖼️ 比较不同分类器的 ROC 曲线(三)

你会选哪个模型

🖼️ 你会选哪个模型

绘制 ROC 曲线的算法(一)

🖼️ 绘制 ROC 曲线的算法(一)

绘制 ROC 曲线的算法(二)

🖼️ 绘制 ROC 曲线的算法(二)

用 AUC 概括 ROC(一)

🖼️ 用 AUC 概括 ROC(一)

用 AUC 概括 ROC(二)

🖼️ 用 AUC 概括 ROC(二)

分数分布与 ROC/AUC 可视化

🖼️ 分数分布与 ROC/AUC 可视化

部分 AUC

🖼️ 部分 AUC

ROC 曲线的历史

🖼️ ROC 曲线的历史

更多关于 ROC

🖼️ 更多关于 ROC

分类决策结果汇总(三)

🖼️ 分类决策结果汇总(三)

精确率—召回率曲线

🖼️ 精确率—召回率曲线

ROC 曲线及其用途总结

🖼️ ROC 曲线及其用途总结

若关心概率校准

🖼️ 若关心概率校准

领域决定的其他评估方式

🖼️ 领域决定的其他评估方式

若关心这些指标,为何不用……

🖼️ 若关心这些指标,为何不用……

学习代价敏感分类器(一)

🖼️ 学习代价敏感分类器(一)

学习代价敏感分类器(二)

🖼️ 学习代价敏感分类器(二)

面向代价敏感损失优化

🖼️ 面向代价敏感损失优化


附:参考与延伸阅读

主题 链接
本讲视频 https://www.youtube.com/watch?v=oid6SvXy8Kw
课程主页 https://eecs189.org/sp26/
官方讲义/笔记(Lecture 11) Google Drive PDF
ImageNetV2 复制研究 https://arxiv.org/abs/1902.10811
教材 Machine Learning: A First Course for Engineers and Scientists 分类、生成式/判别式、GDA/LDA、朴素贝叶斯相关章节 · https://doi.org/10.1017/9781108919371

版权说明:本讲视频、幻灯片与课程材料版权归 UC Berkeley EECS 189/289A 课程团队所有。本书为课堂内容的学习性中文重构,仅供学习交流。