投机解码论文阅读:Falcon

题目:Falcon: Faster and Parallel Inference of Large Language Models through Enhanced Semi-Autoregressive Drafting and Custom-Designed Decoding Tree

地址:https://arxiv.org/pdf/2412.12639

一看它的架构图,可以发现它是基于EAGLE做的改进。falcon是猎鹰的意思,也可以看出来它是从eagle改进来的。

了解EAGLE,可以参考这篇文章:投机解码EAGLE精读_eagle: speculative sampling requires rethinking fe-CSDN博客

半自回归SAR:draft 同时生成多个 token,然而SAR draft 的一个重要局限是它无法完全捕捉相同 block 内 draft tokens 之间的相互依赖关系,可能导致生成的 token 接受率较低

简单来说,相当于是在EAGLE的基础上,把它和Medusa这种半自回归预测方式融合起来。

为了提高半自回归的预测准确性,Falcon提出了一种叫做耦合顺序扫视蒸馏(CSGD)的方法。

CSGD方法是怎么做的:

  • 如下图,在训练过程中,草稿模型预测得到对下面几个token以及其特征的预测之后,会根据正确的预测(也就是LLM自回归生成的token以及特征)对草稿模型输出进行替换

  • 具体替换的比例是根据训练所处的阶段和预测结果和正确结果之间的汉明距离决定的,当前训练轮次越小、汉明距离越大,则替换的比例越高

  • 在将预测结果进行 部分替换 之后,接下来的步骤是重新输入替换后的序列 到drafter中,并计算 训练损失,从而更新模型参数

CSGD方法的理论依据:

  • SAR方法同时预测多个token(例如 k=2时,同时预测 X 和 Y)。

  • 它的目标是同时最小化 H(X)+H(Y),即同时预测两个token的不确定性。

  • 同时预测两个token X 和 Y,其总熵为:H(X)+H(Y) = H(Y∣X) + 2I(X;Y) + H(X∣Y);I(X;Y)表示的是X与Y之间的互信息

  • 传统的半自回归方式,只关注H(Y∣X),而忽略I(X;Y) 和 H(X∣Y),导致模型无法有效学习token之间的依赖关系,从而影响生成质量。

除了这些改动,本文将EAGLE在embedding之后用于降维的MLP换成了一个LSTM,相当于是能够学习到草稿模型输入的时序关系,也就是掌握了一些tokens之间的依赖关系

在实验方面,选用的模型是vicuna-7B/vicuna-13B和llama2-chat-7B和llama2-chat-13B,这是为了和eagle进行对比;对比的方法有标准投机解码、PLD、lookahead、medusa和eagle。

除了加速比的对比实验,还有对草稿序列的接受率和接收长度的对比,被对比的方法是medusa和eagle。

性能试验的评测数据集是MT-bench、HumanEval和GSM8K:

  • MT-bench,用于评估语言模型在多任务场景下的性能

  • HumanEval,用于评估代码生成模型的性能,评估指标是通过率(Pass@k),即生成的代码通过测试用例的比例

  • GSM8K,全称 Grade School Math 8K,包含 8,500 个小学水平的数学问题,目标是测试模型的数学推理能力

相关推荐
斯班奇的好朋友阿法法11 小时前
在企业的离线内网环境的服务器部署openclaw和大模型
服务器·语言模型
余俊晖11 小时前
多模态大模型后训练强化学习训练方法:Shuffle-R1
人工智能·自然语言处理·多模态
智算菩萨14 小时前
【Generative AI For Autonomous Driving】1 生成式AI重塑自动驾驶的技术浪潮与体系化挑战
论文阅读·人工智能·深度学习·机器学习·ai·自动驾驶
智算菩萨14 小时前
【Generative AI For Autonomous Driving】7 生成式AI驱动自动驾驶的未来图景:开放挑战、社会机遇与技术展望
论文阅读·人工智能·深度学习·机器学习·ai·自动驾驶
智算菩萨16 小时前
元认知AI素养:来自交互式AI展览的发现——文献精读
论文阅读·人工智能·深度学习·ai
jinanwuhuaguo20 小时前
OpenClaw字节跳动的三只不同的claw龙虾飞书妙搭 OpenClaw、ArkClaw、扣子 OpenClaw 核心区别深度解析
人工智能·语言模型·自然语言处理·visual studio code·openclaw
咚咚王者20 小时前
人工智能之语言领域 自然语言处理 第十八章 Python NLP生态
人工智能·python·自然语言处理
余俊晖21 小时前
多模态文档解析新进展:多模态OCR解析文档中的任意内容实现方案
人工智能·自然语言处理·多模态
余俊晖21 小时前
多模态文档解析最新开源进展:2B参数FireRed-OCR模型方法、数据
人工智能·自然语言处理·ocr·多模态
AustinCyy1 天前
【论文笔记】Guiding Generative Storytelling with Knowledge Graphs
论文阅读·人工智能·知识图谱