全球最强开源大模型Llama 3发布:使用15T数据预训练,最大模型参数将超4000亿

4月19日,Meta 发布了其最先进开源大型语言模型的下一代产品——Llama 3。

据介绍,Llama 3 在 24K GPU 集群上训练,使用了 15T 的数据,提供了 8B 和 70B 的预训练和指令微调版本,可以支持广泛的应用。

同时,Llama 3 在广泛的行业基准测试中达到了 SOTA,并提供了新的功能,如改进的推理能力。

最强开源 LLM 来了

Meta 官方博客写道,“得益于预训练和后训练的改进,我们的预训练和指令微调模型是目前 8B 和 70B 参数尺度下最好的模型。”

他们表示,后期训练程序的改进大大降低了 Llama 3 的错误拒绝率,提高了对齐度,并增加了模型响应的多样性。他们还发现,推理、代码生成和指令跟随等能力也有了很大提高,这使得 Llama 3 的可操控性更强。

与 Gemma 7B、Mistral 7B Instruct、Gemini Pro 1.5 和 Claude 3 等先进模型相比,Llama 3 在多项标准测试基准上有着更好的表现。

此外,Meta 也测试了 Llama 3 在真实世界场景中的性能。他们专门开发了一个新的高质量人类评估集,该评估集包含 1800 个提示,涵盖 12 种关键用例(征求建议、头脑风暴、分类、封闭式问题解答、编码、创意写作、提取、角色/人物角色、开放式问题解答、推理、改写和总结)。

在与 Claude Sonnet、Mistral Medium 和 GPT-3.5 的对比中, Llama 3 同样有着更好的表现。

人类标注者根据该评估集进行的偏好排名,凸显了 Llama 3 70B 指令跟随模型与真实世界中同等规模的竞争模型相比的强大性能。

Llama 3 的预训练模型还为这类规模的 LLM 模型建立了新的 SOTA。

Llama 3 是如何炼成的?

模型架构、预训练数据、扩大预训练规模和指令微调,是 Llama 3 成为最强开源 LLM 的四个关键要素。其中:

1)模型架构

Llama 3 采用了相对标准的纯解码器 transformer 架构。与 Llama 2 相比,Llama 3 得到了几项关键改进。Llama 3 使用了一个 128K token 的 tokenizer,它能更有效地编码语言,从而大幅提高模型性能。为了提高 Llama 3 模型的推理效率,Meta 在 8B 和 70B 大小的模型中都采用了分组查询关注(grouped query attention,GQA)。他们在 8192 个 token 的序列上对模型进行了训练,并使用掩码来确保自注意力不会跨越文档边界。

2)训练数据

Meta 表示,要训练出最佳的语言模型,最重要的是策划一个大型、高质量的训练数据集。

据介绍,Llama 3 在超过 15T 的 token 上进行了预训练,训练数据集是 Llama 2 的七倍,包含的代码数量也是 Llama 2 的四倍。

为了应对多语言使用情况,Llama 3 的预训练数据集中有超过 5% 的高质量非英语数据,涵盖 30 多种语言。

为了确保 Llama 3 在最高质量的数据上进行训练,Meta 开发了一系列数据过滤管道。这些管道包括使用启发式过滤器、NSFW 过滤器、语义重复数据删除方法和文本分类器来预测数据质量。他们发现,前几代 Llama 在识别高质量数据方面的表现令人惊讶,因此使用 Llama 2 为文本质量分类器生成训练数据。

此外,为评估在最终预训练数据集中混合不同来源数据的最佳方法,他们还进行了大量实验,使得他们能够选择一种数据组合,确保 Llama 3 在各种使用情况下都能表现出色,包括琐事问题、STEM、编码、历史知识等。

3)扩大预训练规模

为了在 Llama 3 模型中有效利用预训练数据,Meta 为下游基准评估制定了一系列详细的 scaling laws,这些 scaling laws 使他们能够选择最佳的数据组合,并就如何更好地使用训练计算做出最佳决定。

重要的是,在实际训练模型之前,scaling laws 允许他们预测最大模型在关键任务上的性能(例如,在 HumanEval 基准上评估的代码生成)。这有助于 Llama 3 在各种用例和功能中都能发挥强大的性能。

在开发 Llama 3 的过程中,他们对 scaling 行为进行了一些新的观察。例如,虽然 8B 参数模型的 Chinchilla 最佳训练计算量相当于 ~200B token,但他们发现,即使模型在多两个数量级的数据上进行训练后,其性能仍在不断提高。Llama 3 8B 和 70B 参数模型在经过多达 15T token 的训练后,其性能仍呈对数线性增长。

为了训练最大的 Llama 3 模型,Meta 结合了三种并行化方式:数据并行化、模型并行化和管道并行化。当同时在 16K GPU 上进行训练时,他们最高效的实现实现了每 GPU 超过 400 TFLOPS 的计算利用率。他们在两个定制的 24K GPU 集群上进行了训练运行。为了最大限度地延长 GPU 的正常运行时间,他们开发了一种新的训练堆栈,可以自动检测、处理和维护错误。他们还大大改进了硬件可靠性和无声数据损坏检测机制,并开发了新的可扩展存储系统,减少了检查点和回滚的开销。这些改进使总体有效训练时间缩短了 95% 以上,与 Llama 2 相比,将 Llama 3 的训练效率提高了约三倍。

4)指令微调

为了在聊天用例中充分释放预训练模型的潜力,Meta 还对指令微调方法进行了创新。他们的后期训练方法结合了监督微调(SFT)、拒绝采样、近似策略优化(PPO)和直接策略优化(DPO)。在 SFT 中使用的提示以及在 PPO 和 DPO 中使用的偏好排序的质量,对排列模型的性能有着极大的影响。

另外,通过 PPO 和 DPO 学习偏好排名也大大提高了 Llama 3 在推理和编码任务中的性能。他们发现,如果向模型提出一个它难以回答的推理问题,模型有时会生成正确的推理轨迹:模型知道如何得出正确答案,但不知道如何选择答案。对偏好排序的训练能让模型学会如何选择答案。

模型参数超 400B 的 Llama 3?

Meta 官方表示,Llama 3 8B 和 70B 模型只是 Llama 3 系列模型的一部分,他们后续还将推出更多版本,包括模型参数超过 400B 的 Llama 3 版本(目前仍在训练中)。

Meta 官方表示,在接下来的几个月中,他们预计将推出新功能(如多模态)、更长的上下文窗口、更多不同大小版本的模型和更强的性能,以及 Llama 3 研究论文。

另外,Llama 3 模型将很快在 AWS、Databricks、Google Cloud、Hugging Face、Kaggle、IBM WatsonX、Microsoft Azure、NVIDIA NIM 和 Snowflake 上提供,并得到 AMD、AWS、Dell、Intel、NVIDIA 和 Qualcomm 硬件平台的支持。

此外,基于 Llama 3,Meta 也发布了他们的全新 AI 助手 Meta AI。Meta 表示,“得益于我们在 Llama 3 上取得的最新进展,Meta AI 比以往任何时候都更智能、更快速、更有趣。”

来源:学术头条

0

付费内容

查看我的付费内容