Skip to content

Math Foundation for AI

IMPORTANT

在你学习本wiki的数学基础部分的时候,强烈推荐先阅读本章内容。

这一部分会涉及什么

  • 线性代数
  • 微积分
  • 概率论与数理统计
  • 信息论

资源推荐

这一部分的核心是什么

Idea

从模型视角出发,强目的导向地重新审视数学知识。

这一部分并非对教材中的数学知识的简单罗列,也并不是按照线性的顺序讲解学习AI所需要的数学内容,而是希望从我们现实应用或者科研中的模型出发,分析每一部分需要用到哪些数学知识,从而针对性的学习。或者反过来,当我们说这些数学内容对AI很重要时,它们到底出现在模型的哪里?

  • 对于初学者:如果你不知道上述问题的答案,那么你可能会面临两个问题:

    1. 你觉得这些东西是繁杂的理论,于是你决定先开始科研,在实践中边做边学。结果发现论文中的方法你根本看不懂,你也无法对于现有模型提出自己的想法。但是你不知道自己卡在了哪里,你不知道自己是因为不知道什么数学知识,而不理解模型架构或者背后具体机制以及思想的。
    2. 你觉得这些东西是十分重要的,是后面做科研的基础,于是你决定先修读完相关课程再开始科研。但事实上,你在观看大而全的教程之后,并不知道自己学的内容有什么用,这样无目的导向的学习,会导致即便你学会了,也不能真正的灵活应用。反而因此在理论学习上耗费了大量的时间,没有积累足够的实践经验。
  • 对于已经完成这些内容学习的人:如果你在大学修读完对应课程之后,没有思考过上述问题,那么你可能会面临:

    1. 在后续的研究中,发现某些知识自己学过,但是已经忘记了,想回头复习,却返现数学知识这么多,无从下手,想全部重新学一遍又觉得不切实际。迫切希望切中要害,快速找出自己需要复习的内容。

那么,出现以上问题的统一原因是什么?答案是我们没有建立起知识与知识之前的 强连通 的关系。因此本部分旨在建立数学知识与模型总每个部分的关系,让读者能够明白模型中每个部分都需要什么样的数学工具来描述、推导、训练和分析。

因此本章接下来的部分旨在做两件事

  1. 梳理清楚模型的不同部分分别需要用到什么样的数学知识.
  2. 反过来:不同的数学知识到底出现在模型的哪里.

1. 一个通用的 AI Model System

为了统一后续内容,我们先把一个 AI 模型抽象成一个通用系统。后面讨论线性代数、微积分、概率论、信息论和优化时,都默认围绕这个系统展开。

1.1 模型构成以及训练流程

如果只看主线,一个模型训练过程可以写成:

AI Model System


1.2 Dataset

最常见的监督学习数据集可以写成:

D={(xi,yi)}i=1n

其中:

  • xi 是输入;
  • yi 是目标;
  • n 是样本数量。

不同任务中 D 的例子:

  • 语言模型 / Transformer 预训练:D={(x1(i),x2(i),,xLi(i))}i=1n
  • 图像分类:D={(Ii,yi)}i=1n
  • 目标检测:D={(Ii,{(bij,cij)}j=1mi)}i=1n
  • 语义分割:D={(Ii,yi)}i=1n,yi{1,,K}H×W
  • 扩散模型:D={xi}i=1n
  • 多模态图文任务:D={(Ii,Ti)}i=1n

1.3 Representation

原始输入通常不能直接进入模型,需要先被表示成向量、矩阵或张量:

zi=ϕ(xi)

其中:

  • ϕ 是表示函数,例如 tokenizer、embedding layer、patch embedding、feature extractor;
  • ziRdRL×d 或更高阶张量;
  • zi 是模型真正处理的数学对象。

在语言模型中,一个序列可以表示为:

X=[e1,e2,,eL]RL×d

这里 L 是序列长度,d 是 embedding dimension。

对于图像模型,一张图像可以被表示成 patch 序列:

X=[p1,p2,,pN]RN×d

这就是 ViT 中 patch embedding 的基本形式。


1.4 Parameterized Model

模型可以看成一个带参数的函数:

fθ:ZO

其中:

  • θ 是模型参数,例如权重矩阵、bias、embedding table、normalization 参数;
  • Z 是表示空间;
  • O 是输出空间,例如 logits、hidden states、actions、生成样本。

对于神经网络,模型通常是多层函数的复合:

fθ(z)=fθm(m)fθm1(m1)fθ1(1)(z)

这也是反向传播和链式法则进入模型训练的地方。


1.5 Prediction Distribution

很多 AI 模型不只输出一个确定答案,而是输出一个概率分布:

pθ(yx)

例如:

  • 分类模型:pθ(yx)
  • 语言模型:pθ(xtx<t)
  • 生成模型:pθ(x)pθ(xc)

如果模型先输出 logits:

s=fθ(z)RK

则分类概率通常由 softmax 给出:

pθ(y=kx)=exp(sk)j=1Kexp(sj)

1.6 Loss Function

训练需要一个目标函数来衡量模型预测和真实目标之间的差异:

L(θ)=1ni=1n(fθ(ϕ(xi)),yi)

1.7 Optimization

训练模型就是寻找一组更好的参数:

θ=argminθL(θ)

所谓的更好往往指最小化 loss function L,因此训练过程可以看成一个优化问题。

为了真正优化参数,我们往往需要先计算梯度。反向传播(Backpropagation)就是高效计算 θL 的过程:先做前向计算得到 loss,再按计算图从后往前用链式法则传递梯度。

若模型写成复合函数

fθ=f(m)f(1)

则反向传播本质是在逐层计算局部导数并相乘:

Lθl=Lhlhlθl

得到梯度后,优化器执行参数更新,例如梯度下降:

θt+1=θtηθL(θt)

因此可以把训练主线概括为:前向计算 loss 反向传播求梯度 参数更新。

2. 从 Model System 看数学工具

上面的系统可以压缩成一条主线:

text
Data
→ Representation
→ Parameterized Function
→ Prediction Distribution
→ Loss
→ Gradient
→ Optimization
→ Trained Model

每一段都对应一类数学工具。

模型中的位置核心问题需要的数学工具
Data / Representation输入、参数、hidden state 如何表示?Linear Algebra, Tensor
Parameterized Function模型如何被写成函数复合?Calculus, Matrix Calculus
Prediction Distribution输出如何表示为概率?Probability
Loss Function预测和真实目标之间的差异如何度量?Information Theory, Statistics
Gradientloss 如何随参数变化?Calculus, Matrix Calculus
Optimization参数如何被更新?Optimization
Large-scale Computation训练如何保持稳定和高效?Numerical Methods, Numerical Linear Algebra
Structuretoken、图像 patch、节点、关系如何组织?Graph Theory, Geometry

3. 数学工具如何进入模型

Linear Algebra:表示和变换

线性代数回答:

模型中的对象如何被表示和变换?

模型的计算本质就是矩阵乘法和张量运算,因此线性代数是这一切的基础。

例如:

  • xϕz
  • h(l)=σ(W(l)h(l1)+b(l))
  • attention 中的 Q=XWQK=XWKV=XWV
  • LoRA低秩更新:ΔW=BA

Calculus / Matrix Calculus:变化和梯度

微积分回答:

模型输出和 loss 如何随着参数变化?

它对应模型系统中的:

  • s=fθ(z)
  • L(θ)=(s,y)
  • θL(θ)

相关连接:

  • partial derivative 描述多参数变化;
  • gradient 给出 loss 对参数的更新方向;
  • chain rule 支撑 backpropagation;
  • Jacobian / Hessian 用来分析多输出函数、曲率和 loss landscape;

Probability:不确定性建模

概率论回答:

模型如何表达不确定性?

它对应模型系统中的:

  • s=fθ(z)
  • pθ(yx)=softmax(s)

典型连接:

  • 分类模型输出类别分布;
  • 语言模型输出 next-token distribution;
  • 生成模型学习数据分布;
  • Bayesian 方法用 posterior 描述参数或预测的不确定性。

Statistics:从样本估计规律

统计学回答:

如何从有限数据中估计模型,并判断它是否可靠?

它对应模型系统中的:

  • D={(xi,yi)}i=1n
  • θ^MLE=argmaxθi=1npθ(yixi)
  • E(x,y)Dtrain[]E(x,y)Dtest[]

典型连接:

  • MLE / MAP 是参数估计方法;
  • bias-variance tradeoff 解释欠拟合和过拟合;
  • train / validation / test 用于模型选择;
  • confidence interval、hypothesis testing、ablation study 用于实验可信度分析。

Information Theory:分布差异和 loss

信息论回答:

如何度量预测分布和目标分布之间的差异?

它对应模型系统中的:

  • pθ(yx)
  • LCE=k=1Kyklogpθ(y=kx)

典型连接:

  • cross entropy 是分类和语言模型最常见的 loss;
  • KL divergence 用于 VAE、distillation、RLHF / DPO 等分布匹配问题;
  • entropy 描述预测分布的不确定性;
  • perplexity 是语言模型中 cross entropy 的常见评估形式。

Optimization:训练模型

优化理论回答:

给定 loss,参数如何被训练出来?

它对应模型系统中的:

  • θ=argminθL(θ)
  • gt=θL(θt)
  • θt+1=θtηgt

典型连接:

  • gradient descent 是最基本的训练形式;
  • SGD / mini-batch SGD 连接数据采样和参数更新;
  • Adam / AdamW 是深度学习和大模型训练中的常用 optimizer;
  • non-convex optimization 用来理解深度网络的 loss landscape。

以知识图谱方式组织 AI 学习路径。