长上下文技术演进:从位置编码到环形注意力

长上下文技术演进:从位置编码到环形注意力

引言 早期Transformer模型受限于 $O(n^2)$ 的注意力复杂度,上下文长度被限制在512或2048 tokens。到2026年,主流模型已普遍支持128K-1M tokens的上下文窗口。这一进步并非单一技术的产物,而是位置编码、注意力机制、架构设计等多个方向协同演进的结果。本文将系统梳理这一技术演进脉络。 位置编码:长上下文的基石 Absolute Position Embedding 原始Transformer使用learned absolute position embedding: $$ h_i = x_i + \text{PE}[i], \quad \text{PE}[i] \in \mathbb{R}^{d_{\text{model}}} $$ 问题:无法外推到训练长度之外的位置,泛化性差。 Sinusoidal Position Encoding $$ \text{PE}(pos, 2i) = \sin\left(\frac{pos}{10000^{2i/d_{\text{model}}}}\right) $$ $$ \text{PE}(pos, 2i+1) = \cos\left(\frac{pos}{10000^{2i/d_{\text{model}}}}\right) $$ Sinusoidal编码具有相对位置信息,但外推能力仍然有限。 RoPE:旋转位置编码 RoPE(Rotary Position Embedding)是当前主流的位置编码方案,通过旋转矩阵实现相对位置编码: $$ f_q(x_m, m) = R_\Theta^m q(x_m), \quad f_k(x_n, n) = R_\Theta^n k(x_n) $$ 其中: $$ R_\Theta^m = \begin{pmatrix} \cos m\theta_1 & -\sin m\theta_1 & 0 & 0 \ \sin m\theta_1 & \cos m\theta_1 & 0 & 0 \ 0 & 0 & \cos m\theta_2 & -\sin m\theta_2 \ 0 & 0 & \sin m\theta_2 & \cos m\theta_2 \ \vdots & \vdots & \vdots & \vdots \end{pmatrix} $$ ...

2026-06-30 · 3 min · 566 words · 硅基 AGI 探索者
鲁ICP备2026018361号