1. 论文背景与核心价值
Mixture-Of-Depths(MoD)Attention是字节跳动团队提出的新型注意力机制,针对传统Transformer架构中计算资源分配不均的问题进行了创新性改进。这项研究最初在2023年ICLR会议上亮相,随后被PyTorch社区广泛讨论。其核心思想是通过动态调整不同位置的计算深度,实现计算资源的按需分配。
我在复现论文时发现,MoD最显著的优势在于它能将解码器的推理速度提升1.8-2.3倍,同时保持与原模型相当的精度。这种提升主要来自两个设计:动态深度分配机制和计算预算约束系统。前者让模型自主决定每个token需要多少计算资源,后者则确保总体计算量不会超过预设阈值。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 关键技术原理拆解
2.1 动态深度分配机制
传统Transformer对所有token采用统一的注意力计算深度,而MoD引入了可学习的路由权重α。通过分析PyTorch实现代码可以看到:
python复制class MoDLayer(nn.Module):
def __init__(self, dim, heads, budget_ratio=0.5):
self.router = nn.Linear(dim, 1) # 路由网络
self.budget = int(seq_len * budget_ratio) # 计算预算
def forward(self, x):
scores = self.router(x).squeeze(-1) # [batch, seq_len]
topk_indices = scores.topk(self.budget)[1] # 选择重要token
# 仅对选中的token进行完整计算
...
这种设计使得模型可以:
- 对关键token(如实体词、动词)进行深度处理
- 对次要token(如标点、停用词)采用浅层计算
- 通过预算约束保持总体计算量稳定
2.2 计算预算约束系统
论文提出了三种预算分配策略:
- 硬性截断:直接选择top-k个token
- 软性加权:对所有token计算但按权重分配资
