Skip to content

第 2 章 数学基础

本章整理机器学习中反复使用的数学工具,包括向量和矩阵、矩阵乘法、范数、梯度、链式法则、概率、贝叶斯公式、常见分布和概率图模型。学习重点放在符号含义、维度检查和公式适用条件上。

2.1 标量、向量、矩阵和张量

标量是一个数,向量是一列或一行数,矩阵是二维数组,张量是更高维的数组。

在机器学习里,一个样本通常可以写成向量:

x=[x1x2xn]

如果有 m 个样本,每个样本有 n 个特征,可以组成数据矩阵:

XRm×n

其中 m 是样本数,n 是特征数。深度学习中图像常用四维张量表示:

text
batch_size x channels x height x width

维度检查是使用矩阵公式时的基本步骤。实现线性模型和神经网络时,很多报错都来自矩阵形状不匹配。

2.2 矩阵乘法和维度检查

如果:

ARm×n,BRn×k

那么:

ABRm×k

中间的 n 必须相同。线性模型常写成:

hθ(x)=θTx

如果 xRn+1,那么 θ 也应该是 n+1 维。这里多出来的 1 通常来自偏置特征 x0=1

2.3 转置、逆矩阵和单位矩阵

矩阵转置会交换行和列:

(AT)ij=Aji

单位矩阵 I 在矩阵乘法中的作用类似数字里的 1。对维度匹配的矩阵 A,有:

AI=IA=A

逆矩阵满足:

A1A=AA1=I

但不是所有矩阵都有逆。只有方阵且满秩时才可逆。在机器学习里,如果特征冗余或线性相关,就可能导致矩阵不可逆或数值不稳定。

2.4 范数

范数用来衡量向量大小。正则化里最常见的是 L1 和 L2。

L1 范数:

θ1=j=1n|θj|

L2 范数:

θ2=j=1nθj2

机器学习中的 L2 正则化通常使用 L2 范数的平方:

θ22=j=1nθj2

L1 正则化更容易让部分参数变成 0,因此可用于特征选择;L2 正则化更倾向于让参数整体变小,因此常用于权重衰减。

2.5 导数、偏导数和梯度

导数描述函数在某一点变化得有多快。多变量函数中,对每个参数分别求导,得到偏导数。

把所有偏导数组合起来,就是梯度:

θJ(θ)=[Jθ0Jθ1Jθn]

梯度方向是函数上升最快的方向,因此梯度下降沿负梯度方向更新参数:

θθαθJ(θ)

其中 α 是学习率,控制每次参数更新的步长。

2.6 链式法则

神经网络反向传播主要依赖链式法则。假设:

y=f(u),u=g(x)

那么:

dydx=dydududx

深度神经网络可以看作很多函数一层层复合起来。前向传播计算输出,反向传播就是从损失开始,沿着计算图反向应用链式法则。

2.7 概率基础

概率描述不确定性。机器学习里经常把数据、标签、模型输出都看成随机变量。

随机变量通常用大写字母表示,例如 XY;随机变量的一个具体取值用小写字母表示,例如 xy

记号含义
P(X=x)离散随机变量 X 取到 x 的概率
p(x)连续随机变量在 x 附近的概率密度
P(Y=yX=x)已知 X=x 时,Y=y 的条件概率

离散变量用概率质量函数描述,连续变量用概率密度函数描述。连续变量中,某个点本身的概率通常为 0,更关心区间上的概率。

2.8 联合概率、边缘概率和条件概率

联合概率表示多个事件同时发生的概率:

P(A,B)

边缘概率表示只关心其中一个变量。对离散变量,可以把另一个变量求和消掉:

P(A)=BP(A,B)

条件概率表示在事件 B 已经发生的条件下,事件 A 发生的概率:

P(AB)=P(A,B)P(B)

由条件概率可以得到乘法公式:

P(A,B)=P(AB)P(B)

也可以写成:

P(A,B)=P(BA)P(A)

多个变量时,联合概率可以按链式法则展开:

P(x1,x2,,xn)=P(x1)P(x2x1)P(xnx1,,xn1)

这个思想在概率图模型和序列模型里都会用到。

2.9 贝叶斯公式

贝叶斯公式由条件概率的乘法公式推出:

P(A,B)=P(AB)P(B)=P(BA)P(A)

把两边相等的联合概率整理一下,就得到:

P(AB)=P(BA)P(A)P(B)

其中:

符号名称含义
P(A)先验看到证据前对 A 的相信程度
P(BA)似然A 成立时观察到 B 的概率
P(AB)后验看到 B 后对 A 的相信程度
P(B)证据观察到 B 的总体概率

在分类问题里,可以把 A 理解成某个类别,把 B 理解成观察到的特征。贝叶斯公式表达的是:先有一个对类别的初始判断 P(A),再用特征出现的可能性 P(BA) 修正这个判断,最后得到看到特征后的类别概率 P(AB)

如果 B 可能由多个类别产生,分母可以写成全概率形式:

P(B)=kP(BAk)P(Ak)

贝叶斯思想会在朴素贝叶斯、正则化、异常检测、概率图模型和生成模型中反复出现。

2.10 独立性

如果两个事件相互独立,则:

P(A,B)=P(A)P(B)

等价地:

P(AB)=P(A)

含义是:知道 B 是否发生,不会改变对 A 的判断。

随机变量 XY 独立时:

P(X,Y)=P(X)P(Y)

条件独立也很重要。如果在给定 Z 的条件下,XY 独立,则:

P(X,YZ)=P(XZ)P(YZ)

朴素贝叶斯中的“朴素”假设,本质上就是在给定类别后,各个特征条件独立。

2.11 期望和方差

期望表示随机变量的平均取值。

离散变量:

E[X]=xxP(X=x)

连续变量:

E[X]=xp(x)dx

方差表示随机变量围绕均值波动的程度:

Var(X)=E[(XE[X])2]

也可以写成:

Var(X)=E[X2]E[X]2

标准差是方差的平方根:

σ=Var(X)

期望常用于损失函数和风险最小化,方差常用于描述数据分散程度、噪声大小和模型不确定性。

2.12 协方差和相关系数

协方差描述两个随机变量是否一起变化:

Cov(X,Y)=E[(XE[X])(YE[Y])]

直观理解:

协方差含义
大于 0两个变量倾向于同方向变化
小于 0两个变量倾向于反方向变化
接近 0线性相关性弱

相关系数把协方差标准化到 [1,1]

ρX,Y=Cov(X,Y)σXσY

其中 ρX,Y 是随机变量 XY 的相关系数,σXσY 分别是它们的标准差。

协方差矩阵会在多元高斯、PCA 和特征相关性分析中出现。

2.13 常见分布

分布典型用途
伯努利分布二分类标签
多项分布多分类标签
高斯分布连续变量、异常检测、贝叶斯模型
均匀分布随机初始化、采样

高斯分布尤其重要。异常检测、多元高斯、贝叶斯优化、VAE 和扩散模型都离不开它。

伯努利分布用于只有两个结果的随机变量:

P(X=1)=p,P(X=0)=1p

多项分布可以看作多类别版本,常用于分类标签。

一维高斯分布由均值 μ 和方差 σ2 决定:

p(x)=12πσexp((xμ)22σ2)

其中:

参数含义
μ均值,决定中心位置
σ2方差,决定分布宽窄

均匀分布表示在某个范围内各取值同等可能,常用于随机采样或初始化的直观理解。

多元高斯分布把一维高斯推广到向量:

xN(μ,Σ)

其中 μ 是均值向量,Σ 是协方差矩阵。均值决定分布中心,协方差矩阵决定不同方向上的尺度和相关性。如果 Σ 是对角矩阵,各维之间线性相关性弱;如果非对角元素较大,不同维度之间存在明显相关关系。

高维高斯有一个反直觉现象:概率密度最大的点仍然在均值附近,但大部分概率质量不集中在均值点附近,而集中在离均值一定距离的薄壳区域。原因是高维空间中,半径稍大的区域体积增长很快;虽然这些位置的密度比均值处低,但可用体积大得多。理解这一点有助于理解高维采样、异常检测和生成模型中的噪声空间。

2.14 贝叶斯学习和正则化

贝叶斯统计把未知参数也看作随机变量,并用概率分布描述对参数的认识。机器学习中常见的参数估计可以写成:

θ\*=argmaxθp(θ|D)

其中 D 是训练数据,θ 是模型参数。根据贝叶斯公式:

p(θ|D)p(D|θ)p(θ)

这里 p(D|θ) 是似然,表示给定参数时观察到数据的概率;p(θ) 是先验,表示训练前对参数的偏好;p(θ|D) 是后验,表示看完数据后对参数的认识。

最大似然估计只最大化 p(D|θ)。最大后验估计同时考虑似然和先验:

θ\*=argmaxθp(D|θ)p(θ)

如果对参数加入高斯先验:

p(θ)exp(λθ22)

取负对数后,优化目标中会出现 L2 正则化项。也就是说,从贝叶斯角度看,正则化可以理解为对参数加入先验偏好:模型不仅要拟合数据,还要满足“参数不要过大”这类先验约束。

2.15 概率图模型

概率图模型用图结构表示随机变量之间的依赖关系。图中的节点表示随机变量,边表示变量之间的依赖。它的价值在于把复杂联合分布拆成更容易理解和计算的局部关系。

贝叶斯网络

贝叶斯网络使用有向图表示条件依赖关系。边有方向,通常表示一个变量对另一个变量的直接影响或生成关系。

如果有三个变量 ABC,并且图结构为:

text
A -> B -> C

可以把联合分布分解为:

P(A,B,C)=P(A)P(B|A)P(C|B)

贝叶斯网络通常要求是有向无环图(DAG)。如果图中存在有向环,变量之间的生成顺序会变得不清楚,联合分布也难以按简单链式结构分解。

马尔可夫随机场

马尔可夫随机场使用无向图表示变量之间的依赖关系。无向边不表示因果方向,而表示两个变量之间存在相互约束或相关关系。

无向图更适合描述没有明确生成方向的场景。例如图像分割中,相邻像素的标签通常相关;社交网络中,用户之间的状态可能相互影响。此时更关心“谁和谁相互依赖”,而不是“谁生成谁”。

有向图和无向图的区别

模型图结构边的含义常见用途
贝叶斯网络有向图条件依赖或生成方向因果建模、诊断推理
马尔可夫随机场无向图相互依赖或约束图像建模、空间结构建模

二者最直接的区别是边是否有方向。它们都可以处理离散变量或连续变量,不能简单理解为“有向图只处理离散变量,无向图只处理连续变量”。

Powered by VitePress