电话:4008119163
关闭
您当前的位置:首页 > 职场资讯 > 职场攻略

扩散语言模型(dLLM)走红,苹果入局,首款商业化聊天机器人上线

来源:网络整理 时间:2025-06-28 作者:佚名 浏览量:

机器之心报道

机器之心编辑部

近期,扩散型语言模型(dLLM)颇受关注。与此同时,苹果公司也加入了这一新兴领域的竞争。

dLLM 与基于 Transformer 的自回归式语言模型有所不同,它采用的是掩码式扩散模型,简称 MDM。我们之前已经介绍过 LLaDA 和 Dream 等典型案例。此外,最近首款商业化的 dLLM 聊天机器人 Mercury 也已正式投入使用,之前名为 Mercury Coder。

对此感兴趣的读者不妨前往该网站进行体验:https://poe.com/Inception-Mercury。

与自回归语言模型相比,dLLM 的一个显著主要特性在于:。此外,dLLM 并非按照从左至右的顺序进行生成,而是采取并行迭代的方式对整个序列进行优化,以此达到对内容进行全局性布局的目的。

Mercury是一款聊天应用,您可以在此链接查看其演示版本:https://x.com/InceptionAILabs/status/1938370499459092873。

苹果公司的研究小组指出,代码生成与基于扩散的深度学习模型(dLLM)的范式极为匹配,这是因为编写代码的过程往往需要非线性的多次迭代和优化。实际上,之前的Mercury Coder和Gemini Diffusion项目已经证明,采用扩散机制的代码生成器能够与最先进的自回归代码模型相媲美。

然而,开源的深度语言模型在训练和推理方面的机制尚未得到充分揭示,因此在编码任务上的实际表现尚不清晰。目前,对于深度语言模型的后训练研究,比如运用DPO训练的LLaDA1.5,以及运用GRPO训练的d1和MMaDA,其效果要么不明显,要么高度依赖于半自回归解码技术(即采用较小的块大小进行块解码)。

谈及此话题,我们今天所介绍的研究成果,旨在弥补这一领域的空白。该研究团队首先对 dLLM 的解码机制进行了深入探究,随后,他们开发了一种针对扩散 LLM 的原创性强化学习方法。

该研究以对DiffuCoder的深入剖析为基础。DiffuCoder是一款规模达到7B的代码生成型MDM,苹果公司投入了1300亿个有效token(参见arXiv:2411.04905)进行训练。此模型的表现与同等规模的自回归编码器不相上下,为探究dLLM的行为特征以及研发扩散模型的后训练策略,提供了一个功能强大的实验平台。

基于所获得的分析成果,苹果公司对GRPO进行了专门的调整和改进,并推出了一项创新算法,该算法采用了全新的耦合采样策略,命名为coupled-GRPO。

效果相当不错

DiffuCoder

首先,苹果是怎么训练出 DiffuCoder 的呢?

基本方法很常规:用大规模语料库。下图展示了其多个训练阶段。

他们率先实施了与Dream的适应性预训练相似的训练过程,这一过程位于预训练与后训练的中间阶段,类似于OpenCoder中的退火阶段;实践证明,这一方法颇为有效。随后,他们进入了指令微调阶段,该阶段旨在提升模型对指令的执行能力。最终阶段,他们引入了一种全新的 coupled-GRPO 技术(具体将在下文展开说明),旨在显著提升模型的 pass@1 编程效能。

更详细的训练配置请访问原论文。

他们在HumanEval、MBPP、EvalPlus以及BigCodeBench等基准测试中对DiffuCoder进行了性能测试,并将该模型与其它若干模型进行了对比,具体结果详见表格所示。

观察发现,DiffuCoder经过在130B代码token(包括第1阶段和第2阶段)的持续训练后,其性能已与Qwen2.5-Coder及OpenCoder相当。尽管所有深度学习语言模型在经过指令调整后都有所提升,但这种改进与它们的基础版本相比微乎其微,尤其是当与Qwen2.5-Coder+SFT模型相比时,后者在相同的数据集上通过指令微调后,其进步则显得尤为显著。

基于 DiffuCoder 理解掩码式扩散模型

LLaDA与Dream等现行的深度学习语言模型普遍采用基于低置信度的重掩码解码策略,但LLaDA通过采用半自回归的解码技术,也就是所谓的块扩散解码,在某些特定任务中能够实现性能的显著提升。此外,深度学习语言模型中还有一种常见的做法,那就是将扩散的时间步长设定为与序列长度相同,这样做可以充分利用每个token的生成过程,进而有效提高模型的性能。基于这一考虑,他们采纳了局部与整体自回归特性(AR-ness)的评估标准,旨在对深度语言模型(dLLM)的解码过程进行系统性的探究。

具体而言,他们的分析旨在揭示:

生成中的自回归性

在自回归解码的规范操作中,模型遵循从左至右的生成顺序,以此保证序列的连贯性。但扩散解码却可能采取非顺序的恢复方式。为此,研究者们提出了两个衡量标准,用以评估扩散模型的无掩码调度与自回归模式之间的相似性,这些标准涵盖了下一个token的生成模式和左优先的生成模式。

1、局部:连续下一个 token 预测

局部AR-ness@k的计算方式是基于预测序列与k范围内下一个token的预测模式匹配比率的。当k长度范围内的所有token均为前一个生成token的直接后续时,该范围可被视为任意选择。随着k值的增大,局部AR-ness会逐渐减弱,这是因为保持更长的连续范围变得越来越不易实现。

2、全局:最早掩码选择

在步骤 t 中,若预测的 token 出现在前 k 个被掩码的位置,我们将对全局 AR-ness 进行评估。这个全局 AR-ness @k 是指在每一个 t 步骤中,所有 AR-ness 比例的平均值。它反映了持续揭示最早剩余 token 的趋势,进而捕捉了从左至右的填充策略。随着 k 值的增大,这一比例也随之上升,这是因为允许的起始位置越多,达到该标准的难度就越低。在这两个指标中,数值越大意味着生成的序列自回归特性越显著。

解码分析

他们在条件生成过程中对以下对象进行自回归性比较:

iphone增强功能__苹果增强功能

1、dLLM 的解码与自回归模型有何不同?

在自回归解码的过程中,无论是局部还是全局的AR-ness值都达到了1,即完全的自回归状态。然而,如图3所示,dLLM在解码时并非始终采用纯粹的自回归模式。

在 dLLM 的解码过程中,绝大多数的 token 都并非直接来源于最左侧的掩码 token,亦非直接由后续的 token 所生成。这一发现揭示了 dLLM 在解码顺序上的灵活性,相较于传统的自回归模型,其表现更为突出。然而,无论是局部还是全局的自回归值,都更倾向于接近于1而非0,这一现象揭示了文本数据本身蕴含着某种自回归特性。无论是从零开始进行训练,还是从自回归模型进行迁移学习,基于扩散的语言模型都能够自然而然地捕捉到这些内在结构。

实验数据表明,通过适应得到的dLLM通常在自回归能力方面超越了从头开始训练的版本。其原因是,这些模型继承了原始自回归训练中从左至右的token之间的依赖性。较低的自回归值能够削弱这种依赖性,进而为并行生成创造了更多的可能性。较高的自回归系数同样具有积极影响;比如,LLaDA模型为了提升整体性能,往往需要借助半自回归(块解码)技术。在此情形下,块解码器会故意将因果偏差再次纳入到生成流程中。在DiffuCoder项目中,苹果团队坚信模型能够自主选择生成阶段中的因果关系。

2、不同的数据模态会如何影响解码范式?

图3显示,尽管数学与代码在自回归值方面存在差异,但两者均呈现出局部自回归值的多样性;然而,他们共同得出一个结论:代码生成的全局自回归值的均值偏低,而方差则相对较大。

这揭示了,在代码生成过程中,模型更倾向于首先产出较晚出现的标记,而那些最初被遮蔽的标记往往要到后期才得以恢复。其背后的原因或许在于数学文本的天然顺序性,它通常遵循从左至右的计算顺序,而代码本身又具有其固有的结构。因此,模型在生成标记时往往采取全局性的策略,就如同程序员在编写代码时不断穿梭于各个部分以优化代码实现一般。

3、自回归值 AR-ness 在不同的训练阶段如何变化?

观察图4(第一阶段)可知,在完成650亿token的训练后,他们发现自回归值相对较低。但当他们把训练规模扩大至7000亿token时,自回归值有所上升,然而整体性能却出现了下滑。

苹果推测,预训练数据的品质对性能有所制约。鉴于此,他们决定以阶段 1 的 6500 亿个 token 作为阶段 2 的起始点。在阶段 2 的训练过程中以及阶段 3 的指令调整阶段,模型在首个高质量数据周期(epoch)中,成功掌握了显著的因果偏差。然而,当 token 的数量不断上升时,任务的执行效果会有所提高,但所测得的 AR-ness 值则会逐渐降低。这一现象暗示着,在经历第一个周期之后,dLLM 将开始识别那些超出单纯自回归序列的依赖关系。经过 GRPO 的训练,模型的整体 AR-ness 也会出现下降趋势,并且,即便在解码步骤减少了一半的情况下,性能的下降幅度也会相应减小。

4、熵沉(Entropy Sink)

在dLLM进行条件生成时,首先进行的是扩散步骤,这一步骤从基于前缀提示的完全掩码补全入手,旨在恢复补全序列。在这一过程中,他们会将每个成功恢复的token的置信度得分记录于图3(a)中。

观察可知,LLaDA与Dream在解码过程中,均倾向于选取置信度最高的token,并对其他token进行重新掩蔽。LLaDA通过计算对数概率来评估置信度,而Dream则采用负熵作为衡量标准,数值越高意味着模型对该token的信心程度较高。

值得注意的是,这种分布形成了一个具有典型L形特征的图案。苹果公司把这种情形称作“熵沉”。他们推测,熵沉之所以会出现,是因为文本的固有属性使得模型更倾向于在特定前缀的右侧放置token;这些位置能够获得更显著的位置信息和更紧密的上下文关联,进而使得模型对它们赋予过高的置信度。这种现象或许与注意力下沉现象的成因相关,然而,其根本性的原因仍需进一步的深入分析和核实。对于局部邻近token的熵偏差,它能够阐释为何dLLM依旧展现出非平凡的自回归特性。

生成多样性

自回归大语言模型经过训练后,相关研究指出,强化学习模型的推理过程会受到基础模型在 pass@k 采样方面的能力所制约。鉴于此,苹果公司已在动态大语言模型中,将 pass@k 准确率纳入考量,以探索生成多样性的可能性。

如图5(右)和图6所示,DiffuCoder的基础版和经过指令微调的版本在低温条件下,单次采样的正确率(pass@1)相当高;然而,前k次采样的总体正确率(pass@k)并没有显著提高,这表明所生成的样本在多样性方面存在不足。将温度调整至适宜区间(例如1.0至1.2摄氏度),pass@k指标便有显著提高,这表明该模型实际上具备更强大的潜力。

在众多强化学习应用中,模型在推理阶段需产出多版本的答案,这样才能使强化学习在提高单次回答准确度方面发挥更大作用。DiffuCoder 的 pass@k 曲线揭示了其优化潜力巨大,这也是苹果公司研发 coupled-GRPO 算法的主要动因。

如图5(左)和图1(a)所示,随着温度的升高,模型的自回归特性会相应减弱,这表明模型在生成token时的顺序变得更加无序——这一点与传统自回归模型存在差异:在传统自回归模型中,温度仅作用于token的选择,而在动态大语言模型中,温度不仅影响token的选择,还作用于生成顺序。

coupled-GRPO

RL 类似于“试错学习”,比如在玩游戏时,人们通过反复尝试来探寻最佳策略;GRPO 则是一种对 RL 进行优化的方法,它能使语言模型的学习过程更加高效和优质。过往的研究已经证实,RL 和 GRPO 在自回归模型中效果显著,然而在扩散语言模型(dLLM)中的应用却相对较少。

将掩码扩散的演变过程描述为马尔可夫决策过程后,可以运用与PPO类似的策略优化技术。为了与GRPO更好地结合,我们必须在扩散模型中对token的概率分布进行近似处理。目前,掩码扩散模型在估计对数概率时采用的是蒙特卡洛抽样方法。但这种方法在GRPO的训练阶段会引入较大的计算成本。

以一个比喻来说,当前模型在估算“词语预测概率”时,采用的是多次随机试验(蒙特卡洛抽样)的方式,这样的做法使得训练GRPO的过程变得极为缓慢且成本高昂。举例来说,原本只需计算一次的概率,现在却需要计算多达一百次,这无疑大幅增加了电脑的计算负担,因此,这也是目前亟待解决的核心问题之一。

在计算原始GRPO损失时,仅对包含掩码标记的特定位置进行损失评估,这情形下,当采样次数受限时,往往会导致处理效率的降低以及方差增大等问题。为了提高概率估算的精确度并涵盖所有标记,苹果公司提出了耦合采样策略,该策略的核心在于执行两次相互补充的掩码操作,以此保证每个标记在扩散阶段至少经历一次解掩过程,同时在其更为逼真的语境中对概率进行评估。

coupled-GRPO 的实际实现

在本研究的实际应用中,我们选取了λ=1这一参数值,旨在在计算成本与估计精度之间取得一个平衡点。为了确保比较的公正性,我们引入了一种名为“去耦基线”的方法:该方法与原基线采用相同数量的样本,但不再要求样本之间存在互补性,即允许两次采样是相互独立的。

此外,在计算优势分数的过程中,本研究采纳了留一法(LOO)这一策略来设定基准得分,从而确保得到一个更为公正的估计值。该方案采纳了Antithetic Variates的方差降低策略,同时本文亦详述了奖励验证的细致设计方案,这其中包括了代码规范性的奖励以及测试案例成功执行的比例作为准确性奖励。具体内容请参阅原文。

coupled-GRPO 通过采用互补掩码技术、利用LOO优势进行估计以及实施温度优化策略,在扩散语言模型的训练过程中,成功实现了更加稳定的奖励学习效果和更低的AR-ness指标,从而显著提高了生成的语言质量与处理效率。实际上,这一实验成果不仅证实了强化学习与扩散模型相结合的巨大潜力,而且还为dLLM在诸如代码生成和高速推理等实际应用场景中提供了切实可行的解决方案。

未来研究可进一步探索其在多模态生成和大模型蒸馏中的应用。

客服服务热线
4008119163
24小时服务
微信公众号
手机浏览

Copyright C 2018 All Rights Reserved 版权所有 聚贤人力 皖ICP备20008326号-40

地址:安徽省合肥市高新技术开发区人力资源产业园 EMAIL:qlwl@foxmail.com

Powered by PHPYun.

用微信扫一扫