回顾2024下半年AI研究亮点,涵盖Llama 3、推理优化、多模态、o1复现、精度缩放及Phi-4合成数据等关键进展。
原文标题:2024 年值得关注的 AI 研究论文 Part 2
原文作者:图灵编辑部
冷月清谈:
7月,Llama 3模型家族发布,重点在于预训练和后训练流程的升级,例如更大的词汇量、分组查询注意力机制以及从RLHF-PPO到DPO的转变。8月,一篇论文探讨了通过扩展测试时间计算来提升LLM输出质量,提出了两种主要方法:生成多个候选答案并选择最佳答案,以及动态更新模型的响应分布。研究发现,对于简单和中等难度的问题,增加推理时间计算比使用更大的模型更有效。9月,NVIDIA的NVLM论文比较了两种多模态LLM范式:统一嵌入解码器架构和跨模态注意力架构,并提出了一种混合架构。10月,一篇关于复现OpenAI o1推理能力的论文探讨了旅程学习方法,该方法在训练中不仅关注最终答案,还关注整个试错过程。11月,一篇关于LLM精度缩放定律的论文扩展了Chinchilla缩放定律,将低精度训练和推理纳入考量,并发现更多的数据并不总是更好,尤其是在低精度量化的情况下。12月,Phi-4技术报告探讨了使用合成数据训练LLM的效果,发现合成数据虽然有益,但过高比例可能会影响知识性表现。
怜星夜思:
2、合成数据在未来LLM训练中会占据主导地位吗?它会取代真实数据吗?
3、除了文章中提到的技术,还有什么其他方法可以优化LLM的推理性能?
原文内容
这篇文章是系列文章的第二部分,聚焦于 2024 年下半年。如果你对上半年(1 月至 6 月)的研究感兴趣,可以点击查看。
选择的标准不算完全客观,更多是基于我个人对本年度亮点的判断。此外,我也尽量挑选不同主题的论文,而不仅仅聚焦 LLM 模型发布。希望你读得开心,也欢迎交流!
我的新书《从零构建大模型》中文版(预计 2 月底上市)
欢迎大家购买支持!!
(中文版封面)7 月
Llama 3 模型家族
大家可能已经非常熟悉 Meta AI 的 Llama 3 模型和相关论文,但由于这些模型的重要性和广泛应用,我想将 7 月的重点放在这篇 Grattafiori 等人在 2024 年 7 月发表的《Llama 3 模型家族》(The Llama 3 Herd of Models,https://arxiv.org/abs/2407.21783)论文。
Llama 3 系列最大的亮点在于其预训练和后训练流程的显著升级,与 Llama 2 相比更加成熟。这种趋势不仅适用于 Llama 3,还包括 Gemma 2、Qwen 2 和 Apple 的基础模型等其他 LLM,关于这些新范式的详细讨论可以参考我几个月前的文章【新的 LLM 预训练和后训练范式】https://magazine.sebastianraschka.com/p/new-llm-pre-training-and-post-training。
7.1 Llama 3 模型架构概览
Llama 3 系列最初发布了两个模型规格:8 亿和 700 亿参数。然而团队持续优化,陆续推出了 Llama 3.1、3.2 和 3.3 版本。以下是不同版本的参数规模:
-
Llama 3(2024 年 4 月发布)
-
8B 参数
-
70B 参数
-
Llama 3.1(2024 年 7 月,论文中详细讨论)
-
8B 参数
-
70B 参数
-
405B 参数
-
Llama 3.2(2024 年 9 月发布)
-
1B 参数
-
3B 参数
-
11B 参数(支持视觉功能)
-
90B 参数(支持视觉功能)
-
Llama 3.3(2024 年 12 月发布)
-
70B 参数
总体来看,Llama 3 的架构与 Llama 2 的架构非常相似,但主要改进体现在更大的词汇量和为小模型变体引入的分组查询注意力机制(Grouped-Query Attention)。下图总结了两代模型的主要差异点:
Llama 2 和 Llama 3 的对比,来自《从零构建大模型》(预计2月底上市)的附加内容如果你对 Llama 模型的架构细节感兴趣,那么有一种很好的学习方法就是自己从零开始实现模型,然后加载预训练的权重进行验证。我在 GitHub 上有一个从零实现的代码库(https://github.com/rasbt/LLMs-from-scratch/tree/main/ch05/07_gpt_to_llama),可以将 GPT-2 转换为 Llama 2、Llama 3、Llama 3.1 和 Llama 3.2。
GPT-2 转换为 Llama 2、Llama 3、Llama 3.1 和 Llama 3.2。来自《从零构建大模型》(预计2月底上市)的附加内容7.2 Llama 3 的训练
相比 Llama 2,Llama 3 的一个显著升级是它的训练数据量达到了 15 万亿 token。以下是不同模型训练集规模的对比:
不同模型训练集规模比较Llama 3 的预训练采用了多阶段流程。本文主要聚焦于 Llama 3.1 的预训练技术,我将其方法总结在下图中:
Llama 3.1 预训练技术总结在后训练阶段,Llama 3 从 Llama 2 使用的 RLHF-PPO 方法切换为 DPO 方法。以下图表展示了这些技术的对比:
Llama 3.1 后训练技术总结由于本文还要介绍其他 5 篇论文,关于更多细节和其他模型的对比,在这里不再赘述。如果感兴趣可以参考我之前的文章【新的 LLM 预训练和后训练范式】。
7.3 多模态 Llama
Llama 3.2 还推出了支持多模态的模型,但这些模型在实际应用中的普及程度有限,讨论也相对较少。关于多模态技术,我们将在文章 9 月部分详细探讨。
7.4 Llama 3 的影响与应用
自 Llama 3 发布已经半年有余,Llama 模型仍然是最知名、使用最广泛的开源 LLM 之一(根据我的个人观察,没有具体引用数据)。这些模型易于理解和使用,其受欢迎的原因可能在于 Llama 品牌的知名度高,加上在多种通用任务上的出色表现,以及它们便于微调的特性。
Meta AI 持续改进 Llama 3 模型,推出了 3.1、3.2 和 3.3 版本,覆盖多种规模,从适用于设备端场景的 1B 模型到高性能应用的 400B 模型。
尽管市场上有许多竞争性开源 LLM,如 Olmo 2、Qwen 2.5、Gemma 2 和 Phi-4 等,我相信 Llama 模型将继续成为大多数用户的首选,就像 ChatGPT 在面对 Anthropic Claude、Google Gemini 和 DeepSeek 等竞争者时依然保持了强劲人气。
我个人非常期待 Llama 4,希望它能在 2025 年推出。
8 月
通过扩展推理阶段计算能力优化 LLM
本月推荐的论文是《优化 LLM 测试时间计算的扩展比扩展模型参数更有效》(Scaling LLM Test-Time Compute Optimally can be More Effective than Scaling Model Parameters,2024 年 8 月,https://arxiv.org/abs/2408.03314),这是一篇内容详实且写得很好的论文,提供了一些关于优化推理阶段(即部署阶段)LLM 响应的新见解。
8.1 通过增加测试时间计算提升输出质量
这篇论文的核心观点是探讨:增加测试时间计算是否以及如何能提升 LLM 的输出质量。
简单来说,可以把这个问题比作人类在面对困难任务时,如果有更多时间思考,通常能给出更好的答案。同样地,LLM 如果在推理时分配更多时间或资源,也可能生成更优质的结果。用更技术化的表达,研究人员试图了解:在推理阶段增加额外的计算量,能否让模型超越其训练性能。
此外,研究还探讨了在固定计算预算下,推理阶段的额外计算是否比将同等计算预算用于进一步预训练模型更有效。
8.2 优化测试时间计算技术
论文详细描述了优化和扩展测试时间计算的技术。如果你认真考虑在实际环境中部署 LLM(比如前面提到的 Llama 模型),我强烈建议你仔细阅读这篇论文的完整内容。
简单来说,扩展测试时间计算的两种主要方法是:
-
生成多个候选答案,并通过一个额外训练的“基于过程的验证器奖励模型”(process-based verifier reward model)选出最佳答案。
-
动态更新模型的响应分布,也就是说,在推理生成的过程中实时调整答案(这也需要额外的模型支持)。
举个简单的例子来说明第一种方法:提高测试时间计算能力一种常见方法是使用 “N 选 1”采样(Best-of-N sampling)。具体来说,LLM 可以同时生成多个候选答案,然后利用验证器奖励模型挑选出最佳答案。
值得注意的是,“N 选 1”采样只是这类方法的一个例子,还有许多搜索算法属于这一类,比如:束搜索(beam-search)、前瞻搜索(lookahead-search),以及N 选 1等。以下图示展示了这些方法的对比:
不同的基于搜索的方法依赖于一个基于过程和奖励的模型来选择最佳答案。来自 LLM Test-Time Compute 论文,https://arxiv.org/abs/2408.03314另一种方法属于第二类,即按顺序修正模型的响应,如下图所示。
顺序修正方法。来自 LLM Test-Time Compute 论文,https://arxiv.org/abs/2408.03314具体选择哪种方法,取决于底层 LLM 和具体问题类型。例如,基于修正的推理方法在处理复杂问题时表现更好,但在简单问题上可能反而降低性能。
论文还提出了一种“最优策略”:根据查询难度动态选择合适的推理方法,从而在性能和计算效率之间找到平衡。
8.3 测试时间计算与预训练更大的模型
如果计算预算固定,哪种方式更划算:使用更大的模型还是增加推理时间预算?
在这里,假设每次查询的成本是相同的,因为运行大模型的推理成本比小模型更高。
研究发现,对于难度较大的问题,大模型的表现优于通过前面讨论的推理扩展策略获得额外计算资源的小模型。
然而,对于简单和中等难度的问题,通过增加推理时间计算,可以在相同的计算预算下达到与大 14 倍的模型相当的性能!
8.4 测试时间计算扩展的未来前景
目前,大多数开源模型(如 Llama 3)都是直接生成答案。然而,论文指出,通过分配更多的推理计算,可以显著提升响应质量。如果你正在部署 LLM,这篇论文绝对值得深入研究。
当然,为大型模型增加推理计算预算会显著提高运行成本,但如果针对复杂问题选择性地应用,这种方法可以显著提升质量和准确性,用户也会对此十分受用。此外,这种方法对于提升小型设备上的 LLM 性能也非常有前景,尤其是在 Apple Intelligence 和 Microsoft Copilot 等项目的大力推动下,这可能成为未来的热门领域。
9 月
对比多模态 LLM 的范式
2024 年,多模态 LLM 领域取得了不少进展,尤其是开源权重模型的发布。
多模态 LLM 的图示,它可以接受不同的输入模式(音频、文本、图像和视频)并返回文本作为输出模式。其中,NVIDIA 的论文 《NVLM:开源的前沿级多模态 LLM》(NVLM: Open Frontier-Class Multimodal LLMs,2024 年 9 月,https://arxiv.org/abs/2409.11402)特别引人注目,因为它全面比较了两种主流的多模态范式。
9.1 多模态 LLM 的两大主流架构
多模态 LLM 的开发通常采用以下两种方法:
-
方法 A:统一嵌入解码器架构(Unified Embedding Decoder Architecture)
-
方法 B:跨模态注意力架构(Cross-Modality Attention Architecture)
如上图所示,统一嵌入解码器架构(方法 A)依赖于单一的解码器模型,类似于未经修改的 LLM 架构,如 GPT-2 或 Llama 3.2。该方法将图像转换为与文本 token 相同嵌入大小的 token,使 LLM 能够处理拼接在一起的文本和图像输入 token。
相比之下,跨模态注意力架构(方法 B)则在注意力层中直接通过跨注意力机制整合图像和文本的嵌入。
9.2 NVIDIA 的混合方法
NVIDIA 的 NVLM 论文亮点在于对多模态方法的全面对比:
-
NVLM-D:对应方法 A,解码器架构。
-
NVLM-X:对应方法 B,跨模态注意力架构。
-
NVLM-H:混合架构,结合两者优势,先处理图像缩略图,再用跨注意力机制细化高分辨率细节。
总结:
-
NVLM-X:在高分辨率图像处理上效率更高。
-
NVLM-D:在 OCR 相关任务中精度更高。
-
NVLM-H:综合两者优点,实现最佳性能。
这篇论文的对比分析为未来多模态 LLM 的优化提供了重要参考,也表明混合方法在应对多模态输入时具有巨大潜力。
9.3 2025 年的多模态 LLM 发展前景
多模态 LLM 是文本 LLM 的下一步逻辑演进。像 OpenAI、Google 和 Anthropic 等主流服务商已经支持图像等多模态输入。不过,就我个人使用体验来说,这种多模态能力的需求仅占大约 1%,通常是一些简单的任务,比如“把这张表格转成 Markdown 格式”。
目前,开源 LLM 大多仍以文本为主,因为文本处理相对简单。但随着工具和 API 不断完善,我相信未来会有更多支持多模态的开源 LLM 可供选择,并逐步走向普及。
10 月
复现 OpenAI o1 的推理能力
十月份的亮点是论文 《O1复现之旅:战略进展报告(第一部分)》(O1 Replication Journey: A Strategic Progress Report -- Part 1. 2024 年 10 月,https://arxiv.org/abs/2410.18982),由 Quin 等人撰写。
OpenAI 的 ChatGPT o1(以及现在的 o3)因其在推理任务中的卓越表现而广受关注,被认为在 LLM 性能提升上代表了一种全新范式。虽然 o1 的具体实现细节尚未公开,但已有多篇论文尝试复现或描述其机制。这篇论文独特的结构和对学术研究现状的广泛哲学思考让我印象深刻,因此被选为本月推荐。
10.1 快捷学习 vs. 旅程学习
论文的核心观点之一是,o1 可能采用了一种名为旅程学习(journey learning)的训练方法,而非传统的快捷学习(shortcut learning)。
传统上,LLM 的训练是通过学习正确的解决路径来完成的(shortcut learning)。而在旅程学习中,监督微调不仅仅关注最终的正确答案,而是包括整个试错和纠正过程。图注来自O1 Replication 论文。值得注意的是,旅程学习的方法与树形搜索或束搜索(beam-search)技术中修正步骤有些相似,这在本文前面 “8 月:通过扩展推理时间计算优化 LLM” 部分有讨论。
然而,细微的差别在于,研究人员在模型的微调过程中创建了旅程学习的训练样本,而不仅仅是在推理过程中应用这种技术。顺便提一下,文章中没有提到他们在推理过程中所使用的具体技术。
10.2 构建“长思维”
研究人员通过构建推理树,强调试错和纠正过程。他们在推理树的每个节点上标注了奖励模型的评分,说明该步骤是正确还是错误,并给出相应的理由。
他们接着通过监督微调和 DPO(决策过程优化)训练了一个 deepseek-math-7b-base 模型,并进行了两种不同的训练方式:
-
第一种是传统的快捷学习方法,只提供了正确的中间步骤。
-
第二种是他们提出的旅程学习方法,这种方法训练时不仅包括正确的答案,还包括错误的答案、回溯过程等思维过程。
(顺便提一下,每种方法他们仅用了 327 个训练样本!)
如下面的图表所示,在 MATH500 基准数据集上,旅程学习方法的表现明显好于快捷学习,差距相当显著。
使用快捷学习和旅程学习方法训练的 LLM。来自 O1 Replication 论文,https://arxiv.org/abs/2410.1898210.3 蒸馏法——快速提升性能的利器?
论文发布一个月后,研究团队发布了第二部分报告 《O1复现之旅第二部分:通过简单蒸馏超越O1-preview,重大进展还是苦涩教训?》(One month later, the team released another report: O1 Replication Journey -- Part 2: Surpassing O1-preview through Simple Distillation, Big Progress or Bitter Lesson? 2024 年 11 月,https://arxiv.org/abs/2411.16489),探讨了一种通过蒸馏快速提升性能的方法。
通过精心设计的提示,他们从 o1 中提取推理过程来训练模型,并达到了与 o1-preview 和 o1-mini 相当的性能。由于文章内容较为复杂,这里不详细展开,但我想分享一张有趣的图表,这张图表总结了收集长思维数据时的成本权衡。
10.4 AI 研究现状的反思
报告第二部分的一个重点是“简单蒸馏的苦涩教训”。虽然蒸馏方法在实践中效果不错,但它并不是推动技术进步的关键。最好的情况是,蒸馏可以让你达到现有模型的性能,但并不能创造新的性能纪录。下面是论文中的三段引言,可能提醒我们当前研究的一些问题:
-
“从‘如何工作’到‘什么有效’的转变,标志着研究思维的根本变化,这种变化可能会对未来的创新能力产生深远影响。”
-
“第一性原理思维的丧失尤其令人担忧,因为这削弱了科学创新的基础。”
-
“追求快速成果的压力可能会让更深入的技术研究变得不被重视,同时也可能让学生远离那些更具挑战性的基础研究方向。”
就我个人来说,我依然认为学术界(现在往往与行业合作)有很多优秀且重要的创意,这些创意可以带来实质性的影响。比如,我特别喜欢的 LoRA 和 DPO 就是其中的典型例子。问题是,许多有前景的创意并没有得到大规模验证,因为大学通常缺乏足够的资源来支持这些实验。
我不确定该如何找到完美的解决方案,我也理解公司不能随便泄露自己的商业机密。但如果公司能在使用学术论文中的创新时,公开承认这一点,那将非常有益。这种认可能激励和奖励那些愿意公开其研究成果的研究人员,同时也有助于推动技术进步,让我们更清楚哪些方法在实践中真正有效。
10.5 o1 与 o3 模型对 LLM 未来的启示
尽管论文未完全复现 o1 的机制,但其提供了许多实用想法,帮助提升推理性能。我相信类似 o1 和 o3 的“长思维”模型将继续在 LLM 研究中扮演关键角色。这类模型推理成本高昂,但在复杂推理任务中几乎是性能的“黄金标准”。
但由于成本较高,o1 模型并非每种情况的最佳选择。不过,对于诸如语法修正、翻译等简单任务,可能并不需要使用推理能力过于强大的模型。这需要根据预算、延迟等实际因素,选择合适的 LLM 来平衡成本与效益。
11 月
LLM 精度缩放定律
起初,我打算选择 Allen AI 的《Tulu 3: Pushing Frontiers in Open Language Model Post-Training》论文,因为他们详细介绍了 Llama 后训练方法及配方,包括 DPO 和 PPO 方法的比较研究,以及一种新的偏好对齐方法——可验证反馈的强化学习。在这种方法中,他们使用了可验证的查询(比如数学和编程问题),可以轻松生成真实答案,而不是依赖奖励模型。
不过,经过一番思考,我最终决定选择 Kumar 等人于 2024 年 11 月发布的《精度缩放定律》(Scaling Laws for Precision,https://arxiv.org/abs/2411.04330)论文,因为这篇论文对 2022 年《训练计算最优的大语言模型》(Training Compute-Optimal Large Language Models,https://arxiv.org/abs/2203.15556)论文中的 Chinchilla 缩放定律进行了重要更新,后者主要用于确定计算最优的大语言模型的参数数量和预训练数据集的大小。
简而言之,《精度缩放定律》论文将 Chinchilla 缩放定律应用于低精度训练和推理(16 位及以下),这种低精度方法在近年来越来越流行。例如,论文将低精度训练和后训练量化的影响统一成一个功能形式,能够预测它们对模型性能带来的额外损失。
11.1 Chinchilla 缩放定律回顾
原始的 Chinchilla 缩放定律来自 2022 年的《训练计算最优的大语言模型》论文,描述了 LLM 的参数数量(N)和数据集大小(D)如何共同影响模型的验证损失,并为选择合适的模型和训练数据集大小提供了参考。
根据经验法则,在固定计算预算的情况下,数据集大小 D 与参数数量 N 之间的最佳比例大约为 D/N ≈ 20。
这个数据-参数比被称为 “Chinchilla-optimal”,因为它在相同的训练成本下比其他比率能够获得更低的验证损失。
不过,现代研究中有很多例外。例如,Llama 3 团队使用了 15 万亿个 token 进行训练,之前我们也提到过。以 8B 版本为例,这个比率是 15,000,000,000,000 ÷ 8,000,000,000 = 1,875。
我个人认为,比起精确的数据参数比率,更重要的是理解模型和数据集的大小需要按比例缩放。
11.2 低精度训练
在进一步讨论低精度缩放定律之前,先简单介绍一下 LLM (或深度神经网络)权重的不同数字精度格式。
据我所知,以下是用于训练 GPT 2、GPT 3 和 Llama 2、Llama 3 模型时所采用的精度格式,供比较使用:
Float32 是标准的 32 位浮点格式,广泛用于训练深度神经网络,因为它在范围和精度之间提供了很好的平衡。如今,所有低于 Float32 的格式都被视为低精度(尽管“低精度”的定义类似于“大语言模型”中的“大”,有些时候是个相对的标准)。
Float16,也称为半精度,使用 16 位,这样可以节省内存并加速计算,但它的动态范围较窄。
32 位与 16 位浮点精度比较Bfloat16(Brain Float 16)也是一种 16 位格式,但与 Float16 相比,它通过牺牲一些精度来增加指数部分的位数,使得它能够更有效地表示非常大的和非常小的数字。因此,Bfloat16 在深度学习应用中能够有效避免数值溢出或下溢的问题,尤其是在处理大范围数值时非常有用。
常规 16 位浮点数与流行的 16 位脑浮点数精度的比较需要特别指出的是,我这里只讨论了 32 位和 16 位浮点格式,但现在训练领域正朝着使用更低精度的格式发展。例如,在 Llama 3 论文中提到过 8 位浮点格式作为实验性的方案。而 DeepSeek-v3 模型(2024 年 12 月 26 日发布)则完全采用了 8 位浮点数进行预训练。
11.3 精度缩放定律的要点
这篇论文很长且内容很有意思,推荐大家阅读完整篇。不过,文章的核心内容是,研究人员通过引入一个“精度”因子 P,扩展了原来的 Chinchilla 缩放定律。具体来说,他们把模型的参数数量 N 重新解释为“有效参数数量”,这个数量会随着精度降低而缩小。(详细的数学公式可以参考论文。)
他们还添加了一个额外的项,用来描述后训练量化(例如将模型转为低精度格式)如何影响模型性能的下降。(虽然我没有在这篇文章中介绍量化的基本概念,但因为文章已经很长,可能会在以后有机会再讨论这个话题。)
下图很好地展示了一个有趣的观点:更多的预训练数据并不一定总是更好。如果模型在训练后使用非常低的精度(比如 int3)进行量化,反而可能会对模型性能产生负面影响。这一点我觉得非常有意思。
更多训练数据对验证损失的影响(不同量化格式下)从上图来看,一个重要的结论是,像 Llama 3 这样的模型在使用更多数据进行训练后,由于在过多的数据上进行了“过度训练”,它们变得更难在训练后进行低精度量化。这意味着,过多的训练数据可能使得量化变得更加困难。
11.4 2025 年的模型缩放定律
除了对 Chinchilla 缩放定律的必要更新,精度缩放定律研究还揭示了 2025 年的一个关键挑战:随着像 Llama 3 这样的模型在更大数据集上进行训练,它们可能会在低精度格式(如 INT3)量化时面临更大的性能损失。
这项发现提醒我们需要重新思考“更多数据就是更好”的固有观念,在数据集规模和高效推理的实际限制之间找到平衡。同时,这也是推动硬件优化的一个重要启示。
此外,数据集的质量往往在缩放定律的研究中被忽视,而数据的本质对模型性能可能有至关重要的影响。关于这一点,我们将在 Phi-4 的讨论中进一步探讨。
12 月
Phi-4 与合成数据学习
2024 年下半年发布了许多有趣的模型,包括圣诞节当天发布的 DeepSeek-V3。但最终,我选择了微软发布的 Phi-4 技术报告,因为它在使用合成数据方面提供了独特的洞察。
12.1 Phi-4 性能表现
《Phi-4 技术报告》(Phi-4 Technical Report,2024 年 12 月,https://arxiv.org/abs/2412.08905)由 Abdin 等人撰写,描述了微软最新 14 亿参数开源权重 LLM 的训练过程。Phi-4 的独特之处在于,它主要使用 GPT-4o 生成的合成数据进行训练。根据基准测试,它在同类模型中表现优异,甚至超过了其前身 Phi-3(Phi-3 主要基于非合成数据训练)。
phi-4 与其他类似和不同尺寸模型的性能比较。来自 phi-4 论文,https://arxiv.org/abs/2412.08905不过,Phi-4 在 SimpleQA 基准测试中的表现略差。可能的原因是 SimpleQA 是 2024 年 10 月发布的全新基准,由 OpenAI 设计,未被纳入 GPT-4o 或其他数据集的训练中。此外,Phi-4 或许在其他基准上的过拟合导致了其在未见数据上的性能下降。这仅是我的假设,值得进一步研究。
12.2 合成数据的启示
让我们先看看训练数据集的构成,然后总结论文中关于合成数据的消融研究。
用于训练 phi-4 的数据集混合。来自 phi-4 论文,https://arxiv.org/abs/2412.08905研究发现,虽然合成数据总体上对模型有益,但如果完全依赖合成数据,模型在知识性基准上的表现会变差。这或许是因为合成数据缺乏足够的知识信息,或者包含了更多事实性错误(如幻觉)。
同时,研究表明,在合成数据与网页数据的合理配比中,增加合成数据的训练轮次(epoch)比仅仅增加网页数据更能提升性能,如下图所示。
不同合成/网络数据集比率的模型性能比较。来自 phi-4 论文,https://arxiv.org/abs/2412.08905研究表明,合成数据虽然有显著优势,但过高的占比可能会对知识性表现造成负面影响。这是否因为合成数据缺乏知识性信息,还是包含更多幻觉错误,仍需进一步研究。不过,在合理的比例下,增加合成数据的训练轮数(epoch)已被证明能够有效提升模型性能,这为未来如何更好地利用合成数据提供了重要参考。
12.3 合成数据的未来重要性
《Phi-4 技术报告》提供了对合成数据使用的有趣见解,特别是它在模型预训练中的潜力。随着模型和数据集规模的扩展规律趋于平台期(尽管 Llama 3 论文提到它们还没有在 15 万亿 token 时看到收敛),研究人员和工程师们正在寻求新的方式来推动技术的进一步发展。
当然,训练前和训练后的技术改进仍然是推动技术进步的重要因素。但我认为,合成数据的使用将成为一种有效的方式,可以 a) 用更少的数据创建预训练的基础模型,或者 b) 创建更加优秀的基础模型(例如 Llama 3 数据集的 15 万亿 token,再加上 40% 的合成数据 token)。
我认为,高质量数据的使用可以类似于迁移学习。与其在原始的、未经处理的互联网数据上进行预训练,并在后期进行优化,不如利用通过高质量模型(如已经经过大量改进的 GPT-4o)生成的合成数据,作为模型的“加速器”。换句话说,使用高质量的训练数据能够帮助模型更高效地从一开始就学习。
总结与展望
希望这些研究摘要对你有所帮助!本文比计划的要长,最后让我简短总结一些关键领域的进展和未来趋势。
多模态 LLM
去年我预测 LLM 会逐步多模态化,现在所有主要的专有 LLM 提供商都支持多模态输入(至少包括图像)。这种转变已经全面展开,未来我们还会看到更多开源的多模态 LLM 项目。
不过,从实际应用角度看,文本输入在大多数场景中仍然足够,开发更强大的推理模型(如 o1 和即将推出的 o3)可能是更重要的方向。
计算效率
LLM 的训练和使用成本非常高昂,因此未来会有更多方法提升计算效率。例如,像 DeepSeek-V3 的训练成本估计高达 500 万美元,而 Llama 3 的 405B 版本甚至用了10 倍的计算资源(约 3084 万 GPU 小时)。这些数据充分反映了 LLM 领域对计算资源的需求激增,也凸显了如何通过创新技术(如量化、动态编码)提升效率的重要性。
来自 DeepSeek-v3 报告的粗略估算,https://github.com/deepseek-ai/DeepSeek-V3/blob/main/DeepSeek_V3.pdf提高效率的技术包括混合专家模型(MoE)、分组查询注意力(Llama 模型采用)以及动态字节编码(Byte Latent Transformer)等。未来,这些方向仍然值得期待。关于动态字节编码技术的详细机制,建议参考相关文献进一步了解。
状态空间模型的前景
你可能已经注意到,我没有讨论 state space models(状态空间模型)。这是因为我目前的关注点主要集中在基于 Transformer 的 LLM 上。虽然我对状态空间模型非常感兴趣,但它们目前仍处于相对实验阶段。而且,Transformer 在各种任务上的表现依然非常出色,这使得选择其他替代方案的吸引力并不大。
然而,这并不意味着状态空间模型领域没有取得进展。我看到不少有趣的相关论文。一个明显的趋势是,现在的状态空间模型几乎都变成了与 Transformer 模型的自注意力机制相结合的混合模型。例如:
-
Jamba-1.5: 大规模的混合 Transformer-Mamba 模型
-
The Mamba in the Llama: 混合模型的提炼与加速
-
Samba: 用于高效无限上下文语言建模的简单混合状态空间模型
从这个角度看,这些混合模型也变得越来越消耗计算资源。如果当前的趋势持续下去,通过对 Transformer 基础模型的效率优化,以及将自注意力机制融入状态空间模型,这两类模型可能会在性能和效率之间找到一个平衡点。这无疑是一个值得关注的研究方向。
通过扩展推动 LLM 发展
接近 2024 年年末时,有关 LLM 扩展“即将终结”的讨论开始浮现,原因是互联网中可用的数据似乎快要耗尽。这一观点源于 Ilya Sutskever(OpenAI 联合创始人之一,也是 GPT 系列论文的作者之一)在 NeurIPS 大会上的演讲。不过很遗憾,我今年未能参加这次会议,因此对具体细节不太了解。
无论如何,这个话题很有意思。因为互联网数据以指数级速度增长,据我查到的数据显示每天新增大约 15.87 TB 的数据,但并非所有数据都是文本形式,也不是所有数据都适合用于 LLM 训练。然而,正如我们在 Phi-4 模型中看到的那样,通过数据筛选和优化仍然有很大的潜力,单靠训练数据本身就能实现一些突破。
我同意通过增加数据规模获得的收益正在逐渐递减。我预计未来的收益虽然会越来越小,但这也意味着我们可能正在接近一个性能的“平台期”。这其实并不是坏事,因为这为探索其他改进方式创造了机会。
其中一个值得关注的改进方向是后训练阶段优化(post-training)。近年来发布的 LLM 模型已经在这方面展现了一些成效,例如去年夏天我在文章【新的 LLM 预训练和后训练范式】中讨论的那些进展。未来,我相信这将是实现进一步提升的重要领域之一。
我的 2025 展望
今年,我很享受对 Llama 3 各个版本的探索和实验,期待 Llama 4 的发布,特别是那些小型、适合本地开发的版本,这样在笔记本电脑就能进行实验。
此外,今年我还计划更多地尝试针对特定用途的模型微调,而非聚焦于通用聊天机器人领域(该领域的竞争已经非常激烈)。我们已经看到了一些这样的尝试,比如最近的 Qwen 2.5 Coder 和 Qwen 2.5 Math,虽然很遗憾我还没有机会在这篇文章中介绍它们。
总之,我可以继续执行我的愿望清单和计划,2025 年将是又一个充满挑战和快速发展的年份!可以肯定的是,它绝对不会无聊!
相信我的新书 《从零构建大模型》(预计 2 月底上市)会带给你许多启发,因为它对 LLM 的工作原理进行了前所未有的深入讲解。
(中文版封面)你的支持对我来说弥足珍贵,谢谢!
行动时刻到了!
-
中文版预计 2 月底上市!
-
加入大模型交流群,抢先读,并有机会参与图书共创!