词元ID是如何转为嵌入向量? 位置嵌入的作用是什么?

一、 词元 ID 是如何转为嵌入向量的?

比如"I love AI",在经过 BPE 等分词算法,先分词成 ["I", "love", "AI"],,再变成一串数字(Token IDs)变成了 [12, 532, 981]。这是一个查词汇表的过程,这张词汇表定义了如何将每个唯一的单词和特殊字符映射到一个唯一的整数。但这只是离散的数字,神经网络无法直接处理它们,也无法理解 12 和 532 之间的语义关系。

将它们转化为嵌入向量(Embedding Vectors),实际上是一个查字典(Lookup Table) 的过程:

  1. 词嵌入矩阵(Embedding Matrix) :
    模型在内部维护着一个巨大的表格(矩阵)。这个表格的行数 等于词表的大小(Vocabulary Size,比如 10,000),列数等于嵌入向量的维度(Embedding Dimension,比如4维, 实际是 768 / 4096 等)。

假设词嵌入矩阵为:

复制代码
token_id    embedding vector
0        [0.2, 0.1, 0.9, 0.3]
1        [0.8, 0.5, 0.1, 0.4]
2        [0.3, 0.7, 0.6, 0.2]
...
12       [0.9, 0.1, 0.3, 0.8]
...
532      [0.4, 0.2, 0.7, 0.1]
...
981      [0.6, 0.3, 0.5, 0.9]
  1. 索引查找(Index Lookup) :
    当模型接收到一个 Token ID(例如 12)时,它会直接去这个矩阵中提取第 12 行 的那一整排数据。
    • 输入:12 (整数)
    • 输出: [0.9, 0.1, 0.3, 0.8]

通过token iDs为 12, 532, 981 直接查表,得到下面嵌入向量:

复制代码
[0.9, 0.1, 0.3, 0.8]   ← I
[0.4, 0.2, 0.7, 0.1]   ← love
[0.6, 0.3, 0.5, 0.9]   ← AI
  1. 数学本质 :
    在底层数学运算中,这等价于将一个 One-hot 向量(只有一个位置是 1,其余全为 0,长度为 10000 的向量)
    这个过程的意义:
    这些浮点数向量并不是随机的。在模型预训练的过程中,这个矩阵会被不断更新。最终,语义相近的词汇(如"猫"和"狗"),它们对应的向量在多维空间中的距离会非常接近。这样,离散的数字就变成了蕴含丰富语义的连续数学表达。

二、 位置嵌入(Positional Embedding)的作用是什么?

如果你了解过传统的循环神经网络(RNN/LSTM),它们是按照顺序一个词一个词读取的,所以天生就知道词的先后顺序。

但是,现代大模型基于 Transformer 架构 ,它的核心"自注意力机制(Self-Attention)"是并行处理所有词元的。也就是说,它是一次性把一句话里的所有词一起吞进去计算的。

这就带来了一个致命问题: 对于原始的 Transformer 来说,如果没有位置信息,"I love AI" 和 "AI love I" 对它来说是完全一模一样的输入!因为词元集合相同,它失去了对语序的感知能力。

位置嵌入(Positional Embedding)的作用就是为了解决这个问题:它告诉模型每个词在句子中的确切位置。

具体是如何运作的?

  1. 生成位置向量:模型会为句子中的每一个位置(第 1 个词、第 2 个词、第 3 个词......)生成一个特定规则的"位置向量"。这个向量的维度和之前的词嵌入向量维度一模一样(比如都是 4096 维)。
  2. 两者相加 :将前面查字典得到的词嵌入向量 与对应的位置嵌入向量 进行元素级别的相加(Add) 。
    • 最终向量= 词义信息(Token Embedding) + 位置信息(Positional Embedding)

比如:

词嵌入向量:

复制代码
I     [0.9, 0.1, 0.3, 0.8]
love  [0.4, 0.2, 0.7, 0.1]
AI    [0.6, 0.3, 0.5, 0.9]

位置嵌入向量:

复制代码
pos0  [0.1, 0.0, 0.2, 0.0]
pos1  [0.0, 0.3, 0.1, 0.2]
pos2  [0.2, 0.1, 0.0, 0.1]

两者相加:

复制代码
I     [1.0, 0.1, 0.5, 0.8]
love  [0.4, 0.5, 0.8, 0.3]
AI    [0.8, 0.4, 0.5, 1.0]
  1. 传递给模型:相加后的新向量不仅包含了"这个词是什么意思",还包含了"这个词在句子中的哪个位置",然后才送入后续的网络层进行处理。

常见的位置编码方式:

  • 绝对位置编码(Absolute PE):早期 Transformer 使用正弦和余弦函数(Sinusoidal)的数学公式硬编码生成,或者像词嵌入一样让模型自己学习每个位置的向量(GPT-2/3 的做法)。
  • 相对位置编码(Relative PE) :现在最流行的大模型(如 LLaMA、Qwen 等)更倾向于使用 RoPE(旋转位置编码,Rotary Position Embedding) 或 ALiBi。这类方法不关注词的"绝对位置是第几个",而是关注两个词之间的"相对距离有多远",这大大增强了模型处理长文本和泛化的能力。
相关推荐
段一凡-华北理工大学7 分钟前
高炉炼铁机器视觉与智能识别十八讲~系列文章11:从单帧到视频流:时序与异常行为识别
人工智能·机器学习·python开发·智能识别·高炉智能化·时序识别
物联网软硬件开发-轨物科技13 分钟前
【轨物洞见】什么是产品碳足迹(PCF)?ISO 14067 计算方法与应用场景深度解读
大数据·网络·人工智能
oicola25 分钟前
【DSH】DSH配置第三方MCP服务
ai·harness
LucianaiB27 分钟前
“AI+OPC”创新应用专业赛
人工智能
北龙云海30 分钟前
AI驱动数据库运维变革:北龙云海智能巡检平台实践与展望
运维·数据库·人工智能
GlobalInfo32 分钟前
2026年全球无人机清洗系统市场深度分析:规模、竞争格局与AI自主作业演进趋势
大数据·人工智能·ai·无人机
中杯可乐多加冰36 分钟前
从 SDK 到桌面应用:我用科沃斯八界把视觉、导航和机械臂接起来
人工智能·机器人·sdk·具身智能·科沃斯·八界创造者计划·科沃斯八界
创世虚拟世界38 分钟前
我做了一个 3D 虚拟世界基底,基于这个再做 3D 虚拟世界或者元宇宙,会事半功倍
javascript·人工智能·3d·gitee·虚拟现实
AI职业加油站39 分钟前
AI 校招现状:大模型应用工程师证书,助力简历能力证明
大数据·运维·人工智能·学习·职场发展
知几蜗牛1 小时前
GPT-6 与 Intelligent UI:从回答到可审计操作的产品迁移
人工智能