返回介绍

数学基础

统计学习

深度学习

工具

Scala

五十一、PaLM2 [2023](粗读)

发布于 2023-07-17 23:38:25 字数 13809 浏览 0 评论 0 收藏 0

原始论文 《PaLM 2 Technical Report》 92 页,这里进行了精简。

  1. 随着规模的扩大和 Transformer 架构,大型语言模型(large language model: LLM )在过去几年中在语言理解和语言生成能力方面表现出强大的性能,导致 reasoning 、数学、科学和语言任务的突破性表现。这些进展的关键因素是扩大模型规模和数据量。到目前为止,大多数 LLM 都遵循一个标准的配方,主要是具有 language modeling objective 的单语语料库。

    我们介绍 PaLM 2 ,它是 PaLM 的后继者,是一个统一了建模进展、数据改进、以及 scaling insight 的语言模型。PaLM 2 结合了以下一系列不同的研究进展:

    • compute-optimal scaling:最近,compute-optimal scaling《Training compute-optimal large language models》)表明,数据规模至少与模型规模一样重要。我们对这项研究进行了验证,并同样发现数据规模和模型的大小应该大致按 1:1 的比例缩放,以在给定的训练计算量的条件下实现最佳性能(与过去的趋势相反,其中模型的缩放速度比数据集快 3 倍)。

    • 改进的 dataset mixture:以前的大型预训练语言模型通常使用以英语文本为主的数据集。我们设计了一个更多语言、更多样化的 pre-training mixture ,它延伸到数百种语言和领域(例如,编程语言、数学、以及平行多语言文档)。我们表明,更大的模型可以处理更多不同的非英语数据集,而不会导致英语语言理解性能的下降,并应用数据去重来减少 memorization《Deduplicating training data makes language models better》)。

    • 架构和 objective 的改进:我们的模型架构是基于 Transformer 的。过去的 LLM 几乎只使用单一的 causal language modeling objectivemasked language modeling objective 。鉴于 UL2《UL2: Unifying language learning paradigms》)的强大结果,我们在这个模型中使用了不同 pre-training objective 的调优好的 mixture ,以训练模型理解语言的不同方面。

    PaLM 2 家族中最大的模型(即,PaLM 2-L ),明显比最大的 PaLM 模型小,但使用更多的训练计算量。我们的评估结果显示,PaLM 2模型在各种任务中的表现明显优于PaLM,包括自然语言生成、翻译和推理。这些结果表明,模型的scaling 并不是提高性能的唯一途径。相反,性能可以通过精细的数据选择、以及更高效的 architecture/objective 来实现。此外,规模更小但质量更高的模型可以显著提高 inference 效率、降低 serving 成本,并使模型的下游 application 应用于更多用户和 application

    PaLM 2 展示了重要的多语言、代码生成、以及推理能力,我们在 Figure 2Figure 3 中进行了说明。更多的例子可以在附录 B 中找到。PaLM 2 在现实世界的高级语言能力考试中的表现明显优于 PaLM ,并通过了所有被评估语言的考试(见 Figure 1 )。对于某些考试来说,这是一个足以教授该语言的语言能力水平。在本报告中,生成的样本和测量的指标都来自于模型本身,没有任何外部的增强功能,如谷歌搜索或翻译。

    PaLM 2 包含 control tokens ,以实现 inference 期间对毒性的控制,与之前的工作相比,只修改了预训练的一小部分(《Pretraining language models with human preferences》)。 特殊的 'canary' token sequence 被注入到 PaLM 2 的预训练数据中,以便能够改进对不同语言的 memorization 度量。我们发现:PaLM 2 的平均逐字记忆率低于 PaLM ;对于尾部语言,我们观察到,只有当数据在文档中重复多次时,记忆率才会高于英语。 我们表明,PaLM 2 具有更好的多语言毒性分类能力,并在一系列潜在的下游用途中评估了潜在的危害和 bias。我们还包括对预训练数据中人类的表现的分析。这些部分有助于下游开发者评估其特定应用背景下的潜在危害,以便他们在开发早期优先考虑额外的程序和技术保障措施。本报告的其余部分重点描述了设计 PaLM 2 和评估其能力的考虑因素。

51.1 Scaling Law 实验

  1. 《Scaling laws for neural language models》 研究了训练数据量(D$ D $ )和模型大小(N$ N $ )之间的关系,并得出经验性结论,即它遵循幂律且N$ N $ 需要比D$ D $ 增长更快。

    《Training compute-optimal large language models》 在这一观察的基础上进行了类似的研究,对较小模型的超参数进行了更好的调优。他们的结果证实了《Scaling laws for neural language models》power law 结论。然而,他们得出了关于最佳比例的不同结果,表明N$ N $ 和D$ D $ 应该以相等的比例增长。

    在这一节中,我们独立地推导了非常大的模型的 scaling law 。我们得出了与《Training compute-optimal large language models》 类似的结论,即D$ D $ 和N$ N $ 应该以相等的比例增长。然后,我们探讨 scaling law 对下游指标的影响。

  2. 为了确定我们配置的 scaling law ,我们遵循与《Training compute-optimal large language models》 相同的程序。我们用 4 种不同的计算预算来训练几个不同大小的模型:1×1019,1×1020,1×1021,1×1022$ 1\times 10^{19}, 1\times 10^{20}, 1\times 10^{21},1\times 10^{22} $ FLOPs 。对于每个计算预算,我们使用启发式的FLOPs6ND$ \text{FLOPs}\simeq 6ND $ (《Scaling laws for neural language models》)来决定训练每个模型的training tokens 数量。关键是,我们使用余弦学习率衰减,并确保每个模型的学习率在其最后的 training token 处完全衰减。

    对每个模型的 final validation loss 进行平滑处理,我们对每个 isoFLOPS band 进行二次方拟合(Figure 4 )。这些二次方拟合的最小值表示每个 isoFLOPS bandprojected optimal model sizeN$ N $ )。最佳D$ D $ 是由启发式 FLOPs 得出的。将这些最佳N$ N $ 和最佳D$ D $ 与 FLOPs 作图(Figure 5 ),我们发现,随着FLOPs 预算的增加,D$ D $ 和N$ N $ 应该以相同的比例增长。这与《Training compute-optimal large language models》 的结论惊人地相似,尽管该研究的规模较小,而且采用的是不同的 training mixture

    我们使用 Figure 5scaling laws 来计算1×1022,1×1021,1×1020$ 1\times 10^{22}, 1\times 10^{21},1\times 10^{20} $ FLOPs 的最佳模型参数的数量(N$ N $ )和 training tokens 数量(D$ D $ )。然后我们在相同的 pre-training mixture 上训练从 400M15B 的几个模型,最多1×1022$ 1\times 10^{22} $ FLOPs 。最后,我们计算每个模型在三个 FLOP points 的损失。所得的 training loss 和它们相关的最佳模型参数数量包括在 Table 1 中。我们可以观察到,在给定的 FLOPs 下,近似遵循最优模型参数(N$ N $ )的模型实现了最低的损失。请注意,所有提到的参数数量都是 non-embedding 参数。

  3. 下游的指标评估:为了研究在固定计算成本为1×1022$ 1\times 10^{22} $ FLOPs的情况下选择最佳参数数量和最佳 training tokens 数量的效果,我们在同一个 pretraining mixture 上训练几个模型,根据每个模型的大小在给定的 FLOPs 上进行采样并训练。值得注意的是,所选择的模型大小、架构、和 training mixture 只用于研究 scaling laws

    我们在 Table 15 中显示了不同大小的模型的下游结果。结果表明,具有1×1022$ 1\times 10^{22} $ FLOPs 的模型的最佳参数数量是10B 。然而,training loss 并不是下游指标的一个完美代理。例如,8.95B 的模型,显示出最低的损失(Table 1),最接近最佳模型,在下游任务上的表现略低于 14.7B 的模型。这表明,虽然 scaling laws 可以用来实现给定数量的 FLOPs 的最佳 training loss ,但这并不一定能迁移到实现给定任务的最佳性能。此外,除了最佳 training loss 外,还有其他一些考虑因素,如训练吞吐量和 serving latency ,这些都会影响关于最佳模型大小的决定。

51.2 训练数据集

  1. PaLM 2 的预训练语料库由一系列不同的来源组成:网络文档、书籍、代码、数学、对话数据。预训练语料库比用于训练 PaLM 的语料库大得多。与之前的大型语言模型相比,PaLM 2 的数据集包含了更高比例的非英语数据,这对多语言任务(如翻译和多语言问答)是有利的,因为模型会接触到更多的语言和文化。这使得该模型能够学习每种语言的细微差别。

    除了非英语的单语数据外,PaLM 2 还在涵盖数百种语言的平行数据(parallel data )上进行训练,这些数据的形式是一方为英语的 (source, target) 文本对。多语言平行数据的加入进一步提高了该模型理解和生成多语言文本的能力。它还为模型植入了固有的翻译能力,这对各种任务都很有用。下表列出了数百种语言中的前 50 种,以及它们在多语言网络文档子语料库中的相关百分比。我们没有应用任何过滤方法来明确地保留或删除任何语言。

  2. 我们采用了几种数据清理和质量过滤方法,包括去重、去除敏感的隐私信息、以及过滤。即使 PaLM 2 的英语数据比例比 PaLM小,我们仍然观察到英语评估数据集的明显改善。我们将此部分归因于 PaLM 2 mixture 中更高的数据质量。

  3. PaLM 2 经过训练后,模型的上下文长度大大超过了 PaLM 的长度。这种改进对于实现长对话、长距离推理和理解、摘要、以及其他需要模型考虑大量上下文的任务等能力至关重要。我们的结果表明,增加模型的上下文长度而不损害其在通用 benchmark 上的性能是可能的,这些通用 benchmark 可能不需要更长的上下文。

51.3 评估

  1. 由于 model checkpoints 的结果存在一些差异,我们对最后五个 PaLM 2 checkpoint 的结果进行平均,以便对大型模型进行更有力的比较。

  2. 评估内容省略(纯粹的技术报告,原理和细节部分很少)。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文