69

什么是投机采样 (Speculative Decoding)?为什么能加速推理?

模型部署与推理优化困难

📋 面试问题

什么是投机采样 (Speculative Decoding)?为什么能加速推理?

✅ 期望回答

投机采样用一个小型「草稿模型」(Draft Model)推测多个token,再由目标大模型一次性验证(并行接受或拒绝),从而减少大模型的串行调用次数

流程:

1. Draft Model(小模型,如LLaMA 68M)快速生成K个推测token

2. Target Model(大模型,如LLaMA 70B)一次性计算这K个token上每个位置的概率

3. 验证:逐个位置比较Draft和Target的概率分布,接受或拒绝每个token

4. 如果某位置被拒绝,从该位置用Target Model重新采样

加速原理:
  • 大模型每步串行生成1个token(原始)-> 改为一次性验证K个token(投机采样)
  • 理论上加速比接近K(实践中2-3倍),前提是Draft Model足够准确

关键难点:选择合适的Draft Model(太小不准确、太大失去速度优势);两个模型的KV Cache协同管理 代表实现:SpecInfer、Medusa(Draft思路)、Lookahead Decoding
#投机采样#Speculative Decoding#加速