LLAMA 2权威指南

简而言之,LLAMA 2 是 LLaMA1 配方的延续,在数据质量、培训技术(包括新颖的研究工件)、能力评估、安全培训和负责任的发布方面进行了实质性的技术扩展。 技术研究论文包含所有这些领域的大量细节。 总体而言,当人工智能领域的研究共享处于历史最低水平而监管捕获处于历史最高水平时,这是LLM大模型生态系统迈出的一大步。

基本模型看起来非常强大(超越 GPT3),并且经过微调的聊天模型看起来与 ChatGPT 处于同一水平。 这对开源来说是一个巨大的飞跃,对闭源提供商来说是一个巨大的打击,因为使用这种模型将为大多数公司提供更多的可定制性和更低的成本。

总之,这是我们需要了解的内容。 本文重点关注模型本身,并且整个博客都包含对其含义的分析。

  • 模型:Meta 正在发布多个模型,包括来自 7B、13B、34B、70B参数的 LLAMA 基础模型以及具有相同大小的 LLAMA 聊天变体。Meta“将预训练语料库的大小增加了 40%,将上下文长度加倍 模型 [到 4k],并采用分组查询注意力(Ainslie 等人,2023)。”
  • 能力:广泛的基准测试,我第一次确信开放模型达到了 ChatGPT 的水平(编码除外)。
  • 成本:大量的预算和承诺(例如,如果按市场价格计算,估计约为 2500 万美元)、非常庞大的团队。 制作通用模型的赌注是如此之大。
  • 其他工件:没有迹象表明奖励模型或数据集发布用于根据人类反馈进行公共强化学习(RLHF)。
  • Meta 组织:Meta AI 组织变化的迹象——这个组织似乎与 Yann Lecun 和原始 FAIR 中的每个人都不同。
  • 代码/数学/推理:论文中没有过多讨论代码数据和RLHF过程。 例如,StarCoder 在 150 亿个参数下击败了最好的模型,HumanEval 为 40.8,MBPP (Python) 为 49.5。
  • 多轮一致性:多轮一致性的新方法——受上下文蒸馏启发的 Ghost Attention (GAtt)。 在我们更好地了解如何根据我们的需求训练模型之前,这些方法通常是提高模型性能的技巧
  • 奖励模型:使用两种奖励模型来避免 Anthropic 工作中发现的安全性与有用性的权衡。
  • 数据控制:大量关于分配控制的评论(正如我所说是 RLHF 的关键)。 这很难重现。
  • RLHF流程:采用两阶段RLHF方法,从拒绝采样开始,然后进行拒绝采样+近端策略优化(PPO),表明RLHF极其重要,并且“LLM的卓越写作能力......从根本上是由RLHF驱动的”
  • 生成:需要根据上下文调整温度参数(例如创意任务需要更高的温度,参见第 5 节/图 21)
  • 安全/危害评估:非常非常长的安全评估(几乎占论文的一半)以及出于安全目的的详细背景蒸馏和 RLHF。 结果并不完美,也有差距,但这是朝着正确方向迈出的一步。
  • 许可证:该模型可用于商业用途,除非你的产品每月活跃用户数 >= 7 亿。 需要填写表格才能访问,你还可以从 HuggingFace 中心下载模型。 (此信息位于下载表格“Llama 2 社区许可协议”中)。
  • 链接:模型(🤗)、模型访问表单论文公告/Meta链接代码使用指南模型卡片演示(🤗)。

这篇文章非常技术性,因为这是由技术进步定义的一天。 Meta 已经证实了其竞争对手传闻中使用但未披露的许多技术工作。 至于这个模型的社会影响,我将在本周晚些时候或在另一篇文章中做出更多预测,欢迎继续关注。

1、LLAMA 2的哲学

一个重要的起点是尝试剖析模型的目标是什么,以及它与纸质文本中的目标有何不同。 Meta 作为一个组织显然在政治上处于极其脆弱的地位,这影响了人们对他们工作的看法。 LLAMA 2 论文感觉像是原始 LLaMA 配方的令人难以置信的成倍倍提升。 他们发现了一些可行的方法,并立即想要扩大团队和方法以使其变得更好。

LLAMA 2在任何时候都不像一个完整的项目,也不像是一个很快就会停止的项目。 事实上,该模型可能已经训练了几个月,我预计下一个模型正在开发中。 论文的支持文本,例如 引言和结论承载着本文的大量动力。 Meta 非常倾向于通过开源实现人工智能的信任、责任和民主化。 考虑到AI开发和使用中的权力不平等,民主化是最令我惊讶的。

其中,还有一些看似政治性多于实际性的微妙之处。 例如,“公开可用的在线资源”一词被多次使用,但没有详细说明 公开 的具体含义。 考虑到本文其余部分的详细程度,这很可能意味着 Meta 正在继续争夺在 Reddit 和 Twitter 等地方完全锁定之前获取所有可用的互联网数据。 我怀疑在接下来的几天里,我自己和许多其他组织的报道将继续深入探讨这些数据措辞和总体项目理念。

Meta 还试图非常明确地表明他们不使用用户数据,从而避免了 Bard 的错误。

2、LLAMA 2的基础模型

LLAMA 2在架构上与原始的 LLaMA 非常相似,除了增加上下文长度和分组查询注意力 (GQA) 之外,大部分更改都针对数据和训练过程(这将是帖子的大部分内容)。 上下文长度是聊天用例的可用性要求,后者则提高了推理速度。

我们的训练语料库包含来自公开来源的新数据组合,其中不包括来自 Meta 产品或服务的数据。 我们努力从某些已知包含大量个人信息的网站中删除数据。 我们对 2 万亿个token的数据进行了训练,因为这提供了良好的性能与成本权衡,对最真实的来源进行上采样,以增加知识并抑制幻觉。

许多愿望中的第一个,是他们详细说明哪些数据集包含大量个人信息! 这将是关键,但也与“公开的在线数据”的一般概念相结合。 重新采样更多事实数据也非常有趣,但被省略了。

本文的大部分内容都是关于评估和微调,而不是创建出色的基础模型的黑暗魔法。 这可能会巩固 Meta 作为开源大型语言模型 (LLM) 领导者的地位。

从这里开始,论文按照一般 RLHF 流程深入探讨了许多主题。 他们致力于根据偏好数据训练奖励模型,然后使用强化学习对其进行优化,以提高生成质量。 如果你不熟悉,请看下图:

3、LLAMA 2的偏好数据

这篇论文的一大收获是,Meta 公开认可了我从 Anthropic 和 OpenAI 朋友那里听到的传言:奖励模型是 RLHF 的关键,这也是LLAMA 2模型的关键。 为了获得良好的奖励模型,Meta 必须努力收集偏好数据,这些数据从开源社区正在使用的数据中得到了极大的升级。

总之,Meta 继续使用文献中经过验证的公式,但对其进行了扩展:

  • 收集二元比较而不是其他更高级的反馈类型,类似于 1-8 的李克特量表,但定性“显着更好、更好、稍微更好或可以忽略不计更好/不确定”。
  • 使用多轮偏好,其中模型响应取自具有不同温度的不同模型检查点,以产生对之间的多样性。 以这种方式改变使用的完成方式可以使偏好数据更加多样化,并为他们稍后部署的一些迭代 RLHF 提供支持。
  • 将收集的重点放在有用性和安全性(而不是诚实性)上,在数据收集时为每个数据供应商使用单独的指南(例如,安全性通常是一种更具欺骗性的提示方式)。 这与 Anthropic 的作品形成鲜明对比,他们训练了一个有帮助、诚实且无害的模型。
  • LLAMA 2团队向集合中添加了额外的安全元数据,展示了模型在每个回合中哪些响应是安全的。 当将其传递到建模阶段时,它们“不包括任何所选响应不安全而其他响应安全的示例,因为我们相信更安全的响应也将是人类更好/更喜欢的。”
  • 他们没有详细说明正在记录的其他元数据,但这可能是为了识别潜在的错误和数据问题。 其他要标记的内容可能是令人困惑的提示、需要工具来解决等。
  • 部署用于分发管理的迭代收集:“每周分批收集人工注释。随着我们收集更多偏好数据,我们的奖励模型得到改进,我们能够为 Llama 2-Chat 逐步训练更好的版本”

规模是疯狂的(如果假设供应商的大致市场价格,仅数据一项就可能花费 2000 万美元以上),而且轮次比通常可用的要多得多。 请注意,它们不会与开放的助理数据进行比较或使用,这些数据也可以用作偏好数据。 下图总结了此步骤的数据。

论文的这一部分感觉像是为更大的事情奠定了基础,这一切都在意料之中。 毕竟,Meta 确实财力雄厚。

4、LLAMA 2的奖励建模

关于奖励建模的部分主要可以概括为两个重要细节:

  • 这两种奖励模型经过训练,可以区分有用和安全的目标。
  • 使用/需要多少偏好数据的迭代部署和扩展法则。

首先,论文称,他们“训练了两种独立的奖励模型,一种针对帮助性进行了优化(称为 Helpativity RM),另一种针对安全性进行了优化(Safety RM)。” 它们都建立在基础语言模型的基础上,用线性回归层取代了正常的语言模型头。 它们没有表明模型在大小方面来自哪个预训练模型检查点,而是始终使用最新的聊天模型来最大程度地减少 RLHF 训练中的分布不匹配。

在此过程中值得注意的一些技术细节:

  • RLHF 之前的起点奖励模型是在开源数据上进行训练的,“我们没有观察到来自开源偏好数据集的负迁移”,因此他们将其保留在以后的模型中。 这些第一个模型用于对来自供应商的早期数据进行采样。
  • 保留了 Anthropic 的一些无害性数据(他们自己的 90%),但没有太多解释为什么需要它。
  • 另外,仅训练一个时期(文献中的标准)。 这是为了避免奖励模型很容易出现过度拟合。
  • 奖励模型的平均准确度仍然仅在 65-70% 范围内(如文献中所示),但也对集合中“显着不同”的标签进行了测试,并且在那里做得更好(当贴标者偏好达成一致时,准确度为 80-90%) 很强,很棒)!

比较有趣的点有以下几点:

  • 在奖励模型损失函数中添加边际项(与偏好的置信度成正比),提高有用性。 这是 OpenAI 和 Anthropic 所使用的损失函数的延续,只要标注着的打分不太嘈杂(Meta 也使用每对 3 票的共识),这似乎是一个非常合乎逻辑的决定。
  • 随着模型在其设置中收敛,模型比较之间的偏好增量随着数据供应商的批次而减少(图 25,附录)。
  • 作者将他们的奖励模型与提示 GPT4 作为奖励模型进行了比较,他们击败了GPT4,但仅在开源数据上训练的奖励模型并没有击败 GPT4。

下图展示了奖励模型的准确性如何随着时间的推移而进步。 这些数据供应商通常会批量发送数据,以验证流程是否随着时间的推移正常运行,并为模型部署者提供时间来调整生成和提示的分布。 请注意,下面的 OpenAssistant 奖励模型(基于 DeBERTa V3 Large)实际上并不是开源社区所说的“好”或任何值得注意的模型。 不知道为什么他们包括这一点。 另一方面,GPT 4 作为奖励模型是一个足够强大的基线来考虑。

当他们为微调部分做好准备时,Meta 在讨论结果的段落中隐藏了这个真相炸弹:

我们注意到,奖励模型的准确性是 Llama 2-Chat 最终性能的最重要指标之一。

众所周知,RLHF 会利用奖励模型中的所有知识,无论好坏,因此这非常符合我的世界观。 他们这样说的事实让我更加恼火,因为没有人开源一个强大的奖励模型来调查潜在问题和利用。

5、LLAMA 2的RLHF 和微调

这是这篇论文中我最喜欢的部分。 Meta 展示了他们如何使用 RLHF 来有意义地改进他们的模型。 下面是我最喜欢的图表,我已切到前面以确保你看到它。 本质上,他们采用了最好的奖励模型,并在此基础上评估了各种模型。 他们用它来展示 RLHF 过程如何将生成的文本转向更高的奖励。 如果你的奖励模型运行正常,那么这些步骤将有意义地提高你的最终输出。

Meta 使用渐进的数据分布迭代训练 5 个 RLHF 版本。

从一开始,Meta 就指出了数据质量对于这些模型的重要性(重点是我的):

质量就是你所需要的。

第三方 SFT 数据可从许多不同的来源获得,但我们发现其中许多数据的多样性和质量不足——特别是在将LLM与对话式指令保持一致方面...... 使用来自我们自己的基于供应商的注释工作的更少但质量更高的示例,我们的结果显着改善。 我们发现数万个数量级的 SFT 注释足以获得高质量的结果。

Meta 首先说开源指令数据集很无聊。 在非富裕的开源社区中,数据质量的最新趋势是过滤数据集和“未经审查”数据的概念,这很可能在他们进行监督微调(SFT)之后发生。 注释数据量(27,540)实际上仍然非常接近 Anthropic 报道的和有关 OpenAI 的传闻(约 10k 数量级)。 这是可重复性的胜利。

这一切都带有一个星号,表示高质量数据之间仍然存在多少差异:

我们还观察到,不同的标注平台和供应商可能会导致下游模型性能明显不同,这凸显了外包标注任务时进行数据检查的重要性。 为了验证我们的数据质量,我们仔细检查了一组 180 个示例,将人类提供的标注与模型通过手动检查生成的样本进行比较。 令人惊讶的是,我们发现从生成的 SFT 模型中采样的输出通常与人类注释者手写的 SFT 数据具有竞争力,这表明我们可以重新确定优先级,并将更多的注释工作投入到基于偏好的 RLHF 标注上。

这里缺失的部分可能是他们用来识别强大数据的过滤方式。 每个人都知道一些开放数据集是有偏见和奇怪的,但不知道如何轻松修复它(我怀疑答案是大量的体力劳动)。 在这些成为常识之前,指令模型的开源训练可能仍会落后。

一旦建立了数据质量部分,Meta 就会专注于虚幻的 RL 组件:

强化学习被证明非常有效,特别是考虑到其成本和时间效率。 我们的研究结果强调,RLHF 成功的关键决定因素在于它在整个批注过程中促进人类和LLM之间的协同作用。 即使有熟练的批注者,每个人的写作也会存在很大差异。 在 SFT 批注上进行微调的模型可以学习这种多样性,不幸的是,包括执行不良的批注的尾部。 此外,该模型的性能受到最熟练批注者的写作能力的限制。

这很有趣,因为这是第一篇发表的论文,指出 RLHF 从根本上提高了模型的上限,而其他研究小组则表示 RLHF 很重要,但有点把它当作一种风格或安全工具。 Meta 确实明确表示,该过程是一个“需要大量计算和批注资源”的过程,这一点长期以来一直受到怀疑。

现在,我们将继续讨论他们在 RL 部分所做的一些技术细节。 正如我在 RL 中所说的那样,从高层次来看,它似乎与分布控制报告(这是非常令人兴奋的)之外的文献相当一致。

在整个 RLHF 阶段,迭代奖励建模数据的积累与模型增强并行对于确保奖励模型保持在分布范围内至关重要。

这类事情就是为什么我得出这样的结论:高效的 RLHF 至少需要一个中等规模的团队。 一个 1-3 人的团队可以发布一个很好的指导模型,但我认为对于这种类型的 RLHF,可能至少需要 6-10 人。 随着时间的推移,这个数字会下降,但这类工作需要与外部公司签订合同并保持密切联系,由于文化和沟通不匹配,这总是有点不同步。

作者使用的 RLHF 基线是 PPO 和拒绝采样 (RS) 微调(类似于最佳 N 采样)。 PPO 是在线 RL(可以说就是试错学习)中最流行的算法,可能是因为它是最流行的。 拒绝采样是指从语言模型策略中对一批 K 个完成进行采样,然后通过奖励模型对其进行评估,返回最好的一个。 如果你通过奖励模型对最好的少数输出进行重新训练,你的策略可以得到改进。

这再次证实了该领域许多有趣的直觉,但不一定回答所有关于原因的问题。 大多数人都知道这两个选项都非常强大(请记住,OpenAI 在 InstructGPT 中使用了 PPO,在 WebGPT 中使用了拒绝采样版本),但似乎 PPO 始终是最终最好的方法。 为什么会这样,我们都还在学习中。

作者对这些方法如何比较以及何时使用做了一些基本说明:

  • 拒绝采样 (RS) 搜索范围更广(每个提示生成更多代),并且 PPO 每个奖励模型更新更多。
  • 方法之间的最终差异并不那么明显(类似于 WebGPT 的发现)。
  • 整个 RLHFV4,他们仅使用拒绝采样,然后他们在最后一步使用 PPO 和拒绝采样进行微调(PPO 在某些评估中略有优势)

6、LLAMA 2的能力评估

论文从很多方面评估了他们的模型。 这里有一些事情需要注意。 首先,如果你查看自动基准测试,例如 在开放 LLM 排行榜(MMLU、ARC 等)中经常听到的缩写词,LLAMA 2 在所有规模上都比任何其他开源模型都要好。 在论文中,我发现许多有趣的内容来自 Meta 的人类评估(例如专业数据标记者)和LLM-as-a-judge的努力(我已经广泛研究过并且很流行)。

虽然我不会继续讨论它,因为它没那么有趣,但重要的是基础模型在自动和不那么华而不实的基准(如 MMLU)上得分更高。 这个基本模型功能是其他一切所依赖的。 这就是上面的 RLHF 过程所操纵的,也是我们在使用有效的微调方法使 LLAMA 2 成为我们自己的时将使用的。 它在论文中并没有占据太多篇幅,但他们没有详细说明的大量数据工作可能是这些“基本”评估中的最大因素。 然后,RLHF 使模型更易于使用并提供这些知识。

其次,基础模型评估在某些方面是一场不公平的游戏。 他们还报告了与闭源模型相比的结果(据我所知,它远远落后于 GPT4 和 Claude 2),可以提示和操纵闭源模型来获得高分,而无需开源验证。 我很高兴这并没有完全成为一场分数操纵的竞赛。

本文的其余评估部分深入研究了当今流行的评估技术。 人类批注者和LLM-as-a-judge如今很受欢迎,因为它们既通用又可用。 提出一种新的评估技术是非常困难的,更不可能用一个新模型来很好地推出它。 评估的重点是一个人相对于同行的分数和透明度。

Meta 以图 1 开始论文,其中确实有一个很棒的标题(如下),显示该模型在与人类标注者的竞争中取得了胜利:

在审查这些结果时,值得注意的是,由于提示集的局限性、审查指南的主观性、个体评估者的主观性以及比较代际的固有困难,人类评估可能会很嘈杂。

他们谈论的结果展示了 Meta 如何进入开源领域的主导地位。 请务必查看顶部栏以查看正在比较的模型大小:

他们也采用类似的技术,但使用模型作为判断(他们的奖励模型和 GPT4)。 这是与 Anthropic 的宪法人工智能工作类似的 Elo 图(包含有关模型版本之间差异的更多信息!)。 确实需要展示 RLHF 如何成为一个随时间变化的概念。 接下来,需要有人分享每一步的数据和训练发生的情况,以便我们知道要寻找哪些迹象。

就性能而言,这些模型在 RLHFv3 之后超越了 ChatGPT(在此图中,你可以看到 PPO 方法如何在右上角提供小幅推动):

为了得到像这样展示一般能力的情节,论文中还有很多其他的评价。 例如,他们花了很多时间来建立奖励模型,我建议你检查一下。

奖励模型测试的一些亮点是:

  • 将奖励模型分数校准为一对之间偏好的人类标记者(仍然有很大的误差线)——这是一条直线,更高的人类偏好会导致更大的分数。 我怀疑这种行为非常难以实现。
  • 他们将奖励模型与在开源数据集上训练的奖励模型进行了比较。 这有助于展示开源领域的可能性。

人类/模型评估的一些亮点是:

  • 在 ChatGPT 和 LLAMA-2-Chat 输出上评估模型,以避免模型因自己的风格而产生偏差,从而提高自己的结果。 这是我在报纸上最满意的事情之一。
  • 有趣地使用评估者间可靠性指标(更多人应该使用这些指标),例如 Gwet 的 AC1/2,它们是为这项工作正确设计的统计工具。 当模型胜率更加均匀时,IRR 会下降,因此显示平局的结果应采用更大的误差线。
  • 承认人类评估的局限性:大型评估提示集并未涵盖所有现实世界的用途,缺乏编码/推理评估,并且仅评估最终的对话回合。

我对这个评估感到兴奋,它让我问:在这样的功能上能够击败 ChatGPT 的最小模型是什么? 这是开源面临的下一个挑战。

7、LLAMA 2的安全

LLAMA 2模型和报告的安全性方面是迄今为止相对于可用开源模型最大的改进(我很惊讶 Falcon 40b-instruct 在这方面的表现,听说那里的训练过程相对宽松,但我们另找时间再说)。 本节提供了大量关于安全性如何与各种培训和评估步骤相关的详细信息。 我将在未来进一步深入探讨这一点,因为随着该模型使用的增加,这个故事将会展开,特别是考虑到目前公众对人工智能的普遍批评。

我在下面包含了安全性的核心图,结果包括更多关于偏见、红队、预训练步骤等等的内容。 该图和另一个图 17(b) 显示了该模型在 2000 个对抗性提示中的违规率和红队得分方面如何被评为更安全。

鉴于从大局来看,这些模型是朝着正确方向迈出的一步,我想给作者今天的胜利,而不是在这方面过多批评他们。 当我在这里发现有趣的事情时,或者当其他人分享模型的功能时,我一定会向您更新。

我无法思考的问题是:训练对安全敏感吗? 例如。 为什么 34b 参数模型的安全性较差,以至于延迟发布? 如果你查看图 18,会发现对于大多数这些模型来说,这尤其是在多轮设置中。 那里有很多值得学习的地方。

8、结束语

最后,还有一些我觉得很有趣的事情,我可以快速评论:

我们在 Meta 的研究超级集群 (RSC)(Lee 和 Sengupta,2022)以及内部生产集群上对模型进行了预训练。

我觉得与他们所说的原因相比,更可能是计算问题:

通过这种两个集群的设置,我们能够比较这些不同类型的互连对于大规模训练的适用性

他们还深入研究有关事物的美德信号:

我们的开放发布策略也意味着这些预训练成本将不需要由其他公司承担,从而节省更多的全球资源。

最后,商业许可作为一个星号:

附加商业条款。 如果在 Llama 2 版本发布之日,被许可方或被许可方的关联公司提供的产品或服务的每月活跃用户数在上一个日历月中超过 7 亿,您必须向以下机构申请许可证: Meta,Meta 可以自行决定向您授予该权利,并且您无权行使本协议项下的任何权利,除非或直到 Meta 明确授予您此类权利。

总而言之,到目前为止,我真的很喜欢研究这个模型,而且还有更多工作要做。 我将密切关注LLAMA 2的用例,并预计写一篇后续文章。


原文链接:LLAMA 2: an incredible open-source LLM

BimAnt翻译整理,转载请标明出处