你一定听说过:GPT 的本质就是矩阵乘法

但"矩阵乘法"到底在干什么?为什么乘来乘去就能理解语言?

别急。今天不写公式,不讲定理——只看动图

矩阵乘法在几何上做了什么,用眼睛就能看明白。而 GPT 里的 Attention、MLP 等等,和你眼前看到的 2D 变换,是完全一样的数学——只不过维度从 2 变成了 768。

维度变了,几何没变。看懂 2D,就看懂了 GPT。


一、矩阵乘法在干什么?——5 张动图告诉你

先忘掉 GPT,忘掉人工智能。我们就在一张白纸上画箭头。

一个 2×2 的矩阵乘以一个箭头(向量),就是把这个箭头搬到新位置。具体怎么搬?看矩阵的数值。我们来看 5 种最基本的搬法:

看图秘诀: 每张图里有两个关键箭头——蓝色 i 和红色 j。它们是"基向量",相当于坐标系的两根轴。只要你知道这两根轴去了哪里,空间里所有点的命运就确定了。

1. 旋转——所有点绕原点转圈

蓝色 i 和红色 j 同时转动,它们之间始终保持 90°。网格跟着一起转,整个空间像一张转盘:

纯旋转变换——距离不变,角度不变,整个空间在"转盘"上

2. 缩放——沿不同方向拉伸或压扁

蓝色 i 变长、红色 j 变短。正方形变成了扁扁的长方形:

缩放变换——x方向拉伸2倍,y方向压缩到0.4倍

3. 剪切——像推扑克牌一样倾斜

蓝色 i 不动,红色 j 被推歪了。正方形变成了平行四边形:

剪切变换——一个方向固定,另一个方向被推歪

4. 翻转——像照镜子

蓝色 i 从右边跑到了左边,整个空间被"翻面":

翻转变换——沿y轴做镜像,左右互换

5. 组合——真实世界里矩阵做的事

旋转+缩放+剪切同时发生。这才是 GPT 里矩阵真正在做的事——复杂的组合变换

组合变换——旋转+缩放+剪切同时进行,空间被彻底"揉"了一遍

记住这三件事——矩阵乘法就是:

  1. 改变方向(旋转)
  2. 改变大小(缩放)
  3. 改变形状(剪切、翻转)

就这三件事,没了。后面你会发现,GPT 里的 QKV、Attention、MLP——全是这三件事在更高维度的重演


二、从 2D 到 768 维——维度变了,规则没变

前面的动图是 2 维平面。GPT 工作在 768 维空间。听起来吓人?别怕——规则一模一样

为了方便演示,我们建一个"迷你 GPT",全文用同一组数值:

参数
句子“我” “喜欢” “绿” “苹果”
d_model4(真实 GPT 是 768)
n_heads2, d_head = 2, d_ff = 16

每个 token 变成一个 4 维向量(embedding)——相当于 4 维空间中的一个

TokenEmbedding 向量
“我”[0.8, -0.3, 0.5, 0.1]
“喜欢”[0.2, 0.7, -0.4, 0.6]
“绿”[-0.5, 0.1, 0.9, -0.2]
“苹果”[0.3, 0.4, 0.2, 0.8]

你画不出 4 维空间,但所有 2D 的几何直觉全部适用

2D 能做的事768 维一样能做
算两个向量的夹角公式一模一样,768 个数相乘再相加
矩阵乘法 = 旋转+缩放768×768 矩阵,做的还是同样的事
方向相同 = 相似语义相似的词,embedding 方向也相近

类比: 你不需要"看见"768 维空间,就像你不需要看见空气来理解风。只要知道风的规则(方向、力度、叠加)在不在,就够了。这些规则在 2D 和 768D 完全一样


三、QKV 投影——同一个向量的三种"透视"

在 Attention 里,每个 token 的 embedding 要通过三个不同的矩阵,变出 Q(查询)、K(键)、V(值)三个版本。

这在干什么?想象你在看一个苹果:

变换角度含义
Q 矩阵变换正面照“我在找什么?”
K 矩阵变换侧面照“我能匹配什么?”
V 矩阵变换X光照“我的实际内容

几何上看,就是第一章那种矩阵变换——同一个箭头,被三个不同矩阵旋转到三个不同方向

“苹果"的embedding被三个矩阵变换到不同方向(Q红、K蓝、V绿)

"苹果" embedding = [0.3, 0.4, 0.2, 0.8]

Q = W_Q × embedding → 旋转到"查询空间"
K = W_K × embedding → 旋转到"匹配空间"
V = W_V × embedding → 旋转到"内容空间"

维度: (4,) × (4,2) = (2,)  每个头 d_head=2

本质: W_Q、W_K、W_V 就是三个不同的"旋转+缩放"矩阵。每个矩阵选了不同的"观察角度”,让同一个向量展示不同侧面。这和第一章的矩阵变换是同一件事

关于"为什么要分成三份"的更深入讨论,见第 18 篇《为什么 Transformer 需要 Q、K、V》


四、Attention 点积——就是比较两个箭头的方向

QKV 投影完毕后,Attention 的核心操作出奇简单:把 Q 和 K 放在一起,看它们指向的方向有多接近

数学上叫"点积",几何上就是比较两个箭头的夹角

两个箭头的关系夹角点积意思
同方向最大高度相关,多关注
垂直90°完全无关,忽略
反方向180°最小(负)高度对立

看动图:“苹果” 的 Q 箭头,逐个跟每个 token 的 K 箭头比较夹角——

Q(“苹果”)逐个与K箭头比较夹角——夹角越小,注意力越高

从分数到概率:Softmax

点积给出原始分数(可正可负),softmax 把它变成概率——所有分数加起来等于 100%:

一步一步算:
1. Q * K = 原始分数  [0.54, 0.74, 0.12, 0.78]
2. / sqrt(d_head) = 缩放  [0.38, 0.52, 0.08, 0.55]
3. softmax = 概率    [0.22, 0.25, 0.16, 0.26]
4. 概率 × V = 加权混合 → 输出

一句话总结: Attention = 比较所有 token 的方向相似度,然后按相似度加权混合。方向越接近的 token,贡献越大。


五、MLP——升到高维分开,再降回来

Attention 之后,Transformer 还有一个 MLP(前馈网络)。它的结构极其简单:

x (d=4) → W1 升维 (d=16) → ReLU → W2 降维 (d=4)

为什么要先升维再降维?用一个真实的例子来看——

想象你有一堆红色点和蓝色点,混在 2D 平面上。红色点在内圈,蓝色点在外圈。你想画一条直线把它们分开——不可能

但如果我们加一个维度 z,让每个点"飞"到 3D 空间?红色点飞得低,蓝色点飞得高——现在一刀就能切开!最后再把它们"按"回 2D,它们已经分开了。

2D无法分离→升到3D后一刀切开→降回2D,已经分开了!

步骤数学操作几何直觉
W1 升维4 维 → 16 维把纸展开到高维——纠缠的点被拉开了
ReLU负值变成 0选择性保留——只留有用的特征
W2 降维16 维 → 4 维按回原来的维度——但已经分开了

为什么这招管用? 在低维空间纠缠在一起的东西,升到高维后更容易被分开。ReLU 做"选择"——只保留正值,约一半维度被关掉。最后降维回来,信息已经被重新整理了。

这就是第 19 篇《万能近似》的核心——足够宽的 MLP 能逼近任意函数。MLP 其实还在存储"知识",详见第 20 篇《MLP 知识仓库》。


六、完整前向传播——一次走完

把所有部件连起来,看 4 个 token 如何走完一个 Transformer Block:

一个Transformer Block的完整数据流

维度变化一览

步骤操作形状几何意义
1Embedding(4, 4)4 个 token → 4 维空间的 4 个点
2Q / K / V 投影(4, 2) ×3旋转到 3 个子空间
3Q × K 点积(4, 4)4×4 夹角比较
4softmax × V(4, 2)按相似度加权混合
5多头拼接 + W_O(4, 4)多个视角合并
6MLP W1 升维(4, 16)展开到高维
7ReLU(4, 16)选择性激活
8MLP W2 降维(4, 4)折回原维度
9输出 + 残差(4, 4)形状不变,语义已更新

注意首尾维度: 输入 (4, 4) → 输出 (4, 4)。形状没变!所以 Transformer Block 可以堆叠——一个 Block 的输出直接喂给下一个。GPT-2 堆了 12 层,GPT-4 据说堆了 120 层。


七、对照表——同一种数学,不同的名字

最后,一张表把今天所有内容串起来:

数学操作2D 直觉GPT 里叫什么
矩阵 × 向量旋转+缩放+剪切W_Q / W_K / W_V 投影
点积比较夹角 → 相似度Q × K → 注意力分数
升维2D → 3D,“展开”MLP W1: d_model → d_ff
ReLU砍掉负半边约 50% 神经元归零
降维3D → 2D,“折回”MLP W2: d_ff → d_model
加权平均求重心softmax(QK) × V
堆叠复合变换12~120 层 Transformer Block

核心结论

GPT 的每一个操作——投影、点积、升降维、激活——你都可以在 2D 平面上找到对应的几何直觉。

768 维不是魔法,是你眼前这些动图在更高维度的 384 倍平行展开。


本系列回顾

#文章核心问题
16矩阵:连接数学与 AI 的桥梁矩阵的列视角,W 为什么在右边
18为什么 Transformer 需要 Q、K、VQKV 发明的哲学动机
19万能近似:矩阵+激活能逼近一切万能近似定理的直觉证明
20MLP 知识仓库MLP 作为键值记忆网络
22一看就懂:矩阵乘法对 LLM 做了什么(本文)9 张动图,几何直觉桥接

现在你有了从 2D 到 768 维的完整直觉链。

下次看到 “multi-head attention” 或 “feed-forward network”——

别慌。它们就是你刚才看到的那些旋转和缩放,只不过在更高的维度上同时做了很多遍。