简单推理:大说话模型的北极星才能

最近,很多关于较小模型的研究取得了令人振奋的对话才能,这让人们想象,是否较小的模型能具有与像 GPT-3.5 这样的庞大模型相当的本能。一般来说,说话模型具有多维才能,所以模型之间的相互对比较为困难。找到正确的衡量标准对于开发强大的说话模型至关重要。在目前阶段,研究者们急切想知道什么是度量大说话模型潜力的关键因素。

在 GPT-4 发布博客中,作者写道:“在一次随意的谈话中,GPT-3.5 和 GPT-4 之间的区别可能是微妙的。当使命的简单程度达到足够的阈值时,差异就会显现出来。” 这意味着简单使命很可能是庞大和小型说话模型的关键差异因素。

更重要的是,简单推理为基于说话模型构建大量应用程序提供了机会,从而使说话模型有机会成为下一代计算平台 / 操作系统。这有可能从根本上改变人类与机器的交互方式,重塑整个计算生态系统。

在这篇文章中,我们将仔细分析计议如何让大说话模型拥有强大的简单推理才能

图片

在天体摄影中,当使用长曝光拍摄星轨时,北极星位于星轨的中心,始终指向真正的北方。在古代,它为旅行者指引方向。目录图片

1 – 动机:大说话模型作为新一代计算平台

我们研究简单推理的原因有两个:

正如上文提到的,简单推理是标志着小模型与大模型差异的关键因素,这一点在 GPT-4 发布文章中已经计议过。简单推理是使模型成为下一代操作系统的核心才能。将说话模型视为下一代操作系统的愿景尤为有趣,因为它为构建新应用程序和创建基于说话模型的计算生态系统(可能比超级应用程序如 ChatGPT 提供更大的机会)开辟了无数可能性。简单推理才能是基础,因为如果我们希望模型成为新的操作系统,它需要能够通过与工具、用户和外部环境的所有元素互动来完成简单的指令。本文研究了如何训练具有强大简单推理才能的模型,如何举行提醒工程以充分发挥模型的推理才能,以及如何评价模型的推理本能。本文的内容分为以下几部分:在第 2 部分,我们计议了构建具有强大简单推理才能的说话模型的现有方法。简单推理的方案与通用庞大说话模型(LLM)开发的方案相似,包括三个阶段:持续训练 (continue training)、指令微调 (instruction finetuning) 和强化进修 (reinforcement learning)。我们还会进一步计议代码与推理之间令人惊讶的耦合关系。在第 3 部分,我们计议了简单推理的提醒工程 (prompt engineering) 技术。当说话模型成为新一代操作系统内核时,提醒工程 / 场景进修将成为新一代脚本编程 (shell script)。在第 4 部分,我们计议了如何评价庞大说话模型的推理才能。我们介绍 Chain-of-thought Hub,这是一个包含 100 多个推理使命的数据集合,清楚地标示了庞大与小型模型的差异。我们重点介绍了 LLaMA 65B 的出色表现。我们认为它具有非常强大的潜力,可作为再现 ChatGPT-3.5 的基座模型。

2 – 增加大说话模型推理才能的方案

推理的方案与构建通用庞大说话模型和聊天机器人的方案密切相关。总共有三个阶段:

预训练 / 持续训练:在这个阶段,我们通常在庞大数据集(如科学文献或代码数据)上训练庞大模型。有监督微调:在这个阶段,我们对模型举行微调,以便完成简单使命的指令。强化进修:在这个阶段,我们使用诸如使命是否已全部 / 部分完成的信号作为奖励。我们进一步回顾了在代码上举行训练也可以提高模型推理才能的假设。因此,在我们的文献分析中,我们同时考虑推理和编码。我们将看到,就进修方法而言,这两者之间存在惊人的相关性。2.1 – 预训练与持续训练我们分析以下几项研究:

Lewkowycz et. al. 2022. Minerva: Solving Quantitative Reasoning Problems with Language Models

在来自 Arxiv 论文的 38.5B 的 token 上继续训练 PaLM 540B。

在 MATH (一个需要使用 LaTeX 格式回答问题的困难数据集),上的得分为 33.6(GPT-4 的得分是 42.5)

Taylor et. al. 2022. Galactica: A Large Language Model for Science

在包含论文、代码、参考资料、知识库和其他内容的 106B token 上预训练一个120B说话模型。

在MATH上的表现为 20.4(Minerva 33.6,GPT-4 42.5)

Chen et. al. 2021. Codex: Evaluating Large Language Models Trained on Code

在159GB代码数据上继续训练 12B GPT-3 模型,提高了 HumanEval 数据集上的代码本能。

这些研究发现,在大量科学文献 / 代码上举行训练可以显著提高基础模型的推理/编码才能。

2.2 – 监督微调我们分析:

Chung et. al. 2022. Scaling Instruction-Finetuned Language Models

使用多样化的指令显著提高了模型零样本泛化的才能

在指令集合中混合头脑链数据(the flan collection 文章中进一步计议了这个问题)明显提高了模型的头脑链才能

注意:尽管 the flan collection 数据集从多个维度激发了基础模型的才能,但这些指令并非来自真实的聊天机器人用户互动,因此可能无法直接转化为更好的聊天本能。

Fu et. al. 2023. Specializing Smaller Language Models towards Multi-Step Reasoning

将头脑链推理才能提炼到较小规模(小于或等于 10B)的模型。通常,10B 规模的模型非常适合部署(更大的模型太贵了,更小的模型太弱了)。

本文计议了很多工程细节,如数据工程、才能平衡以及小型和庞大模型之间的差异

Li et. al. 2022. Competition-Level Code Generation with AlphaCode

在 715GB 的 GitHub 代码上预训练一个 41B 模型,然后在包含 13k 问题的 CodeContest 数据集上举行微调

在测试期间,使用采样并根据是否通过示例测试来过滤解决方案。从某种意义上说,这种做法类似于推理问题中的 self-consistency 方法。

目前关于指令微调的理解是:

通过使用对话格式的数据,将基本模型调优为聊天机器人相对容易(参见像 Alpaca 和 MOSS 这样的优秀示例)。然而,闲聊的才能并不能转化为执行简单使命的才能。从这个角度来看,模型就像人类一样:说得多不如干得好,代码见真章。

实际上,指令调优问题是一个数据混合问题:如何最好地混合来自不同来源的指令数据,以便从所有角度均匀地提高模型本能(而不是像在 CoT specialization 和 the flan collection 中计议的那样,增加一个维度但降低另一个维度)。

数据混合的简单起点是:使用 10-20 个非头脑链的数据点(以平衡不同维度的才能),但尽可能多地使用链式头脑数据(以最大化推理才能)。

2.3 – 强化进修我们分析:

Uesato. et. al. 2022. Solving math word problems with process- and outcome-based feedback

基于中间推理和最终推理结果构建奖励模型。

Le et. al. 2022. CodeRL: Mastering Code Generation through Pretrained Models and Deep Reinforcement Learning

根据诸如编译错误、运行时错误或是否通过测试等信号训练奖励模型。

这两项工作都使用中间信号(对于推理,看中间步骤是否正确;对于编码,看代码是否编译)和最终信号(对于推理,最终答案是否正确;对于编码,代码是否通过测试)作为奖励。需要注意的是,这种类型的强化进修与基于人类反馈的强化进修(RLHF)有所不同,因为它不需要人类反馈。2.4 – 推理才能和代码才能的耦合在我们之前的计议中,我们提出了一个假设,即在代码上举行训练可能会提高推理才能,原因如下:图片

代码注释是自然存在的链式头脑数据

面向过程编程类似于逐步解决使命。这适用于简单和中等简单度的使命

面向对象编程类似于将使命分解为较小的使命,然后分别解决它们。这适用于较高简单度的使命。

从这个显著的一致性中,我们看到提高推理才能与提高编程才能非常相似。在此,我们通过强调训练庞大说话模型举行推理或编码的配方相似性,深化了这个假设:图片我们看到推理和代码都经历了:在连续训练阶段,可以在基础模型上增加代码和科学文献数据。在有监督的微调阶段,可以根据要求完成简单使命的指令或编写代码对模型举行微调在强化进修阶段,将中间推理步骤 / 编译率和最终推理结果 / 代码通过率作为奖励在解码过程中,推理和编码都会采样多个解决方案,然后从解码空间中选择最佳方案。这些相似性使得代码和推理之间的联系非常有趣。

3 – 简单推理的提醒工程

在计议了如何构建具有强大推理才能的模型之后。在本节中,我们将计议如何有效地提醒模型以充分释放模型的潜力。

3.1 – 基础头脑链提醒工程

以下论文推荐给初学者:

Wei et. al. 2022. Chain-of-Thought Prompting Elicits Reasoning in Large Language Models.本文是第一篇发现当使用链式头脑举行提醒时,存在一个相变现象,表明庞大模型在很大程度上优于较小的模型,这进一步导致了涌现才能的发现。Wang et. al. 2022. Self-Consistency Improves Chain of Thought Reasoning in Language Models对采样的 CoT 推理路径举行多数投票,显著提高了推理本能。Suzgun et. al. 2022. Challenging BIG-Bench Tasks and Whether Chain-of-Thought Can Solve Them使用 CoT 处理 big-bench 中困难的使命。这篇论文的一个有意义的副产品是 BigBench Hard 数据集,它在测试模型推理才能方面非常有效。

3.2 – 进阶技巧及分析

以下论文计议了高级 CoT 提醒实践:Fu et. al. 2023. Complexity-Based Prompting for Multi-Step Reasoning使用简单链代替简单链作为上下文示例Khot et. al. 2023. Decomposed Prompting: A Modular Approach for Solving Complex Tasks将简单使命分解为更简单的使命,然后逐个解决通常,对于简单使命,首先将其分解为更简单的使命,然后逐步解决更简单的使命。以下论文计议了上下文进修为什么起作用:Xie et. al. 2021. An Explanation of In-context Learning as Implicit Bayesian Inference说话模型在提醒中的示例之间推断出一个潜在概念,并进入相应的使命模式Wei et. al. 2023. Larger language models do in-context learning differently当出现与先验知识相矛盾的上下文示例时,尽管庞大模型可能具有更强的语义先验,庞大模型可以根据提醒词来覆盖语义先验。简而言之,上下文进修的要点是提醒中的示例使模型进入相应的使命模式,然后执行使命。以下论文计议了模型在举行头脑链推理时的行为:Min et. al. 2022. Rethinking the Role of Demonstrations: What Makes In-Context Learning Work?当某些标签错误时,模型仍然可以做出正确的预测。这表明模型更受提醒的 [格式] 影响,而不是提醒的 [意义] 。Wang et. al. 2022. Towards Understanding Chain-of-Thought Prompting: An Empirical Study of What Matters即使提醒中的推理错误,模型仍然可以正确推理,但提醒的相关性和推理步骤的顺序更为重要 —— 这再次表明,模型更受提醒的 [格式] 影响,而不是提醒的[意义]。Madaan and Yazdanbakhsh. 2022. Text and Patterns: For Effective Chain of Thought, It Takes Two to Tango.详细分析显示,提醒的格式可以改善 CoT 推理(虽然内容的正确性可能不起到强烈作用)简而言之,模型只关注提醒的格式,但可能不会受到提醒正确性的显著影响。然而,模型在多大程度上会受到提醒正确性的影响,或者提醒可以在多大程度上覆盖模型的先验信念,还是一个尚待研究的问题。以下论文计议了如何通过改进和反馈来提高模型本能:Madaan. et. al. 2023. Self-refine: Iterative refinement with self-feedback模型可以在多个场景中(包括代码优化、数学推理、对话响应生成等)对自身的推理举行优化和改进。Madaan et. al. 2023. Learning Performance-Improving Code Edits在程序轨迹上举行训练可以改善编码。简而言之,以自然说话形式(而非强化进修中的奖励形式)对模型举行改进和反馈非常有效,可以进一步提高说话模型的本能(无论是通过上下文进修还是微调)。

4 – 评价大说话模型的推理才能

在计议了训练强大模型的方法和提醒技巧之后,现在我们计议对说话模型推理才能的评价。

4.1 – 评价方法的基础知识

在谈论评价时,有三个重要因素需要考虑:数据格式、才能类型和模型类型。首先,提醒时有四种数据格式:图片其中:In-context 指的是在测试问题之前附加一系列上下文示例。Zero-shot 是指在没有上下文示例的情况下直接将测试问题输入给模型。Chain-of-thought 是指在回答之前生成推理。Answer-only 是指没有链式头脑,直接给答案。对于模型才能,有两种大致正交的才能类型:知识 knowledge:模型是否了解世界推理 reasoning:模型是否可以根据其知识举行推理。这两个方面并不是严格正交的,因为一些推理规则也可以被视为某种形式的知识。然而,在评价时,这两种才能有明显的差异:一些数据集更注重对知识的评价,如 MMLU,它测试模型是否具有高达大学水平的知识。一些数据集更注重对推理的评价,如 BBH,它测试模型是否具有逐步解决问题的才能。对于知识,链式头脑与仅回答的表现相似(参见 FlanPaLM 论文)对于推理,链式头脑比仅回答表现得更好(参见原始 CoT 论文,然后参见 FlanPaLM 论文)在实践中,因为 CoT 在达到或优于 Answer-only 的表现,而且 CoT 更加用户友好(因为它告诉用户思考过程),现代聊天机器人总是部署 CoT(无论你问 ChatGPT 什么,它都会告诉你一堆它的想法)。最后,在评价方面,我们区分了两种类型的模型:预训练之后的 checkpoint 和指令微调之后的 checkpoint。预训练 checkpoint 具有 in-context learning 的才能。大多数预训练模型可以举行 in-context answer-only,一些更好的模型可以举行 in-context chain-of-thought(但目前尚不清楚为什么某些预训练模型可以举行 CoT 而其他模型却不能)。然而,预训练 checkpoint 可能无法举行 zero-shot,因为它们没有经过这方面的训练(但某些预训练检查点仍然可以举行 zero-shot CoT,请参阅 “让我们逐步思考” 的论文)。指令微调过后的 checkpoint 既具有 zero-shot 又有 in-context 的才能。这里需要注意的是,如果没调好,指令微调之后 in-context 本能可能会稍有下降。

综上所述,我们建议使用 in-context chain-of-thought 举行评价:

In-context 是评价 pretrained checkpoint 的更好方法,因为它更好地揭示了模型潜力。Zero-shot 可能低估模型本能,尤其是对于不支持 Zero-shot chain-of-thought 的(“让我们逐步思考”)的模型。Chain-of-thought prompting 是评价推理才能的更好方法,因为它比 answer-only prompting 更充分地发挥了模型的推理本能。4.2 – Chain-of-thought Hub 简介

图片

项目链接:https://github.com/FranxYao/chain-of-thought-hub在计议了所有评价基础知识之后,我们介绍 Chain-of-thought Hub,这是一个正在举行的工作,希望成为评价说话模型推理才能的统一平台。我们汇编了一个包括数学(GSM8K)、科学(MATH)、符号(BBH)、知识(MMLU)等简单推理使命的列表,以衡量哪些模型确实更好。下面是当前的排行榜。尽管许多数字还没跑出来,但当前的内容仍然能给一个大概的模型排名:图片图片总的来说:我们根据 GSM8K 对模型本能举行排名,这是一个经典的基准测试,用于衡量链式头脑数学推理本能。这不是唯一的度量标准,但一个很好的解释是 “在保持其他通用才能的同时,模型在数学方面的表现如何” —— 这也非常困难。GPT-4 在 GSM8K 和 MMLU 上明显优于所有其他模型。65B LLaMA 与 text/code-davinci-002 非常接近,这意味着基于它,如果 SFT 和 RLHF 操作正确,我们很有可能基于 65B LLaMA 复现 ChatGPT。Claude 是唯一可以与 GPT 系列相媲美的模型家族。较小的模型,如 FlanT5 11B 和 LLaMA 7B,明显落后于排行榜,这意味着简单推理可能只是庞大模型的才能。进一步地,在 github 仓库中,我们包括了:详细的实验设置和结果分析用于重现 GPT 和 Claude 所有结果的脚本试一下吧 :)

5 – 结论

在这篇文章中,我们计议了庞大说话模型的推理才能。简单推理不仅仅是因为它是更强模型与更弱模型之间的核心区分点,而且它还是模型成为下一代计算平台 / 操作系统的基础才能,从而有可能在大模型上建立一个新的生态系统。我们计议了构建具有强大推理才能的模型的方法:预训练、有监督的微调和强化进修。我们发现提高推理才能的方法与提高代码才能的方法密切相关,这加深了我们先前关于推理与代码之间密切关系的假设。我们进一步计议了高级提醒工程技巧和在执行简单推理时模型行为的分析。最后,我们计议了如何评价模型的推理才能,并介绍了 chain-of-thought hub,这是一个正在举行的项目,旨在统一评价说话模型的推理本能。我们希望这篇文章能成为构建具有强大推理才能的开源模型的路线图。人世间数百万个闲暇的小时流逝过去,方始出现一个真正的历史性时刻,人类星光闪耀的时刻  ——  《人类群星闪耀时》斯蒂芬·茨威格

附录:更多大说话模型推理的相关资源

Lil’Log 2023. Prompt Engineering

Microsoft Semantic KernelPrompt Engineering GuideHuang and Chang 2022. Towards Reasoning in Large Language Models: A Survey注:文中所提论文可以在原文页面找到相应网址。原文链接:https://yaofu.notion.site/6dafe3f8d11445ca9dcf8a2ca1c5b199

原创文章,作者:机器之心,如若转载,请注明出处:https://www.iaiol.com/news/20585

(0)
上一篇 2023年5月5日 下午3:05
下一篇 2023年5月5日 下午4:55

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注