RoPE:两对坐标,各自旋转

把两个二维平面摆开,比较快慢频率。Q、K各对独立旋转;4维仍是4维,V保持原样。

d = 4 → 4
蓝色Q · 青色K · 虚线为未转方向

三维仅用于摆放平面,不是增加向量坐标。

当前原始 Q′·K′n−m = −1

V不参与RoPE [1,0,1,0] → [1,0,1,0]

尚未除以√d、加因果掩码或做Softmax。

Q
K

公式、适用范围与来源

三维仅用于摆放平面,不是增加向量坐标。 尚未除以√d、加因果掩码或做Softmax。

Q = K = [1,0,1,0] · V不参与RoPE [1,0,1,0]

ωᵢ = theta^(−2i/d),theta=10000。每对(a,b) → (a cosα−b sinα, a sinα+b cosα)。

共同平移结论要求Q/K内容保持固定。不同位置差也可能给出相同点积;这不是位置差的唯一编码。箭头显示最终朝向,数值保留完整弧度。

构建前先核对l13保存的二维算例,再把其[1,0]重复成正文的4维固定内容。交互值按课程RoPE公式即时计算,V仅作不旋转的对照。

l13.json · tiny_lm/rope.py · ModelConfig · 本讲静态图