第 2 章 数学基础
本章整理机器学习中反复使用的数学工具,包括向量和矩阵、矩阵乘法、范数、梯度、链式法则、概率、贝叶斯公式、常见分布和概率图模型。学习重点放在符号含义、维度检查和公式适用条件上。
2.1 标量、向量、矩阵和张量
标量是一个数,向量是一列或一行数,矩阵是二维数组,张量是更高维的数组。
在机器学习里,一个样本通常可以写成向量:
如果有 m 个样本,每个样本有 n 个特征,可以组成数据矩阵:
其中 m 是样本数,n 是特征数。深度学习中图像常用四维张量表示:
batch_size x channels x height x width维度检查是使用矩阵公式时的基本步骤。实现线性模型和神经网络时,很多报错都来自矩阵形状不匹配。
2.2 矩阵乘法和维度检查
如果:
那么:
中间的 n 必须相同。线性模型常写成:
如果
2.3 转置、逆矩阵和单位矩阵
矩阵转置会交换行和列:
单位矩阵
逆矩阵满足:
但不是所有矩阵都有逆。只有方阵且满秩时才可逆。在机器学习里,如果特征冗余或线性相关,就可能导致矩阵不可逆或数值不稳定。
2.4 范数
范数用来衡量向量大小。正则化里最常见的是 L1 和 L2。
L1 范数:
L2 范数:
机器学习中的 L2 正则化通常使用 L2 范数的平方:
L1 正则化更容易让部分参数变成 0,因此可用于特征选择;L2 正则化更倾向于让参数整体变小,因此常用于权重衰减。
2.5 导数、偏导数和梯度
导数描述函数在某一点变化得有多快。多变量函数中,对每个参数分别求导,得到偏导数。
把所有偏导数组合起来,就是梯度:
梯度方向是函数上升最快的方向,因此梯度下降沿负梯度方向更新参数:
其中
2.6 链式法则
神经网络反向传播主要依赖链式法则。假设:
那么:
深度神经网络可以看作很多函数一层层复合起来。前向传播计算输出,反向传播就是从损失开始,沿着计算图反向应用链式法则。
2.7 概率基础
概率描述不确定性。机器学习里经常把数据、标签、模型输出都看成随机变量。
随机变量通常用大写字母表示,例如
| 记号 | 含义 |
|---|---|
| 离散随机变量 | |
| 连续随机变量在 | |
| 已知 |
离散变量用概率质量函数描述,连续变量用概率密度函数描述。连续变量中,某个点本身的概率通常为 0,更关心区间上的概率。
2.8 联合概率、边缘概率和条件概率
联合概率表示多个事件同时发生的概率:
边缘概率表示只关心其中一个变量。对离散变量,可以把另一个变量求和消掉:
条件概率表示在事件
由条件概率可以得到乘法公式:
也可以写成:
多个变量时,联合概率可以按链式法则展开:
这个思想在概率图模型和序列模型里都会用到。
2.9 贝叶斯公式
贝叶斯公式由条件概率的乘法公式推出:
把两边相等的联合概率整理一下,就得到:
其中:
| 符号 | 名称 | 含义 |
|---|---|---|
| 先验 | 看到证据前对 A 的相信程度 | |
| 似然 | A 成立时观察到 B 的概率 | |
| 后验 | 看到 B 后对 A 的相信程度 | |
| 证据 | 观察到 B 的总体概率 |
在分类问题里,可以把
如果
贝叶斯思想会在朴素贝叶斯、正则化、异常检测、概率图模型和生成模型中反复出现。
2.10 独立性
如果两个事件相互独立,则:
等价地:
含义是:知道
随机变量
条件独立也很重要。如果在给定
朴素贝叶斯中的“朴素”假设,本质上就是在给定类别后,各个特征条件独立。
2.11 期望和方差
期望表示随机变量的平均取值。
离散变量:
连续变量:
方差表示随机变量围绕均值波动的程度:
也可以写成:
标准差是方差的平方根:
期望常用于损失函数和风险最小化,方差常用于描述数据分散程度、噪声大小和模型不确定性。
2.12 协方差和相关系数
协方差描述两个随机变量是否一起变化:
直观理解:
| 协方差 | 含义 |
|---|---|
| 大于 0 | 两个变量倾向于同方向变化 |
| 小于 0 | 两个变量倾向于反方向变化 |
| 接近 0 | 线性相关性弱 |
相关系数把协方差标准化到
其中
协方差矩阵会在多元高斯、PCA 和特征相关性分析中出现。
2.13 常见分布
| 分布 | 典型用途 |
|---|---|
| 伯努利分布 | 二分类标签 |
| 多项分布 | 多分类标签 |
| 高斯分布 | 连续变量、异常检测、贝叶斯模型 |
| 均匀分布 | 随机初始化、采样 |
高斯分布尤其重要。异常检测、多元高斯、贝叶斯优化、VAE 和扩散模型都离不开它。
伯努利分布用于只有两个结果的随机变量:
多项分布可以看作多类别版本,常用于分类标签。
一维高斯分布由均值
其中:
| 参数 | 含义 |
|---|---|
| 均值,决定中心位置 | |
| 方差,决定分布宽窄 |
均匀分布表示在某个范围内各取值同等可能,常用于随机采样或初始化的直观理解。
多元高斯分布把一维高斯推广到向量:
其中
高维高斯有一个反直觉现象:概率密度最大的点仍然在均值附近,但大部分概率质量不集中在均值点附近,而集中在离均值一定距离的薄壳区域。原因是高维空间中,半径稍大的区域体积增长很快;虽然这些位置的密度比均值处低,但可用体积大得多。理解这一点有助于理解高维采样、异常检测和生成模型中的噪声空间。
2.14 贝叶斯学习和正则化
贝叶斯统计把未知参数也看作随机变量,并用概率分布描述对参数的认识。机器学习中常见的参数估计可以写成:
其中
这里
最大似然估计只最大化
如果对参数加入高斯先验:
取负对数后,优化目标中会出现 L2 正则化项。也就是说,从贝叶斯角度看,正则化可以理解为对参数加入先验偏好:模型不仅要拟合数据,还要满足“参数不要过大”这类先验约束。
2.15 概率图模型
概率图模型用图结构表示随机变量之间的依赖关系。图中的节点表示随机变量,边表示变量之间的依赖。它的价值在于把复杂联合分布拆成更容易理解和计算的局部关系。
贝叶斯网络
贝叶斯网络使用有向图表示条件依赖关系。边有方向,通常表示一个变量对另一个变量的直接影响或生成关系。
如果有三个变量
A -> B -> C可以把联合分布分解为:
贝叶斯网络通常要求是有向无环图(DAG)。如果图中存在有向环,变量之间的生成顺序会变得不清楚,联合分布也难以按简单链式结构分解。
马尔可夫随机场
马尔可夫随机场使用无向图表示变量之间的依赖关系。无向边不表示因果方向,而表示两个变量之间存在相互约束或相关关系。
无向图更适合描述没有明确生成方向的场景。例如图像分割中,相邻像素的标签通常相关;社交网络中,用户之间的状态可能相互影响。此时更关心“谁和谁相互依赖”,而不是“谁生成谁”。
有向图和无向图的区别
| 模型 | 图结构 | 边的含义 | 常见用途 |
|---|---|---|---|
| 贝叶斯网络 | 有向图 | 条件依赖或生成方向 | 因果建模、诊断推理 |
| 马尔可夫随机场 | 无向图 | 相互依赖或约束 | 图像建模、空间结构建模 |
二者最直接的区别是边是否有方向。它们都可以处理离散变量或连续变量,不能简单理解为“有向图只处理离散变量,无向图只处理连续变量”。