绝对位置编码为序列中每个位置分配唯一向量,弥补自注意力机制的位置无关性。
核心概念
绝对位置编码(APE)通过加法注入位置信息:
$$X_{pos} = E_{word} + P_{pos}$$
其中 $P_{pos} \in \mathbb{R}^d$ 为第 $pos$ 个位置的编码向量。
技术演进
| 方法 | 特点 | 典型模型 |
|---|---|---|
| 正弦/余弦编码 | 固定公式,可外推 | Transformer 原版 |
| 可学习位置编码 | 参数优化,效果更佳 | BERT、GPT |
| 相对位置编码 | 建模相对距离 | T5、Transformer-XL |
正弦/余弦编码公式
$$P_{(pos, 2i)} = \sin(pos / 10000^{2i/d})$$
$$P_{(pos, 2i+1)} = \cos(pos / 10000^{2i/d})$$
- $pos$:位置索引
- $i$:维度索引
- $d$:编码维度
优缺点对比
| 优点 | 缺点 |
|---|---|
| 实现简单 | 长度外推能力有限 |
| 无额外参数 | 可学习版本更优 |
| 位置唯一性 | 无法建模相对位置关系 |
张芷铭的个人博客
Comments