Files
myWiki/concepts/markov-draft-head.md

44 lines
1.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
title: "Markov Draft Head"
created: 2026-06-28
updated: 2026-06-28
type: concept
tags: [speculative-decoding, draft-architecture, low-rank-factorization]
sources: [DSpark]
---
# Markov Draft Head
马尔可夫草稿头是 [[DSpark]] 的[[semi-autoregressive-generation|半自回归生成Semi-Autoregressive Generation]]中最简单的顺序块实例化,将转移偏置 $B_k$ 限制为仅依赖**紧前一个 token**,简化为一个一阶转移矩阵 $B(x_{k-1}, x_k)$。
## 低秩分解
直接存储 $|\mathcal{V}| \times |\mathcal{V}|$ 的转移矩阵不现实(典型 $10^5 \times 10^5$)。采用低秩近似:
$$B = W_1 W_2^\top$$
- $W_1 \in \mathbb{R}^{|\mathcal{V}| \times r}$:充当嵌入查找表
- $W_2 \in \mathbb{R}^{|\mathcal{V}| \times r}$:充当 logit 投影
- 默认 rank $r = 256$
给定前一 token $x_{k-1}$,位置 $k$ 的转移偏置:
$$B(x_{k-1}, \cdot) = W_1[x_{k-1}] W_2^\top \in \mathbb{R}^{|\mathcal{V}|}$$
低秩分解使得存储和每步计算量都保持较小,即使对于大词汇表也能高效运行。
## 直觉
例如,当上下文允许多种延续 "of course" 和 "no problem" 时:
- 若位置 1 采样了 "of",马尔可夫头在位置 2 提升 "course" 并抑制 "problem"
- 有效缓解[[cross-mode-collision|跨模态碰撞Cross-Mode Collision]]
## 局限性
马尔可夫头是无记忆的——位置 $k$ 无法访问 $x_{k-2}$ 之前的 token。对于需要更长依赖的后缀连贯性[[rnn-draft-head|RNN 草稿头]]通过循环状态累积完整前缀历史。
## 参考
- [[DSpark]]
- [[semi-autoregressive-generation|半自回归生成Semi-Autoregressive Generation]]
- [[rnn-draft-head|RNN 草稿头]]