LLM 笔记:Speculative Decoding 投机采样

1 基本介绍

  • 投机采样(Speculative Sampling)是一种并行预测多个可能输出,然后快速验证并采纳正确部分的加速策略
    • 在不牺牲输出质量的前提下,减少语言模型生成 token 所需的时间
  • 传统的语言模型生成是 串行
    • 必须生成一个,再输入到模型中,才能生成下一个
  • 投机采样的核心思想是
    • 用一个"小模型"提前生成多个候选 token(投机结果),然后用"大模型"一起验证这批候选,并行加速

2 举例

  • 比如已有 prompt 是:"The weather today is"
  • 小模型(Draft Model)快速生成多个候选 token
    • 例如预测出:"The weather today is [sunny, and, warm, with, ...]" 共 5 个 token
  • 大模型(Target Model)验证这些 token
    • 大模型并行地计算这 5 个 token 的概率;

    • 如果小模型的结果和大模型的前几个 token 一致(大模型在这个token上概率小于小模型的,即小模型"更有把握"),就"采纳"它;如果中途发现不一致,就在那个位置停止,用大模型重新生成。

      • 那么下一轮:
相关推荐
初九之潜龙勿用2 小时前
技术与情感交织的一生 (十四)
笔记·印象笔记
love530love2 小时前
【笔记】 Podman Desktop 中部署 Stable Diffusion WebUI (GPU 支持)
人工智能·windows·笔记·python·容器·stable diffusion·podman
Olrookie2 小时前
若依前后端分离版学习笔记(十九)——导入,导出实现流程及图片,文件组件
前端·vue.js·笔记
初圣魔门首席弟子2 小时前
C++ STL string(字符串)学习笔记
c++·笔记·学习
CS_Zero2 小时前
【开发工具】Windows10&11远程Ubuntu18及以上桌面
笔记·ubuntu
iconball3 小时前
个人用云计算学习笔记 --18(NFS 服务器、iSCSI 服务器)
linux·运维·笔记·学习·云计算
肥肠可耐的西西公主3 小时前
后端(JavaWeb)学习笔记(CLASS 1):maven
笔记·学习·maven
kfepiza4 小时前
Spring的三级缓存原理 笔记251008
笔记·spring·缓存
DKPT6 小时前
JVM栈溢出和堆溢出哪个先满?
java·开发语言·jvm·笔记·学习
bnsarocket12 小时前
Verilog和FPGA的自学笔记1——FPGA
笔记·fpga开发·verilog·自学