2.1 KiB
2.1 KiB
title, created, updated, type, tags, sources
| title | created | updated | type | tags | sources | ||||
|---|---|---|---|---|---|---|---|---|---|
| Semi-Autoregressive Generation | 2026-06-28 | 2026-06-28 | concept |
|
|
Semi-Autoregressive Generation
半自回归生成是 DSpark 提出的混合草稿架构,将草稿生成分为两个阶段以融合parallel-drafting的速度优势和autoregressive-drafting的质量优势。
架构
并行阶段(Parallel Stage):并行骨干网络(基于 DFlash 的 kv-injection 架构)执行单次前向传播,生成所有位置 \gamma 的隐藏状态 \{h_k\} 和基础 logits ${U_k}$。T_{draft} 仍接近 $O(1)$。
顺序阶段(Sequential Stage):轻量级顺序模块为每个草稿位置 k 注入前缀依赖的转移偏置 $B_k(x_0, x_{<k}, x_k)$,形成因果块分布:
P(X|x_0) = \prod_{k=1}^{\gamma} p_k(x_k | x_0, x_{<k})
其中每步采样基于基础 logits + 转移偏置:
p_k(v|x_0, x_{<k}) = \frac{\exp(U_k(v) + B_k(x_0, x_{<k}, v))}{\sum_{u \in \mathcal{V}} \exp(U_k(u) + B_k(x_0, x_{<k}, u))}
因为顺序模块天然是串行的,必须保持计算轻量($T_{sequential} \ll T_{parallel}$),确保总草稿延迟仍由并行阶段主导。
顺序块的两种实例化
- markov-draft-head:
B_k仅依赖前一 token $x_{k-1}$,通过低秩分解 $B=W_1 W_2$(rank $r=256$)实现高效的大词汇表转移建模 - rnn-draft-head:通过门控循环单元积累完整的块内前缀历史,
s_k = \sigma(W_g z_k) \odot s_{k-1} + (1-\sigma(W_g z_k)) \odot \tanh(W_c z_k)
效果
在 Qwen3-{4B,8B,14B} 上,DSpark 相对自回归 Eagle3 提升 26.7%-30.9%,相对并行 DFlash 提升 16.3%-18.4%。关键在于融合了并行模型的高初始 token 能力和自回归模型的后缀连贯性。