一文搞清楚RoPE、mRoPE、交错 mRoPE、MRoPE
RoPE、mRoPE、交错 mRoPE、MRoPE:从文本位置编码到多模态位置编码的发展路径
一句话总结发展路线:
RoPE → 解决文本 Transformer 的相对位置问题;mRoPE → 把位置扩展到时间/空间多维;交错 mRoPE → 让多模态位置和文本位置更自然融合;MRoPE(Multimodal Rotary Position Embedding)→ 面向大规模视觉语言模型优化位置编码,让模型更好理解图片、视频和长上下文。
1. 为什么需要位置编码?
Transformer 最大的问题:
Self-Attention 不知道 token 顺序。
例如:
猫 吃 鱼
和:
鱼 吃 猫
Transformer 如果没有位置:
猫
吃
鱼
三个 token 只是三个向量。
所以需要:
token + position
告诉模型:
- 谁在前
- 谁在后
- 距离多远
2. 第一代:绝对位置编码(Sinusoidal PE)
Transformer 原始方案:
[
PE(pos,2i)=sin(pos/10000^{2i/d})
]
[
PE(pos,2i+1)=cos(pos/10000^{2i/d})
]
例如:
位置:
我 爱 猫
0 1 2
加入:
token embedding
+
position embedding
优点
✅ 简单
✅ 不增加参数
✅ 可以外推一定长度
缺点
最大问题:
位置信息只是“加进去”,没有参与 attention 计算。
Attention:
[
QK^T
]
并不知道:
token A 和 token B 相距多少
3. 第二代:RoPE(Rotary Position Embedding)
论文:
RoFormer: Enhanced Transformer with Rotary Position Embedding (2021)
核心思想:
不把位置加到 embedding,而是旋转 Query 和 Key。
数学形式
对于二维:
[
x=[x_1,x_2]
]
位置 p:
[
R(p\theta)
\begin{bmatrix}
cos(p\theta)&-sin(p\theta)
sin(p\theta)&cos(p\theta)
\end{bmatrix}
]
得到:
[
q_p=R(p\theta)q
]
为什么旋转有效?
Attention:
[
q_m^T k_n
]
经过 RoPE:
[
(R_mq)^T(R_nk)
]
因为:
[
R_m^TR_n=R_{n-m}
]
所以:
[
q^TR_{n-m}k
]
只和:
[
n-m
]
有关。
也就是说:
RoPE 天然编码相对距离。
RoPE 优缺点
优点
1. 强相对位置能力
知道:
A距离B 5个token
而不是:
A是第500个token
2. 无额外参数
纯数学旋转。
3. 成为 LLM 主流
使用模型:
- LLaMA
- Qwen
- Mistral
- GPT 类模型
缺点
1. 一维假设
RoPE:
[
position=p
]
只能表示:
第几个token
不能自然表示:
图片:
(x,y)
视频:
(t,x,y)
2. 长上下文外推困难
原因:
旋转角:
[
p\theta
]
位置越大:
旋转越快。
导致:
短文本:
稳定
长文本:
位置混乱
4. 第三代:mRoPE(Multimodal RoPE)
为什么出现?
视觉:
图片
patch:
(0,0)
(0,1)
(1,0)
(1,1)
视频:
(frame,row,column)
一维 RoPE:
token 0
token 1
token 2
丢失空间结构。
mRoPE 核心
把:
[
position
]
变成:
[
(t,h,w)
]
三个方向分别旋转。
公式:
普通 RoPE:
[
R(p\theta)
]
mRoPE:
[
R(t\theta_t)
\oplus
R(h\theta_h)
\oplus
R(w\theta_w)
]
例如图片:
猫
位置:
h=5
w=10
编码:
高度旋转5次
宽度旋转10次
模型知道:
猫在哪里。
mRoPE 优缺点
优点
✅ 支持图片二维空间
✅ 支持视频时间维
✅ 保留 RoPE 相对位置优势
应用:
- Qwen2-VL
- Qwen3-VL
缺点
1. 多模态融合困难
文本:
position=10
图片:
(t,h,w)
两者空间不同。
2. 视觉 token 数量巨大
图片:
576 tokens
视频:
几十万个token
位置设计压力增加。
5. 第四代:交错 mRoPE(Interleaved mRoPE)
这是针对视觉语言模型进一步优化。
原始 mRoPE 问题
假设 hidden dimension:
[0 1 2 3 4 5 6 7]
传统切分:
时间:
[0 1]
高度:
[2 3]
宽度:
[4 5]
问题:
每个方向集中在一起。
交错 mRoPE
思想:
不连续分配,而是交叉排列。
例如:
传统:
time:
0 1 2 3
height:
4 5 6 7
width:
8 9 10 11
交错:
time:
0 3 6 9
height:
1 4 7 10
width:
2 5 8 11
为什么?
因为 Transformer hidden dimension:
本身是混合表示。
交错:
让:
- 时间
- 高度
- 宽度
更均匀融合。
交错 mRoPE 优缺点
优点
1. 更好的空间理解
例如:
图片:
左上角猫
右下角狗
位置关系更容易学习。
2. 更适合视觉语言模型
尤其:
- 图片
- 视频
- OCR
缺点
1. 实现复杂
需要:
- 维度重排
- attention 修改
2. 与已有模型兼容差
不能直接替换 RoPE。
6. 第五代:MRoPE(Multimodal Rotary Position Embedding)
注意:
不同论文中 MRoPE 和 mRoPE 名称容易混用。
在 Qwen-VL 系列中:
MRoPE 通常指:
为多模态大模型设计的多轴 Rotary Position Embedding。
核心:
统一:
文本
图片
视频
的位置体系。
MRoPE位置表示
文本:
(t)
图片:
(t,h,w)
视频:
(t,h,w)
统一成:
position vector
[t,h,w]
例如:
输入:
用户:
描述这张图片
<Image>
序列:
文本:
你 好
位置:
(0,0,0)
(1,0,0)
图片:
patch1
(2,0,0)
patch2
(2,0,1)
patch3
(2,1,0)
全部进入同一个位置空间。
7. RoPE → MRoPE发展路线
2021
|
| RoFormer
|
↓
RoPE
(文本一维位置)
|
| 多模态需求
↓
mRoPE
(t,h,w)
(图片/视频)
|
| 更强融合需求
↓
交错 mRoPE
维度交错
|
| 大规模 VLM
↓
MRoPE
统一文本+视觉位置体系
8. 横向比较表
| 技术 | 位置维度 | 主要用途 | 优点 | 缺点 |
|---|---|---|---|---|
| 绝对PE | 1D | 早期Transformer | 简单 | 相对距离弱 |
| RoPE | 1D | LLM | 强相对位置 | 不能表达空间 |
| mRoPE | 3D | VLM | 图片视频理解 | 融合困难 |
| 交错mRoPE | 3D | 高级VLM | 空间融合更好 | 复杂 |
| MRoPE | 多模态统一 | GPT-4V/Qwen-VL路线 | 统一文本视觉 | 设计复杂 |
9. 和 Qwen2-VL / Qwen3-VL 的关系
Qwen2-VL
核心创新:
Vision Encoder
+
mRoPE
+
动态分辨率
让:
图片patch
↓
(t,h,w)
↓
RoPE
Qwen3-VL
进一步:
更强视觉编码
+
改进视觉token压缩
+
更成熟MRoPE设计
目标:
- 更长视频
- 更高分辨率
- 更强空间推理
最后一句话总结
RoPE 解决“文字在哪里”;mRoPE 解决“图片/视频在哪里”;交错 mRoPE 解决“多模态位置如何融合”;MRoPE 进一步把文本、图像、视频统一到一个位置空间,是大规模视觉语言模型的位置编码演进方向。
更多推荐



所有评论(0)