Rewind Speculation
問題
Self-speculative decoding 用 L=2 做 draft、L=8 做 verify。當 draft 被拒時,標準做法是丟棄 draft 並只接受 verify 結果。但 L=8 驗證跑了全部 8 次迭代 — 如果 L=4 就足夠呢?
洞察
當 L=2 被 L=8 拒絕時,可以便宜地檢查中間深度(L=4)是否與 L=8 一致。
實測結果
H100 / 2B INT4:
| 指標 | 值 |
|---|---|
| Rewind 命中率 | 88.9% |
| Draft 接受率 | 59.5% |
88.9% 的拒絕發生在 L=2 到 L=4 之間。L=5,6,7,8 的計算沒有增加任何價值。
運作方式
使用方式
tinyloop model.tinyloop speculate \
--draft-loops 2 --verify-loops 8 --rewind-L 4
深度頻譜
為何僅限 Looped 架構
在標準 speculative decoding 中,draft 和 verify 模型是不同的神經網路。沒有「中間深度」的概念。在循環 transformer 中,L=2、L=4、L=8 都是相同模型在不同深度。Rewind 檢查不需要額外模型、額外記憶體或額外訓練。
| 系統 | Draft | Verify | 中間 | 額外記憶體 |
|---|---|---|---|---|
| Medusa | Medusa heads | 完整模型 | 無 | +heads |
| EAGLE | EAGLE head | 完整模型 | 無 | +head |
| TinyLoop | L=2 | L=8 | L=4 | 0 bytes |