跳到主要内容

附录A:数学基础速查

本附录为速查手册风格,面向有一定编程基础但需要复习数学的读者。每个概念配有公式和一句话直觉解释。


A.1 线性代数

向量(Vector)

v=[v1v2vn]Rn\mathbf{v} = \begin{bmatrix} v_1 \\ v_2 \\ \vdots \\ v_n \end{bmatrix} \in \mathbb{R}^n

向量是有方向的数组,在 LLM 中用于表示 token embedding——每个词对应一个高维向量。

点积(Dot Product)

uv=i=1nuivi=uvcosθ\mathbf{u} \cdot \mathbf{v} = \sum_{i=1}^{n} u_i v_i = \|\mathbf{u}\| \|\mathbf{v}\| \cos\theta

点积衡量两个向量的相似程度;cosθ\cos\theta 越接近 1,方向越一致。Attention 机制中 QKQ K^\top 本质就是大批量点积。

矩阵乘法(Matrix Multiplication)

C=AB,Cij=kAikBkjC = AB, \quad C_{ij} = \sum_k A_{ik} B_{kj}

ARm×kA \in \mathbb{R}^{m \times k}BRk×nB \in \mathbb{R}^{k \times n},结果 CRm×nC \in \mathbb{R}^{m \times n}。线性变换的组合等于矩阵相乘。

转置(Transpose)

(AB)=BA(AB)^\top = B^\top A^\top

行列互换;Attention 公式中 KK^\top 把 key 矩阵转置以便与 query 做矩阵乘法。

逆矩阵(Inverse Matrix)

AA1=I,仅方阵且行列式非零时存在AA^{-1} = I, \quad \text{仅方阵且行列式非零时存在}

逆矩阵用于"撤销"线性变换;深度学习中很少直接求逆,通常用梯度下降代替。

特征值与特征向量(Eigenvalue & Eigenvector)

Av=λvA\mathbf{v} = \lambda \mathbf{v}

矩阵 AA 作用于特征向量 v\mathbf{v} 时,方向不变,仅缩放 λ\lambda 倍。特征值越大,该方向携带的"信息量"越多。

奇异值分解 SVD(Singular Value Decomposition)

A=UΣV,ARm×nA = U \Sigma V^\top, \quad A \in \mathbb{R}^{m \times n}

  • URm×mU \in \mathbb{R}^{m \times m}:左奇异向量(正交)
  • ΣRm×n\Sigma \in \mathbb{R}^{m \times n}:对角奇异值矩阵(非负,降序排列)
  • VRn×nV \in \mathbb{R}^{n \times n}:右奇异向量(正交)

低秩近似:取前 rr 个最大奇异值,AUrΣrVrA \approx U_r \Sigma_r V_r^\top,用 r(m+n)r(m+n) 个参数近似原矩阵。LoRA 正是利用这一思想:冻结原权重 WW,只训练低秩扰动 ΔW=BA\Delta W = BABRm×rB \in \mathbb{R}^{m \times r}ARr×nA \in \mathbb{R}^{r \times n}rmin(m,n)r \ll \min(m,n))。


A.2 微积分与梯度

导数与偏导数

f(x)=dfdx=limh0f(x+h)f(x)hf'(x) = \frac{df}{dx} = \lim_{h \to 0} \frac{f(x+h) - f(x)}{h}

fxi:固定其他变量,只对 xi 求导\frac{\partial f}{\partial x_i} \text{:固定其他变量,只对 } x_i \text{ 求导}

偏导数衡量"单独改变某个参数时,损失如何变化"。

链式法则(Chain Rule)

dzdx=dzdydydx\frac{dz}{dx} = \frac{dz}{dy} \cdot \frac{dy}{dx}

多层复合函数求导时,逐层相乘。反向传播(Backpropagation)本质是对整个计算图自动应用链式法则。

梯度下降(Gradient Descent)

θθηθL\theta \leftarrow \theta - \eta \nabla_\theta L

  • θ\theta:模型参数
  • η\eta(learning rate,学习率):步长大小
  • θL\nabla_\theta L:损失 LLθ\theta 的梯度(指向上坡方向,取负号故向下走)

沿着梯度的反方向更新参数,损失函数逐步减小。

计算图(Computation Graph)直觉

将计算过程表示为有向无环图(DAG):节点是操作,边是数据流。前向传播从输入到输出;反向传播从输出到输入,沿每条边传递梯度。PyTorch 的 autograd 自动构建并反向传播此图。

:::tip 记忆技巧 链式法则 = "路径上所有斜率相乘"。计算图中从损失到某参数的每条路径,都贡献一份梯度。 :::


A.3 概率与统计

概率分布与条件概率

P(AB)=P(AB)P(B)P(A \mid B) = \frac{P(A \cap B)}{P(B)}

LLM 生成文本的本质:P(next tokencontext)P(\text{next token} \mid \text{context})——在给定上下文的条件下,预测下一个 token 的概率分布。

Softmax

softmax(zi)=ezijezj\text{softmax}(z_i) = \frac{e^{z_i}}{\sum_j e^{z_j}}

将任意实数向量(logits)转换为和为 1 的概率分布。温度参数 TT 可调节分布锐度:softmax(zi/T)\text{softmax}(z_i / T)T0T \to 0 趋向 argmax,TT \to \infty 趋向均匀分布。

交叉熵损失(Cross-Entropy Loss)

L=iyilogy^iL = -\sum_i y_i \log \hat{y}_i

  • yiy_i:真实标签(one-hot,正确类别为 1,其余为 0)
  • y^i\hat{y}_i:模型预测概率

对于语言模型的 next-token prediction,简化为 L=logy^correctL = -\log \hat{y}_{\text{correct}}——正确 token 的概率越高,损失越小。

KL 散度(Kullback-Leibler Divergence)

DKL(PQ)=iP(i)logP(i)Q(i)0D_{KL}(P \| Q) = \sum_i P(i) \log \frac{P(i)}{Q(i)} \geq 0

衡量分布 QQ 与参考分布 PP 的差异;等于 0 当且仅当两分布完全相同。RLHF 中用于约束策略模型不偏离参考模型过远:LRLHF=r(x)βDKL(πθπref)L_{\text{RLHF}} = r(x) - \beta \cdot D_{KL}(\pi_\theta \| \pi_{\text{ref}})

:::info 交叉熵与 KL 散度的关系 H(P,Q)=H(P)+DKL(PQ)H(P, Q) = H(P) + D_{KL}(P \| Q)。最小化交叉熵等价于最小化 KL 散度(当真实分布 PP 固定时)。 :::


A.4 信息论基础

熵(Entropy)

H(X)=ipilog2pi(单位:bits)H(X) = -\sum_i p_i \log_2 p_i \quad \text{(单位:bits)}

衡量随机变量的不确定性。pip_i 越均匀,熵越高(越不确定);某一事件概率趋近 1,熵趋近 0(完全确定)。

分布示例ppH(X)H(X)
确定事件[1,0][1, 0]0 bits
均匀二值[0.5,0.5][0.5, 0.5]1 bit
均匀八值[1/8,][1/8, \ldots]3 bits

困惑度(Perplexity)

PPL=2H(X)=21Ni=1Nlog2P(wiw<i)\text{PPL} = 2^{H(X)} = 2^{-\frac{1}{N}\sum_{i=1}^{N} \log_2 P(w_i \mid w_{<i})}

困惑度是语言模型的核心评估指标,直觉上等于"模型在每个位置平均需要从多少个候选中猜测下一个词"。

  • PPL=1\text{PPL} = 1:模型完全确定(完美预测)
  • PPL=V\text{PPL} = V(词表大小):模型完全随机猜测
  • 典型 GPT-2 在 WikiText-103 上约 18–29;GPT-4 级别约 5–10

与熵的关系PPL=eH\text{PPL} = e^{H}(使用自然对数时),即困惑度是熵的指数。熵每减少 1 bit,困惑度减半。

:::warning 注意 困惑度依赖测试集和 tokenizer,不同模型之间的 PPL 只有在相同条件下才可比较。 :::


小结

概念核心公式在 LLM 中的作用
点积uv\mathbf{u} \cdot \mathbf{v}Attention 相似度计算
SVD / 低秩AUrΣrVrA \approx U_r \Sigma_r V_r^\topLoRA 参数高效微调
链式法则dzdx=dzdydydx\frac{dz}{dx} = \frac{dz}{dy}\frac{dy}{dx}反向传播基础
梯度下降θθηθL\theta \leftarrow \theta - \eta \nabla_\theta L参数更新规则
Softmaxezi/ezje^{z_i}/\sum e^{z_j}logits → 概率分布
交叉熵yilogy^i-\sum y_i \log \hat{y}_i语言模型训练损失
KL 散度Plog(P/Q)\sum P \log(P/Q)RLHF 约束项
困惑度eHe^{H}语言模型质量评估

掌握以上数学工具后,正文各章中出现的公式推导将不再是障碍——它们都是这些基础积木的组合。