大模型必备数学基础
学大模型到底要多少数学?做应用开发,懂这篇就够入门;做算法研究,这篇是你深入论文前的地基。我们只讲「真正用得上」的部分,并说清每个概念在大模型里干什么。
你需要多少数学?
- 应用开发方向:理解本文的直觉即可,公式不必死记。
- 算法/研究方向:本文是最低门槛,后续还需深入线代、概率、最优化。
核心就三块:线性代数(数据怎么表示和变换)、微积分(模型怎么学习)、概率统计(模型怎么做预测)。
一、线性代数:数据的语言
大模型里所有东西——文字、图片、模型权重——本质都是数字的数组。
向量(Vector)
一串有序的数字,如 [0.2, -1.3, 0.8]。在大模型里,一个词被表示成一个向量(Embedding),向量的「方向」代表语义。
直觉:语义相近的词,向量方向也相近。「猫」和「狗」的向量比「猫」和「汽车」更接近。
点积(Dot Product)与相似度
两个向量对应位置相乘再求和。它能衡量两个向量有多「同向」:
$$\vec{a} \cdot \vec{b} = a_1 b_1 + a_2 b_2 + \dots + a_n b_n$$
用途:计算语义相似度(余弦相似度就是归一化的点积),这是 Attention 和 向量检索 的核心。
矩阵(Matrix)与矩阵乘法
矩阵是「向量的批量」(二维数组)。矩阵乘法是神经网络最核心的运算——模型的每一层本质上就是「输入向量 × 权重矩阵」做线性变换。
大模型 99% 的计算量都花在矩阵乘法上,这也是为什么需要 GPU(擅长大规模并行矩阵运算)。
二、微积分:模型如何「学习」
模型训练 = 不断调整参数,让「预测错误」越来越小。微积分告诉我们往哪个方向调。
导数与梯度(Gradient)
- 导数:函数在某点的「变化率/斜率」,告诉你函数往哪走会变大变小。
- 梯度:多变量版的导数,是一个指向「函数上升最快方向」的向量。
用途:训练时我们要让「损失(错误)」最小,于是沿着梯度的反方向调整参数——这就是梯度下降(Gradient Descent),所有神经网络训练的基础。
损失大 ──沿梯度反方向走一步──▶ 损失变小 ──重复百万次──▶ 模型学好了链式法则(Chain Rule)
复合函数求导的法则。神经网络有很多层层层嵌套,靠链式法则把误差从输出层一路「传回」每一层,算出每个参数该怎么调——这就是大名鼎鼎的反向传播(Backpropagation)。
三、概率统计:模型如何「预测」
大模型输出的不是确定答案,而是概率分布——「下一个词是『京』的概率 80%,是『海』的概率 15%……」。
概率分布与 Softmax
模型最后一层输出一堆分数(logits),用 Softmax 把它们转成「加起来等于 1」的概率:
$$\text{Softmax}(z_i) = \frac{e^{z_i}}{\sum_j e^{z_j}}$$
用途:决定下一个 token 选谁,配合温度、top-p 等采样策略,详见 解码与采样。
交叉熵(Cross-Entropy)损失
衡量「模型预测的概率分布」与「真实答案」差多少,是语言模型训练的标准损失函数。模型训练就是在最小化交叉熵——让它对正确的下一个词给出尽量高的概率。
条件概率
「在已知前文的条件下,下一个词是什么」,写作 P(下一个词 | 前文)。整个大模型干的事,本质就是建模这个条件概率。
概念速记表
| 数学概念 | 在大模型里干什么 |
|---|---|
| 向量 / Embedding | 表示词、句、图的语义 |
| 点积 / 余弦相似度 | 算语义相似度(Attention、检索) |
| 矩阵乘法 | 神经网络每一层的核心运算(GPU 主战场) |
| 梯度 / 梯度下降 | 训练时怎么调参数 |
| 链式法则 / 反向传播 | 误差如何传回每一层 |
| Softmax | 把分数变成下一个词的概率 |
| 交叉熵 | 训练的损失函数 |
| 条件概率 | 大模型建模的根本目标 |
学完往哪走?
- 理解了这些,去看 Transformer 和 Attention 会顺畅很多。
- 想深入算法:补线性代数(特征值、SVD)、最优化(Adam 等优化器,见 训练深入)、概率(贝叶斯、分布)。
- 推荐资源见 学习资源汇总(3Blue1Brown、李沐《动手学深度学习》)。
别被数学吓退:先建立直觉,公式边用边补。理解「梯度下降在干嘛」比会手推公式更重要。