能否将扩散模型思想应用于 LLMs 领域?大型语言扩散模型(LLDM)详解
编者按: 当你面对需要高质量逆向推理能力的应用场景时,传统大语言模型是否让你感到力不从心?在诗歌逆向补全、逻辑逆向推导等任务中,为什么即使是 GPT-4o 这样的强大模型也会表现失常?
文章深入介绍了 LLaDA(Large Language Diffusion with mAsking) 这一创新模型的工作原理、训练过程与性能表现。与传统自回归模型不同,LLaDA 借鉴了计算机视觉领域的扩散模型思想,通过逐步去除掩码来生成文本,而非从左到右逐个生成 token。
性能测试显示,8B 参数的 LLaDA 基础模型明显优于同等规模的 LLaMA 2,并与 LLaMA 3 表现相当。更令人惊喜的是,LLaDA 在逆向推理任务中表现出色,有效解决了自回归模型在"逆向诅咒"上的局限性,甚至在诗歌逆向补全任务中超越了 GPT-4o 和 Qwen 2.5。
作者 | AI Papers Academy
编译 | 岳扬
在这篇文章,我们将对《Large Language Diffusion Models》这篇论文进行解析,介绍首个基于扩散模型的 LLM,该模型可与强大的 LLM 相媲美。
Paper authors (Source[1])
01 引言
近年来,大语言模型(LLMs)变得极其强大,为通向通用人工智能(AGI)铺平了道路。这些模型本质上是自回归的,即根据给定的 token 序列预测下一个 token。我们可以把这个过程想象成它们在一个词一个词地生成回答内容,其中的每个新词都基于前面已有的词汇。事实证明,这种方法非常强大,让我们取得了今天的成就。
然而,这种方法也面临着一些挑战。例如,按顺序逐个生成 token 的计算成本很高 。此外,固有的从左到右的建模方式限制了模型在逆向推理(reversal reasoning)任务中的有效性。 后文将提到一个案例 ------ 逆向诗歌补全任务,即给定诗歌中的一句话,模型需要预测诗中这句话前一句的内容。无论如何,有一点值得探讨:自回归建模是否唯一可行的方式?
《Large Language Diffusion Models》对这一假设提出了挑战。正如 LLMs 是自然语言处理的基石一样,扩散模型则是计算机视觉领域的王者,是顶级文生图模型的核心技术。在本文中,我们将解读研究人员如何将扩散模型应用于语言建模领域。
02 什么是扩散模型?
让我们先快速回顾一下计算机视觉中的扩散模型,这将有助于我们理解本文的核心思想。
扩散模型逐步去除图像中的噪声(Cat images source[2])
扩散模型以提示词作为输入,例如"一只猫坐在一台笔记本电脑上"。模型通过学习逐步去除图像中的噪声来生成清晰的图像。模型从最左侧所示的随机噪声图像开始,每一步都去除部分噪声。去噪过程是以输入提示词为条件的,因此最终生成的图像会匹配提示词内容。上图中的三个点(...)表示本例中我们跳过了一些中间步骤。最终我们得到一张清晰的猫图像,这就是扩散模型根据给定提示词生成的最终输出。
在训练过程中,为了学习如何去除噪声,我们会逐步向清晰图像添加噪声,这个过程称为扩散过程。该领域已取得一系列进展,但这不是本文的重点。
03 大型语言扩散模型的直观理解
LLaDA 逐步去除 token 序列中的掩码
本文介绍的模型名为 LLaDA,全称是 Large Language Diffusion with mAsking。我们从最左侧的 token 序列开始,其中黑色部分表示被掩码的 token。黄色的未掩码 token 代表提示词,黑色的被掩码 token 代表待生成的响应。请注意,这里的被掩码的 token 由特殊符号表示,不同于我们之前提到的图像中叠加的噪声。
我们逐步去除 token 序列中的掩码,蓝色代表已解除掩码的 token。最终,我们移除所有掩码,得到针对输入提示词的完整响应。在本例中,清晰的响应 token 序列对应文字为:"从前,在一个小村庄里,住着一只聪明的老猫头鹰(Once upon a time, in a small village, there lived a wise old owl)"。
04 LLaDA 训练与推理过程概述
让我们来深入探讨大型语言扩散模型的更多细节。下图展示了该模型的两个训练阶段(预训练与监督式微调)以及推理过程。
LLaDA 训练过程与推理示意图(Source[1])
4.1 LLaDA 训练阶段1 ------ 预训练阶段
我们从预训练阶段开始,如上图最左侧所示。
顶部是训练集中的一个样本序列。我们随机选择掩码比例 t(0 到 1 之间的值),随后独立地为每个 token 随机决定是否掩码,概率为 t。这一步会产生部分被掩码的 token 序列。该序列被输入模型的核心组件 ------ mask predictor(这是一个基于 Transformer 的模型),该模型通过计算掩码 token 上的交叉熵损失,训练其还原被掩码的 token。预训练数据集规模为 2.3 万亿 token。
4.2 LLaDA 训练阶段2 ------ 监督式微调
第二个训练阶段是监督式微调,如上图中间部分所示。此阶段的目的是增强 LLaDA 遵循指令的能力。
顶部是包含提示词和响应的样本。我们希望训练模型根据提示词生成响应。与预训练类似,我们随机掩码样本中的部分 token,但此次仅掩码响应部分的 token,保留提示词完整。随后,我们将提示词和部分被掩码的响应输入 mask predictor,以恢复响应中被掩码的 token。此过程与预训练阶段非常相似,区别在于此过程仅掩码样本的响应部分。
训练过程的掩码比例(决定多少 token 被掩码)对每个样本都是随机的。这意味着在训练过程中,模型会接触到几乎未掩码的样本和高度掩码的样本。
在这一阶段,研究人员使用了 450 万样本训练 LLaDA。由于样本长度不一致,因此研究人员使用特殊的序列结束 tokens 填充样本。通过这种方式,模型就能在人类设置的固定长度的(artificial fixed-length)输入上进行训练,并能预测序列结束 tokens,从而终止生成过程。
4.3 推理阶段:LLaDA 如何生成文本
了解完 LLaDA 的训练方式后,接下来让我们回顾一下上图右侧所示的推理过程。
给定提示词后,会创建包含完整提示词和被完全掩码的响应的样本。然后通过称为逆向扩散过程(reverse diffusion process)的迭代流程,逐步解除响应部分的掩码。每次迭代开始时,我们会得到一个包含完整提示词和被部分掩码的响应的序列。将其输入 mask predictor 后,它会预测出所有被掩码的 token。然而,部分预测出的 token 会被重新掩码,因此响应仍保持部分掩码状态,直到最后一次迭代,我们才会获得完整响应。
4.4 推理期间的重新掩码策略
迭代次数是模型的超参数,需要在计算成本与生成质量间权衡(更多迭代次数可提升生成质量)。在每次迭代中,重新掩码的 token 数量基于总迭代次数。但如何决定哪些 token 需要重新掩码?研究者未采用随机方法,而是使用了两种更有效的策略:
- 低置信度重新掩码(Low-confidence remasking) ------ 此方法中,预测置信度最低的 token 会被重新掩码。对于每个 token,mask predictor 都会从词表中选择概率最高的 token 作为预测结果。此处的最高概率代表 token 预测的置信度,反映模型对此 token 相较于其他选项的正确性确定程度。
- 半自回归重新掩码(Semi-autoregressive remasking) ------ 响应长度可能因提示词而异。对于需要简短回答的提示词,大部分响应内容可能是序列结束标记。为避免生成过多高置信度的序列结束标记,会将待生成的响应划分为多个区块,并按从左到右顺序依次处理。在每个区块内部应用逆向扩散过程进行采样。
05 LLaDA Results
5.1 Benchmark Results
LLaDA 与 LLaMA 模型对比(Source[1])
在上图中,我们对比了 8B 参数的 LLaDA 基础模型与规模相近的 LLaMA 3 和 LLaMA 2 在多项任务上的表现。使用红色标注的 LLaDA 明显优于使用蓝色标注的 LLaMA 2,并与使用紫色标注的 LLaMA 3 表现相当,甚至在部分任务上优于 LLaMA 3。
图中结果为各模型基础版本的测试结果。未在此图表展示的经过指令调优的模型性能对比中,LLaMA 3 更具优势。但需注意,指令调优版 LLaMA 3 在预训练阶段后既进行了监督式微调也进行了强化学习训练,而指令调优版 LLaDA 仅在预训练阶段后进行了监督式微调。
5.2 LLaDA 在不同规模下的性能扩展规律(LLaDA Scaling Trends)
LLaDA 在语言任务上的性能扩展规律(Source[1])
论文中另一张有趣的图表展示了 LLaDA 在语言任务上的扩展能力。研究人员以不同训练计算资源(x 轴显示)训练了规模相近的 LLaDA 和自回归基线模型(autoregressive baselines)。每张子图代表不同任务,y 轴显示模型性能。LLaDA 展现出强大的扩展能力,与自回归基线模型竞争力相当。 在数学数据集 GSM8K 上,LLaDA 的扩展优势尤为显著;而在推理数据集 PIQA 上,LLaDA 稍落后于自回归模型,但随着浮点运算量(FLOPs)的增加,差距逐渐缩小。
5.3 打破「逆向诅咒」
诗歌补全任务上的模型性能对比(Source[1])
上表展示了诗歌补全任务上的模型性能对比。该任务要求模型根据给定诗句生成下一句(正向任务)或前一句(逆向任务)。观察 GPT-4o 的表现,其在正向任务中的性能显著优于逆向任务,这是自回归训练固有的局限性。LLaDA 则在此取得突破,在正向和逆向任务中表现更均衡,并在逆向任务中超越 GPT-4o 和 Qwen 2.5。大型语言扩散模型在更大规模的模型训练中表现如何,让我们拭目以待!
06 结语:语言模型迎来新时代?
LLaDA 通过将扩散模型应用于文本生成任务,掀起了语言建模的范式转变。其双向推理能力与强大的扩展性,向传统的自回归模型发起了挑战。虽然该模型尚处探索初期,但这场技术跃迁或将定义 AI 发展的下一程,未来可期。
Thanks for reading!
Hope you have enjoyed and learned new things from this blog!
About the author
AI Papers Academy
At AI Papers Academy, we simplify AI research papers and concepts, making AI more accessible.
Our goal is to save you time by breaking down complex ideas into clear, digestible insights.
END
本期互动内容 🍻
❓有人认为扩散模型对文本生成是'杀鸡用牛刀',你同意吗?为什么?
🔗文中链接🔗
[1]https://arxiv.org/abs/2502.09992
[2]https://developer.nvidia.com/blog/improving-diffusion-models-as-an-alternative-to-gans-part-1/
原文链接:
https://aipapersacademy.com/large-language-diffusion-models/

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Spark on K8s 在vivo大数据平台的混部实战
作者:vivo 互联网大数据团队- Qin Yehai 在离线混部可以提高整体的资源利用率,不过离线Spark任务部署到混部容器集群需要做一定的改造,本文将从在离线混部中的离线任务的角度,讲述离线任务是如何进行容器化、平台上的离线任务如何平滑地提交到混部集群、离线任务在混部集群中如何调度的完整实现以及过程中的问题解决。 一、在离线业务差异 互联网数据业务服务一般可以分为在线服务和离线任务两大类,在线服务是指那些长时间运行、随时响应对实时性要求高、负载压力随着接收流量起伏的服务,如电商、游戏等服务,离线任务是指运行周期短、可执行时间提交对实时性要求低、有一定容错性、负载压力基本可控的服务,如离线计算任务、模型训练等。一般在线服务在白天时段繁忙,离线任务在凌晨繁忙,两者的业务高峰期存在错峰现象,如果按传统方式在线和离线都是分别独立机器部署,业务高峰时期需要更多机器来支持,业务低峰期又存在部分机器空闲,整体资源利用率都不高。因此行业提出来在离线混部的解决方案,在线和离线业务通过混部系统部署在同一批机器,实现共享资源并错峰互补,提高整体的资源利用率。目前业内利用混部技术可以将数据中心的CPU利...
- 下一篇
Flink + Doris 实时湖仓解决方案
摘要:本文整理自 SelectDB 技术副总裁、Apache Doris PMC Chair 陈明雨老师在 Flink Forward Asia 2024 行业解决方案(二) 专场中的分享。内容主要分为以下三个部分: Introduction: What is Apache Doris Lakehouse Solution: Apache Flink + Paimon + Doris Ecosystem: Doris Community & Clould Introduction What is Apache Doris Apache Doris 是一款基于 MPP 架构的高性能、实时分析型数据库。它以高效、简单和统一的特性著称,能够在亚秒级的时间内返回海量数据的查询结果。Doris 既能支持高并发的点查询场景,也能支持高吞吐的复杂分析场景。 上图是 Apache Doris 在大数据架构中的定位。Doris 的上游是数据源层,包括高业务数据库、数据流、数据湖等。Doris 通过两种方式对接这些数据源。 第一种方式是通过 Spark、 Flink 等流批处理系统对上游数据进行采...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- CentOS7,CentOS8安装Elasticsearch6.8.6
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- Mario游戏-低调大师作品
- CentOS8编译安装MySQL8.0.19
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- CentOS7,8上快速安装Gitea,搭建Git服务器
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- Docker安装Oracle12C,快速搭建Oracle学习环境
- CentOS6,7,8上安装Nginx,支持https2.0的开启