机器学习的数学基础

2 阅读3分钟

人工智能中的核心数学知识体系

机器学习的本质,是让计算机从数据中学习规律,再用规律预测新数据。如果把机器学习比作“做饭”,模型是“厨具”,算法是“菜谱”,那数据就是“食材”——再好的厨具和菜谱,用了不新鲜、不干净、搭配混乱的食材,也做不出好菜。 今天就用最通俗的语言,把机器学习的核心数据基础讲透,从数据的本质、分类,到预处理的关键步骤、常见坑,新手也能轻松看懂,少走半年弯路。

一、微积分:函数变化的描述者

微积分提供“变化率”与“累积量”的数学语言:
1.导数 → 描述模型如何随参数变化(优化方向)
2.积分 → 描述概率分布的累积行为(期望、归一化)

1. 导数与偏导数

  • 导数定义:函数在某点的变化率,几何意义为切线斜率
  • 偏导数:多元函数中,固定其他变量,仅对一个变量求导
  • 梯度向量:由所有偏导数组成的向量,指向函数增长最快的方向
  • 高阶导数:对导数再次求导,二阶导数与函数凹凸性密切相关

2. 泰勒展开

泰勒公式在一元函数中表示为: f(x)=f(a)+f(a)(xa)+f(a)2!(xa)2+f(a)3!(xa)3++f(n)(a)n!(xa)n+Rn(x)f(x) = f(a) + f'(a)(x-a) + \frac{f''(a)}{2!}(x-a)^2 + \frac{f'''(a)}{3!}(x-a)^3 + \cdots + \frac{f^{(n)}(a)}{n!}(x-a)^n + R_n(x)

多元函数的泰勒展开则是机器学习中梯度下降法、牛顿法等优化算法的理论基础。

3. 极值判定

  • 极值定理:可导函数在极值点处导数为0
3.1 Hessian矩阵

多元函数的二阶偏导数矩阵,用于判断极值性质; 也就是矩阵在驻点(梯度为 0 的点)的正定性(极小值)或负定性(极大值)

Hij=2fxixjH=2f=[2fx122fx1x22fx1xn2fx2x12fx222fx2xn2fxnx12fxnx22fxn2]\mathbf{H}_{ij} = \frac{\partial^2 f}{\partial x_i \partial x_j} \quad \text{即} \quad \mathbf{H} = \nabla^2 f = \begin{bmatrix} \frac{\partial^2 f}{\partial x_1^2} & \frac{\partial^2 f}{\partial x_1 \partial x_2} & \cdots & \frac{\partial^2 f}{\partial x_1 \partial x_n} \\ \frac{\partial^2 f}{\partial x_2 \partial x_1} & \frac{\partial^2 f}{\partial x_2^2} & \cdots & \frac{\partial^2 f}{\partial x_2 \partial x_n} \\ \vdots & \vdots & \ddots & \vdots \\ \frac{\partial^2 f}{\partial x_n \partial x_1} & \frac{\partial^2 f}{\partial x_n \partial x_2} & \cdots & \frac{\partial^2 f}{\partial x_n^2} \end{bmatrix}
3.2.雅可比矩阵(和hessian对比)

雅可比矩阵(Jacobian Matrix) 与 Hessian 矩阵功能完全不同。它是多元函数向量值映射的 “一阶导数”

作用:反向传播的本质就是计算损失函数对各参数的梯度。当计算层与层之间的梯度传递时,每一层的线性变换(Wx+b)和激活函数的导数,都构成了该层的雅可比矩阵

若有一个由m个函数组成、包含n个变量的向量值函数 F:RnRm\mathbf{F}: \mathbb{R}^n \to \mathbb{R}^mF(x)=[f1(x1,,xn)f2(x1,,xn)fm(x1,,xn)]\mathbf{F}(\mathbf{x}) = \begin{bmatrix} f_1(x_1, \dots, x_n) \\ f_2(x_1, \dots, x_n) \\ \vdots \\ f_m(x_1, \dots, x_n) \end{bmatrix}

它的雅可比矩阵是一个 m * n的矩阵,由所有一阶偏导数构成:

J(x)=DF(x)=[f1x1f1xnfmx1fmxn]J(\mathbf{x}) = D\mathbf{F}(\mathbf{x}) = \begin{bmatrix} \frac{\partial f_1}{\partial x_1} & \cdots & \frac{\partial f_1}{\partial x_n} \\ \vdots & \ddots & \vdots \\ \frac{\partial f_m}{\partial x_1} & \cdots & \frac{\partial f_m}{\partial x_n} \end{bmatrix}

对比维度雅可比矩阵(Jacobian)Hessian矩阵
数学本质向量函数一阶导:Jij=Fi/xj\mathbf{J}_{ij} = \partial F_i / \partial x_j标量函数二阶导:Hij=2f/xixj\mathbf{H}_{ij} = \partial^2 f / \partial x_i \partial x_j
维度m×nm \times n(输出维度 × 输入维度)n×nn \times n(参数维度,对称)
核心角色输入→输出的敏感度映射损失函数的局部曲率描述
与梯度关系标量函数的雅可比 = 梯度转置 (f)(\nabla f)^\topHessian = 梯度的雅可比 H=Jf\mathbf{H} = \mathbf{J}_{\nabla f}
一句话总结

雅可比回答 “输入微小变化如何影响所有输出?” —— 服务于生成、解释、变换
Hessian回答 “损失函数在当前点如何弯曲?” —— 服务于优化、分析、不确定性量化

3.3.拉格朗日乘数法

求解带等式约束的极值问题
拉格朗日乘数法(含KKT条件)是求解带约束极值问题的数学基石,在机器学习中将“难解约束问题”转化为“可解无约束/对偶问题”

先解释「拉格朗日函数」

给定带约束的优化问题

minxf(x)s.t.{gi(x)0hj(x)=0\min_x f(x) \quad \text{s.t.}\quad \begin{cases} g_i(x) \le 0 \\ h_j(x) = 0 \end{cases}

构造拉格朗日函数 L(x,λ,μ)=f(x)+λigi(x)+μjhj(x)L(x,\lambda,\mu) = f(x) + \sum\lambda_i g_i(x) + \sum\mu_j h_j(x)

3.3.1.本质

把约束优化变成无约束求导解方程
乘数法 = 求驻点,直接求 x。

目标:找极值点 x

做法:直接对 x, λ, μ 求导 = 0,解方程组:

xL=0,hj(x)=0,gi(x)0,λi0,λigi(x)=0\nabla_x L = 0,\quad h_j(x)=0,\quad g_i(x)\le0,\lambda_i\ge0,\lambda_i g_i(x)=0

适用:

  • 等式约束最常用
  • 不等式约束 → 变成 KKT 条件
  • 变量 n 不大时好用
3.3.2.拉格朗日对偶(对比)

把原问题换成更容易解的对偶问题
对偶 = 换一个优化问题,不一定直接求 x。

已拉格朗日函数为基础

  • 步骤:
  1. 固定 λ,μ,对 x 最小化 L: D(λ,μ)=minxL(x,λ,μ)D(\lambda,\mu) = \min_x L(x,\lambda,\mu)
  2. 再对 λ≥0,μ 最大化 D: maxλ0,μ  D(λ,μ)\max_{\lambda\ge0,\mu}\; D(\lambda,\mu) 这就是对偶问题
  • 本质:交换优化顺序: 1.原:先满足约束,再最小化 f(x) 2.对偶:先最小化 L,再最大化对偶函数

二、线性代数:数据结构的数学表达

线性代数是机器学习中使用最广泛的数学工具,几乎所有算法都涉及向量、矩阵或张量的运算。

1. 基础概念

  • 向量:一维数组,表示空间中的点或方向
  • 矩阵:二维数组,可视为线性变换的表示
  • 张量:多维数组,用于表示高维数据(如图像、视频)

2. 矩阵运算

  • 基本运算:加法、数乘、乘法、转置
  • 逆矩阵:满足AB=IAB=I的矩阵BB,用于解线性方程组
  • 行列式:将矩阵映射为标量,反映线性变换的缩放因子

3. 高级概念

3,1. 特征值与特征向量

用于PCA等降维 对于方阵 AA,如果存在一个数 λ\lambda 和非零向量 x\mathbf{x},满足: Ax=λxA\mathbf{x} = \lambda \mathbf{x} 就称:

  • x\mathbf{x}AA 的特征向量
  • λ\lambda 是对应的特征值
3,2. 奇异值分解(SVD)

SVD = 给任意矩阵做 “分解”
广泛应用于数据压缩、推荐系统

任意矩阵 Am×nA_{m\times n} 都可以分解成: A=UΣVTA = U\Sigma V^T

  • UU:左奇异向量(正交矩阵)
  • Σ\Sigma:奇异值排成的对角矩阵(非负、从大到小)
  • VV:右奇异向量(正交矩阵)

三、概率论:不确定性建模的工具

当把机器学习中的样本数据视为随机变量时,概率论提供了强大的建模框架

1. 基础概念

  • 随机事件与概率:描述事件发生的可能性
1.1.条件概率

在事件 B 已经发生的前提下,事件 A 发生的概率 P(AB)=P(AB)P(B)P(A|B) = \frac{P(AB)}{P(B)}

  • P(AB)P(A|B):在 B 条件下 A 的概率
  • P(AB)P(AB):A 和 B 同时发生的概率
  • P(B)P(B):B 发生的概率
1.2.全概率公式:

如果 B1,B2,...,BnB_1,B_2,...,B_n 是样本空间的一个划分: P(A)=P(ABi)P(Bi)P(A) = \sum P(A|B_i)P(B_i) 作用:把“不知道怎么算的 P(A)”拆成好几段好算的。

1.3.贝叶斯公式:

贝叶斯 = 用结果反推原因 P(AB)=P(BA)P(A)P(B)P(A|B) = \frac{P(B|A)P(A)}{P(B)}

  • P(B)P(B):先验概率(没看到证据前的猜测)
  • P(AB)P(A|B):似然(在这个原因下,出现这个结果的概率)
  • P(BA)P(B|A):后验概率(看到证据后,修正后的概率)

2. 随机变量

  • 离散型随机变量:取值有限或可数,如抛硬币结果
  • 连续型随机变量:取值无限不可数,由概率密度函数描述
  • 数学期望与方差:描述随机变量的中心趋势和离散程度
概念数学表达机器学习含义
数学期望 E[X]\mathbb{E}[X]xp(x)dx\int x p(x)dx(连续)xip(xi)\sum x_i p(x_i)(离散)“长期平均行为”:• 真实风险(期望损失)• 模型预测的平均表现• 策略的期望回报
方差 Var(X)\text{Var}(X)\mathbb{E}[(X-\mathbb{E}[X])^2]$$=\mathbb{E}[X^2]-(\mathbb{E}[X])^2“波动性/不确定性度量”:• 模型对数据扰动的敏感度• 预测结果的离散程度• 特征信息的集中程度

3. 常用分布与估计

在机器学习中,朴素贝叶斯分类器、高斯混合模型等算法直接基于概率论构建;而深度学习中的正则化、Dropout等技术也与概率解释密切相关

3.1.概率分布
3.1.1. 伯努利分布(Bernoulli Distribution)
  • 定义:单次二元试验结果(0/1, 失败/成功)的离散分布
  • PMF(离散)P(X=k)=pk(1p)1k, k{0,1}P(X=k) = p^k (1-p)^{1-k},\ k \in \{0,1\}
  • 参数:成功概率 p[0,1]p \in [0,1]
  • 期望/方差E[X]=p\mathbb{E}[X]=pVar(X)=p(1p)\text{Var}(X)=p(1-p)
  • ML应用
    ✅ 二分类标签建模(逻辑回归输出解释为 P(y=1x)P(y=1|x)
    ✅ 伯努利朴素贝叶斯(文本二值特征:词出现/未出现)
    ✅ Dropout:神经元保留/丢弃服从 Bernoulli(p)\text{Bernoulli}(p)
    ✅ VAE处理二值数据(如二值化MNIST)的输出层
3.1.2. 均匀分布(Uniform Distribution)
  • 定义:指定区间内所有结果等概率
  • PDF(连续)f(x)=1ba, axbf(x) = \frac{1}{b-a},\ a \leq x \leq b
  • 参数:区间 [a,b][a, b]
  • 期望/方差E[X]=a+b2\mathbb{E}[X]=\frac{a+b}{2}Var(X)=(ba)212\text{Var}(X)=\frac{(b-a)^2}{12}
  • ML应用
    权重初始化:Xavier初始化(均匀版)U(6nin+nout,6nin+nout)U\left(-\sqrt{\frac{6}{n_{in}+n_{out}}}, \sqrt{\frac{6}{n_{in}+n_{out}}}\right)
    潜在空间采样:GAN/VAE中从 U[0,1]U[0,1]U[1,1]U[-1,1] 采样噪声
    超参数搜索:随机搜索在区间内均匀采样(学习率、dropout率)
    数据增强:随机裁剪位置、旋转角度的均匀采样
3.1.3. 正态分布(Normal / Gaussian Distribution)
  • 定义:钟形连续分布,中心极限定理的核心
  • PDFf(x)=1σ2πexp((xμ)22σ2)f(x) = \frac{1}{\sigma\sqrt{2\pi}} \exp\left(-\frac{(x-\mu)^2}{2\sigma^2}\right)
  • 参数:均值 μ\mu,标准差 σ>0\sigma > 0
  • 期望/方差E[X]=μ\mathbb{E}[X]=\muVar(X)=σ2\text{Var}(X)=\sigma^2
  • ML应用
    损失函数根源:假设误差 ϵN(0,σ2)\epsilon \sim \mathcal{N}(0,\sigma^2) → MSE损失
    高斯朴素贝叶斯:连续特征服从正态分布
    贝叶斯先验:L2正则化 \Leftrightarrow 权重高斯先验(MAP估计)
    变分推断:VAE中潜在变量 zN(0,I)z \sim \mathcal{N}(0,I)
    权重初始化:He初始化 N(0,2/nin)\mathcal{N}(0, \sqrt{2/n_{in}})
    异常检测:低概率密度区域判定为异常

3.2.协方差矩阵

描述多维随机变量的线性相关性
协方差矩阵是机器学习中刻画多变量之间相关性的核心工具,本质是“将多个变量两两之间的协方差,按规律排列成的矩阵”.协方差描述“两个变量的线性相关程度”,而协方差矩阵则是对多变量的“波动+相关性”进行整体刻画,广泛应用于PCA、特征降维、模型正则化等场景。

  • 对角线:各维度自身的波动强度(方差)

  • 非对角线:任意两维度间的线性协同变化关系(协方差)

  • 协方差公式 Cov(X,Y)=E[(XE[X])(YE[Y])]=E[XY]E[X]E[Y]Cov(X,Y) = E[(X-E[X])(Y-E[Y])] = E[XY]-E[X]E[Y]

  • 协方差矩阵 设随机向量 X=(X1,X2,,Xn)TX=(X_1,X_2,\dots,X_n)^T,期望向量 μ=E[X]\mu=E[X]

Σ=E[(Xμ)(Xμ)T]\Sigma = E\left[(X-\mu)(X-\mu)^T\right]

展开:

Σ=[Var(X1)Cov(X1,X2)Cov(X1,Xn)Cov(X2,X1)Var(X2)Cov(X2,Xn)Cov(Xn,X1)Cov(Xn,X2)Var(Xn)]\Sigma= \begin{bmatrix} Var(X_1)&Cov(X_1,X_2)&\dots&Cov(X_1,X_n)\\ Cov(X_2,X_1)&Var(X_2)&\dots&Cov(X_2,X_n)\\ \vdots&\vdots&\ddots&\vdots\\ Cov(X_n,X_1)&Cov(X_n,X_2)&\dots&Var(X_n) \end{bmatrix}
3.3.最大似然估计

基于样本数据估计概率分布参数的方法

给定样本集 X=x1,x2,...,xnX = {x_1, x_2, ..., x_n},假设样本独立同分布,且服从某一参数化分布 P(x;θ)P(x;\theta)θ\theta 为待估计参数),最大似然估计是找到使当前样本集出现概率最大的参数 θ^\hat{\theta},即使似然函数最大化的参数估计方法。

  1. 似然函数(样本联合概率,因样本独立同分布,乘积形式): L(θ)=P(X;θ)=i=1nP(xi;θ)L(\theta) = P(X;\theta) = \prod_{i=1}^n P(x_i;\theta)

  2. 对数似然函数(简化计算,将乘积转为求和):

lnL(θ)=i=1nlnP(xi;θ)\ln L(\theta) = \sum_{i=1}^n \ln P(x_i;\theta)

  1. 估计准则(最大化对数似然,求导令其为0):

θ^=argmaxθlnL(θ)lnL(θ)θ=0\hat{\theta} = \arg\max_{\theta} \ln L(\theta) \quad \Rightarrow \quad \frac{\partial \ln L(\theta)}{\partial \theta} = 0

3.3.最大似然估计VS贝叶斯估计
维度最大似然估计(MLE)贝叶斯估计
参数观固定常数随机变量(有先验 P(θ)P(\theta)
目标argmaxθP(Xθ)\arg\max_\theta P(\mathbf{X} \mid \theta)argmaxθP(θX)P(Xθ)P(θ)\arg\max_\theta P(\theta \mid \mathbf{X}) \propto P(\mathbf{X} \mid \theta)P(\theta)
输出点估计 θ^\hat{\theta}后验分布 P(θX)P(\theta \mid \mathbf{X})
正则化需显式添加(L1/L2)先验隐式正则化(高斯先验 ⇔ L2)
小样本易过拟合先验提供稳定性

四、最优化:机器学习的核心问题

几乎所有机器学习算法本质上都是在解决最优化问题:寻找使目标函数最优的参数。

1. 基本概念

  • 最优化问题minxRnf(x)\min_{x\in R^n} f(x),可能附带约束条件
  • 局部极小值与全局极小值:局部最优vs全局最优

2. 常用算法

  • 梯度下降法xk+1=xkηf(xk)x_{k+1} = x_k - \eta \nabla f(x_k)
  • 牛顿法xk+1=xkH1gx_{k+1} = x_k - H^{-1}g,利用二阶信息加速收敛
  • 坐标下降法:依次优化单个变量,其他变量固定
2.1 梯度下降法VS牛顿法

梯度下降法只保留泰勒展开的一阶项,而牛顿法保留二阶项,这使得牛顿法收敛更快,但计算成本更高

方法泰勒展开阶数迭代公式几何解释
梯度下降法一阶xk+1=xkηf(xk)\mathbf{x}_{k+1} = \mathbf{x}_k - \eta \nabla f(\mathbf{x}_k)沿最陡下降方向(负梯度)走固定步长
牛顿法二阶xk+1=xk[H(xk)]1f(xk)\mathbf{x}_{k+1} = \mathbf{x}_k - [\mathbf{H}(\mathbf{x}_k)]^{-1} \nabla f(\mathbf{x}_k)局部二次曲面近似目标函数,直接跳至该曲面极小点

梯度下降法和牛顿法,都是机器学习中核心的无约束优化算法,核心作用是求解目标函数 f(x) 的最小值(若需最大化,可转化为求解 −f(x) 的最小值),本质都是通过 “迭代更新参数” 的方式,逐步逼近目标函数的最小值点,为模型训练提供参数优化方案

2.2.梯度下降法

基于目标函数的一阶导数(梯度) 工作,核心是 “沿着负梯度方向(最陡下降方向),结合人工设置的学习率控制步长,逐步迭代调整参数

2.3.牛顿法

基于目标函数的一阶导数(梯度)和二阶导数(Hessian 矩阵) 工作,核心是 “用二次函数逼近原函数,直接求解二次函数的最小值,快速迭代逼近原函数最小值点”

3. 凸优化

当优化问题为凸时,任何局部最优解 = 全局最优解,且梯度为零点即为最优解。 这为算法收敛性、解的唯一性提供严格数学保证——避免在非凸问题中陷入局部极小值或鞍点的困境

  • 凸集:集合中任意两点的连线仍在集合内
  • 凸函数:图像向上凸(碗形),满足f(θx+(1θ)y)θf(x)+(1θ)f(y)f(\theta x+(1-\theta)y) \leq \theta f(x)+(1-\theta)f(y)
  • 凸优化性质:局部最优解即全局最优解,避免了局部极小值问题
  • 算法:梯度下降(一阶凸优化)、拟牛顿法(二阶凸优化)

4. 拉格朗日对偶与KKT条件

  • 拉格朗日函数:将约束优化问题转化为无约束问题
  • 对偶问题:有时比原问题更容易求解
  • KKT条件:带约束优化问题的必要条件