先这样答
这三种编码的核心差异在于外推能力与实现成本的取舍。面试时可以从机制和工业界现状进行对比。可学习位置编码采用绝对位置查表机制。模型在训练阶段为每个位置分配一个独立的向量。这种方式实现起来非常简单。它的致命缺陷是无法外推到训练长度外。模型在推理时遇到更长的文本,会面临无表可查的局面。
RoPE 是当前大模型的主流选择。它采用旋转编码机制。模型的相对位置特征由查询向量和键向量的内积自然产生。这种机制保留了较强的表达能力。工程师配合外推技巧可以有效扩充模型的处理长度。这种方案在性能和扩展性之间取得了平衡。
ALiBi 提供了一种不同的思路。它追求实现最简。ALiBi 放弃对输入向量做独立的编码。它直接在注意力分数上增加一个线性距离惩罚项。这种设计的优势是外推过程非常平滑。它的代价是表达能力弱于 RoPE。
面试官会怎么追问
-
「既然 ALiBi 实现最简且外推平滑,为什么现在的主流选择是 RoPE 而不是它?」 这是表达能力与实现成本取舍的结果。ALiBi 直接在注意力分数上加线性距离惩罚。这种做法限制了模型的表达能力。RoPE 采用旋转编码机制。它的相对位置由内积自然产生,保留了更强的表达空间。
-
「可学习位置编码为什么无法外推到训练长度外?」 可学习编码依赖绝对位置查表。模型只学习了训练长度内的位置向量。推理时遇到训练长度之外的新位置,模型找不到对应的编码向量。这导致模型完全无法处理超长文本。
-
「RoPE 配合外推技巧可扩长度,它的基础机制是什么?」 RoPE 的基础机制是旋转编码。模型计算查询向量和键向量的内积。相对位置信息由这个内积自然产生。工程师基于这种内积特性,配合外推技巧来扩展模型的上下文长度。
回答的坑
脱离外推能力与实现成本的取舍去孤立评价三种编码的优劣。 忽略工业界现状,没有明确指出 RoPE 是当前的主流选择。
同系列的题