M4-070M4: Sequences & TransformersLong Context Extensions & ScalingMedium
Mastery:
Long Context Extensions & Scaling: 解释滑动窗口注意力 + 全局 token 的混合设计。
📐 Mathematical Definition
⚡ Executive Summary
Core Concept: 大部分层用滑窗(局部)省算力,少量全局 token 或全注意力层保证信息能跨长距离流动。
📌 Key Takeaways
- •纯滑窗感受野受限(L 层 × w)
- •全局 token(或每 N 层一个全注意力)打通长距离
- •Mistral/Gemma-2 用'SWA + 全注意力交替'
📐 Mathematical Derivations
数学机理:<strong>纯滑动窗口的问题</strong>——每个 token 只看前后 w 个位置,信息要跨越超过 w 的距离需<strong>逐层传递</strong>(L 层网络最多传 L·w);对需要长距离依赖的任务(如跨章节指代、长代码的符号定义与使用),纯滑窗要么需要极深的网络、要么无法覆盖。<strong>混合设计的两种形式</strong>:<strong>(1) 全局 token(global tokens)</strong>——保留少量'全局 token'(如序列开头的若干 token、或专门的 [GLOBAL] 标记),<strong>所有位置都可关注它们、它们也可关注所有位置</strong>;这样信息可通过全局 token 作为'中转站'跨越任意距离(两步:局部 → 全局 token → 目标位置)。Longformer 的'局部窗口 + 全局 token'即此设计。<strong>(2) 层间交替(interleaved)</strong>——大部分层用滑窗(省算力),<strong>每 N 层插入一层全注意力</strong>(提供长距离通路);Mistral-7B、Gemma-2 采用此设计(如 Gemma-2 每 2 层一个滑窗层、每 2 层一个全注意力层)。<strong>效果</strong>——感受野仍为 O(L)(因为全注意力层可直达任意位置),但<strong>总计算量大幅降低</strong>(全注意力层只占 1/N)。<strong>与 attention sink 的关系</strong>——全局 token 常位于序列开头,与 attention sink 位置重合,故'保留初始 token 作为 sink'与'提供全局通路'是同一设计的两面(StreamingLLM 的'保留 sink + 滑窗'即此)。<strong>工程优势</strong>——滑窗层的 KV cache 只需保留最近 w 个(环形缓冲,显存 O(w)),故长上下文推理的显存大幅降低;全注意力层仍需全 KV(但层数少,总量可控)。
🏭 Production Trade-offs
深度剖析与工程权衡:① <strong>'信息中转'的效率</strong>——通过全局 token 传递信息需两步(局部→全局→局部),比全注意力的单步直达效率低,但成本也低得多;这是一种'成本-效率'的折中。② <strong>KV cache 的混合管理</strong>——滑窗层的 KV 是 O(w)(环形缓冲)、全注意力层是 O(L);混合架构的显存介于两者之间,且<strong>大部分层是滑窗层</strong>,故总量显著低于全注意力。③ <strong>与位置编码的交互</strong>——滑窗层若用 RoPE 的'远距离衰减',则其局部性被进一步强化;部分实现只对全注意力层施加位置编码或使用不同的位置策略。④ <strong>与 MoE/SSM 的组合</strong>——混合架构可进一步与 MoE(稀疏 FFN)与 SSM(线性递归)组合,形成'全注意力 + 滑窗 + SSM + MoE'的多层混合(如 Jamba);这是当前'效率优先'架构的主流方向。⑤ <strong>训练的一致性</strong>——混合架构需在<strong>预训练阶段</strong>就使用(否则推理时的注意力模式与训练不一致);故它是'架构选择'而非'推理优化'。⑥ <strong>面试要点</strong>——被问'长上下文如何省算力',应给出'<strong>滑窗(省算力)+ 全局 token 或全注意力层(保长距离通路)</strong>'的混合设计,并说明'感受野仍为 O(L) 但计算大幅降低'与'滑窗层 KV 是 O(w)';能联系到 attention sink 与 MoE/SSM 组合是深度理解的标志。
⚠️ Common Interview Pitfalls
- ✕认为纯滑窗足以处理长距离依赖
- ✕忽略混合架构必须在预训练阶段就使用
🎯 Interviewer Follow-ups
- ?为什么纯滑窗不够?
- ?全局 token 与全注意力层如何选择?
📚
Associated Knowledge Base Guides & Mindmaps
Explore the comprehensive technical article, exam cards, and global architecture tree.