一句话定义
嵌入(Embedding)把离散的词元 id 映射成低维连续向量,使语义相近的词元在向量空间中彼此靠近,是神经网络处理离散符号的必经桥梁。
为什么重要
没有嵌入,模型面对的只是无意义的整数编号;有了嵌入,「国王 − 男人 + 女人 ≈ 女王」这类语义运算才成为可能。LLM 的词元嵌入矩阵是参数大户之一,检索增强(kp-029)中的向量检索也直接复用嵌入思想。
前置知识
- kp-002(语言建模的概率本质)
核心概念
- 嵌入矩阵:形状为 词表大小 × 嵌入维度 的可学习矩阵,按 id 查行得到向量;现代 LLM 常用 2048 至上万的维度(量级参考)。
- 分布式表示:一个语义由多个维度共同编码,单个维度通常不对应单个概念。
- 语义方向:向量差可以对应语义关系(性别、时态、国别等)。
- 静态与上下文嵌入:word2vec 每词一个固定向量;Transformer 内部表示随上下文动态变化(多义词不同含义不同向量)。
原理与机制
嵌入矩阵在训练中与其他权重一起被梯度更新。早期 word2vec 用「预测邻居词」的浅层任务学出静态向量;LLM 中,词元嵌入仅是第一层输入,随后经过多层注意力与前馈网络不断变换,最终每层的隐藏状态都是「上下文化嵌入」——同一词元在不同语境下表示不同。嵌入空间的几何关系(夹角、距离)承载语义相似度,余弦相似度是最常用度量。
公式或模型
查表操作与相似度:
e_t = E · onehot(x_t) ; cos(e_a, e_b) = (e_a · e_b) / (|e_a| · |e_b|)
word2vec 的训练目标(Skip-gram 简化形式):最大化中心词预测邻居词的概率。
图示
国王● ●女王
\ /
● 男人───● 女人 (关系向量近似平行)
猫● ●狗
●老虎 (语义相近 → 距离近)
直观类比
把词表想象成一座城市:嵌入就是给每个词元分配「经纬度」。相似的词住得近,且某些固定方向对应对立关系——从「男人」家朝某个固定方向走,会到达「女人」家;换到「国王」家走同方向,正落在「女王」家。
实例或案例
经典 word2vec 结果:vec(国王) − vec(男人) + vec(女人) 的最近邻是 vec(女王)。在 RAG 系统中,文档与查询都被编码为向量,通过余弦相似度召回相关段落——嵌入从研究玩具变成生产基础设施(见 kp-029)。
常见误区
- 「嵌入维度有明确语义」:多数维度是纠缠编码的,可解释性有限。
- 「距离近就等于意思相同」:相似度还受语料偏差影响(如职业与性别的刻板关联)。
- 「LLM 只用静态词向量」:输入嵌入只是起点,逐层上下文化才是关键,这也是它优于 word2vec 的原因。
与其他知识点的关系
自测题
- 嵌入矩阵的形状由什么决定?答案要点:词表大小 × 嵌入维度,行号即词元 id。
- 静态嵌入与上下文嵌入的本质区别?答案要点:一词一向量 vs 同一词随语境动态变化;多义词场景后者显著更优。
- 为什么向量检索用余弦相似度而不是欧氏距离也可以?答案要点:归一化后二者排序等价,余弦只看方向(语义)不看模长。
延伸阅读
- Efficient Estimation of Word Representations in Vector Space(Mikolov 等,2013):word2vec 与词类比实验
- 《深度学习》(Goodfellow 等):表示学习章节