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上概率小于小模型的,即小模型"更有把握"),就"采纳"它;如果中途发现不一致,就在那个位置停止,用大模型重新生成。

      • 那么下一轮:
相关推荐
程序猿tu2 分钟前
Axios学习笔记
笔记·学习
笑鸿的学习笔记2 小时前
虚幻引擎5-Unreal Engine笔记之SET节点的输出引脚获取设置后的最新变量值
笔记·ue5·虚幻
草莓熊Lotso2 小时前
【数据结构初阶】--算法复杂度的深度解析
c语言·开发语言·数据结构·经验分享·笔记·其他·算法
东京老树根3 小时前
SAP学习笔记 - 开发27 - 前端Fiori开发 Routing and Navigation(路由和导航)
笔记·学习
凤年徐6 小时前
【数据结构初阶】单链表
c语言·开发语言·数据结构·c++·经验分享·笔记·链表
阿阳微客9 小时前
Steam 搬砖项目深度拆解:从抵触到真香的转型之路
前端·笔记·学习·游戏
WarPigs10 小时前
Unity性能优化笔记
笔记·unity·游戏引擎
px不是xp13 小时前
山东大学算法设计与分析复习笔记
笔记·算法·贪心算法·动态规划·图搜索算法
echo haha13 小时前
第7章 :面向对象
笔记