

Transformer 是现在人工智能的主流技术,但在这一堆复杂的架构图背后,它的本质到底是什么?有人说是“加权求和”,这没错,但太抽象。要真正理解它,我们需要回到原点,从编码(Encoder)和解码(Decoder)这两个最古老的结构说起。
一、 语言的“码”是什么?——通往潜空间之路
不管是图像识别(CNN)还是自然语言处理(RNN/Transformer),核心都在做一件事:把现实世界的信息,翻译成计算机能算的数。
但在翻译语言时,我们遇到了难题。
1. 两种极端的“翻译”方式
Tokenizer(序号法): 苹果是1,香蕉是2,梨是3。这种方法虽然省地儿,但有个大坑:难道“香蕉(2) = 苹果(1) + 1”吗?这种数字间的运算关系在语义上是不成立的。
One-Hot(独热编码): 苹果是 [1, 0, 0],香蕉是 [0, 1, 0]。这种方法让每个词都相互独立(正交),互不干扰。但也因为太独立了,机器无法理解“苹果”和“香蕉”都是水果这层关系。
2. 完美的折中:词嵌入(Embedding)与潜空间
为了解决上述问题,我们引入了词嵌入(Word Embeddings)。我们不再用一个数,也不用无限长的01串,而是用一个高维向量来代表一个词。 比如:
苹果:[10.0, 0.4, 2.3 ...]
香蕉:[9.8, 0.5, 2.1 ...]
原子能:[0.1, 9.4, 0.3 ...]
在这个高维的“潜空间”里,苹果和香蕉的坐标离得很近(因为都是水果),而离原子能很远。所谓的“编码”,就是把人类的文字,投射到这个高维的、蕴含语义关系的几何空间中。 Word2Vec 就是最早做这件事的“编词典”模型。
二、 矩阵乘法的真面目:空间的折叠与伸缩
在神经网络和Transformer中,到处都是 向量 ✕ 矩阵 的运算。这到底是在算什么?
请记住一个核心直觉:矩阵乘法 = 空间变换。
当你用一个向量乘以一个矩阵,实际上是在扭曲这个向量所在的坐标系。
它可以是旋转(Rotate)、拉伸(Scale)或者剪切(Shear)。
神经网络中的隐藏层,实际上就是通过不断的空间变换(升维或降维),试图找到一个能够完美区分数据特征的“超平面”。
如果你理解了“矩阵即变换”,那么Transformer里那些复杂的公式就不再是天书,而是对语义空间的一系列操作指令。
三、 注意力机制(Attention):语义的“动态修正器”
Transformer最核心的突破是注意力机制(Self-Attention) 。它解决了RNN无法并行计算的问题,也比CNN能捕捉更长距离的依赖。
1. Q、K、V 的三重奏
在一个句子中,每个词不仅有字典里的死含义(Value),还有在当前语境下的特定含义。注意力机制就是通过三个权重矩阵 WQ、WK、WV 将输入的词向量分别变成了 Q (Query) 、K (Key) 和 V (Value) 。
Q (Query): 像是带着问题的探针(我想要找/关注什么?)。
K (Key): 像是内容的标签(我包含什么特征?)。
V (Value): 才是真正的语义内容(书本上的含义)。
2. 怎么算“注意”了多少?
计算公式的核心部分是 Q ✕ K^T(Q乘以K的转置)。
从代数上看,这是向量的内积(点积) 。
从几何上看,内积代表两个向量的相似度(投影长度)。
如果 Q(查询)和 K(标签)的方向一致(相似度高),内积就大,算出来的得分(Score)就高。这意味着模型在生成当前内容时,要把“注意力”重点放在这个词上。
3. 加权求和
算出得分后,经过 Softmax 归一化(变成概率),再乘以 V。 这就是在说:根据 Q 和 K 算出的匹配度,把不同词的 V(含义)按比例加在一起,融合成一个新的、带有上下文理解的向量。 这就是为什么Transformer能读懂“苹果”在“苹果手机”和“红苹果”中不同含义的原因。
四、 多头注意力与位置编码:细节决定成败
1. 多头注意力(Multi-Head Attention)
为什么要有“多头”?这就像CNN里的“多通道”。 一个词的语义是复杂的,可能包含语法特征、情感特征、指代特征等等。
头1可能关注语法结构。
头2可能关注情感色彩。
头3可能关注名词指代。 最后把这几个头的结果拼接起来,再做一次线性变换(矩阵乘法),就得到了全面、立体的语义理解。
2. 位置编码(Positional Encoding)
Transformer 是并行输入的,如果不加标记,“我打你”和“你打我”在模型看来是一堆相同的词,只是位置不同。所以必须引入位置信息。
绝对位置编码: 像傅里叶级数一样,利用不同频率的 sin 和 cos 函数给每个位置打上独特的“时间戳”,直接加在词向量上。这是一种对数据的修饰。
相对位置编码: 更先进的做法(如RoPE)不仅是加在输入上,而是直接作用在注意力矩阵的计算中(对注意力得分矩阵A进行修饰)。这让模型理解的是“词A距离词B有多远”,而不是“词A在第几个格子里”,这更符合语言的相对性。
五、 残差连接与LayerNorm:让深层网络跑起来
Transformer 甚至所有的深度学习模型,能堆叠几十上百层不崩溃,靠的是两个工程神器:
残差连接(Add): 也就是 Output = Input + Function(Input)。 比喻: 就像开车有车道辅助。模型不再需要每次从零开始重构输出,它只需要学习“输入和理想输出之间的差值(变化量)” 。这让训练难度大幅降低,就像只用微调方向盘,而不是盲开。
层归一化(LayerNorm): 把每个样本的数据拉回到同一个起跑线(归一化),保证训练过程的稳定性。
总结
Transformer 并不是黑魔法,它是一座用数学砖块搭建的精密大厦:
词嵌入构建了语义的几何空间;
矩阵运算实现了空间维度的变换与对齐;
注意力机制通过向量内积寻找词与词之间的关联;
多头机制从不同维度丰富了理解。
正是这些组件的有机结合,让机器从仅仅是“查字典”的工具,进化成了能够感知上下文、生成流畅语言的智能体。

一家致力于优质服务的软件公司
8年互联网行业经验1000+合作客户2000+上线项目60+服务地区

关注微信公众号
