Bootstrap

One Prompt is not Enough: Automated Construction of a Mixture-of-Expert Prompts

题目

一个提示是不够的:自动构建专家提示的混合

在这里插入图片描述

论文地址:https://ar5iv.org/html/2407.00256
项目地址:https://github.com/turningpoint-ai/mixture-of-prompts

摘要

    大型语言模型 (LLM) 在语言指令和上下文演示的提示下表现出对新任务的强大泛化能力。由于这种能力敏感地取决于提示的质量,因此已经探索了各种方法来自动化指令设计。虽然这些方法显示出有希望的结果,但它们也将搜索的提示限制为一条指令。这种简化极大地限制了它们的能力,因为单个无演示的指令可能无法覆盖目标任务的整个复杂问题空间。为了缓解这个问题,我们采用了 Mixture-of-Expert 范式,并将问题空间划分为一组子区域;每个子区域都由一名专业专家管理,他们配备了一条指令和一组演示。开发了一个两阶段的过程来构建每个地区的专业专家:(1) 演示作业:受到上下文学习和内核回归之间的理论联系的启发,我们根据语义相似性将演示分为专家;(2) 指令分配:每个专家对指令进行基于区域的联合搜索,与分配给它的演示相辅相成,产生协同效应。由此产生的代号为 Mixture-of-Prompts (MoP) 的方法,在几个主要基准测试中与现有技术相比,平均胜率为 81%。

简介

    大型语言模型 (LLM) 的最新进展证明了解决用户指令描述的新任务的非凡能力(Ouyang 等人,2022;OpenAI,2023;Touvron 等人,2023;Peters 等人,2018;Devlin 等人,2018;Brown 等人,2020;Wei 等人,2022b)。尽管取得了成功,但用户意图和模型的解释之间仍然存在很大的差距。因此,精心设计的提示(又名提示工程)成为充分引出 LLM 卓越的泛化能力的重要因素(Alhoshan 等人,2022;Zhao 等人,2021;Liu 等人,2021;Lu 等人,2021;Su 等人,2022;Wang 等人,2022 年;Wei 等人,2022 年;Yao 等人,2023;Schick 等人,2023; Kojima 等人,)。但是,它通常需要通过低效的试错进行艰苦的努力。为了减少人工工作,最近的几次尝试在利用 LLM 本身来设计语言生成提示方面显示出了巨大的潜力(周 et al.,2022;Pryzant 等人,2023;Chen 等人,2023;Fernando 等人,2023;Yang 等人,2023;Xu 等人,2022)。这些方法是称为 “LLM as Optimizer” 的更广泛概念框架的一部分 (Yang 等人,2023)。虽然结果很有希望,但沿着这条路线的开创性工作主要集中在根据一组(输入、输出)演示为指定任务找到最佳的免演示指令。虽然这些方法生成的提示可以胜过人工设计的提示,但单个无演示指令可能不足以提供任务的所有可能实例或涵盖整个问题空间,从而限制了 LLM 解决问题的潜力。

    本文旨在通过优化混合提示 (MoP) 来扩大自动提示的问题空间覆盖范围。我们的主要见解是采用专家混合 (MoE) 范式(Jacobs 等人,1991;乔丹和雅各布斯,1994)将问题空间划分为多个同构区域,每个区域由一名专业专家 (PROMPT) 管理。在推理时,将选择一位专家来提示 LLM 回答新的输入查询。在 MoE 框架下,提示优化简化为专家分配问题,旨在为每位专家搜索最合适的提示,目的是优化他们混合物的整体性能。

    本文提出的另一个主要改进是扩展每个专家的提示,以包含指令和演示,并针对问题空间中的每个专家区域进行联合优化。直观地说,具体的演示擅长提供与本地区域中输入查询的详细信息相匹配的细粒度知识和专业技能(本地信息),而指令则提供解决任务(全局信息)的通用能力和高级指导;因此,它们是互补的,共同使专家能够在他们的问题区域表现出色。受此启发,我们采用了一种两阶段搜索算法,联合优化每个专家的 (demos, instruction) 对:我们首先根据语义相似性将所有演示聚类到不同的专家中,然后搜索与提示的每个演示集群互补的最佳指令。对于第一阶段,即演示分配,我们通过聚类算法将演示聚类到语义嵌入空间中的多个区域。对于第二阶段,即指令分配,我们引入了基于区域的联合搜索,以找到最佳指令来补充分配给每个专家的演示。给定一个新的测试查询,我们对包含语义上最接近它的 demo 的 EA 进行程序处理。这种方法的灵感来自最近建立的上下文学习和内核回归之间的理论联系(Han 等人,2023),这表明在 LLM 的嵌入空间中,在语义上更接近测试输入的 demo 往往在推断其答案时表现得更好。

    我们通过广泛的实证研究仔细审查了所提出的提示混合 (MoP)。我们的主要发现可以总结如下:

  1. 嵌入空间中的聚类演示可以有效地找到语义相似的集群,这有助于将测试样本准确地分配给相应的区域和最佳专家。
  2. 专家不一定越多越好:问题空间存在最佳数量的分区。
  3. 每个演示集群的最佳指令通常是不同的,因此需要联合搜索演示和指令。

    我们进一步验证了 MoP 在三个主要提示优化基准中的优势:指令归纳(Honovich 等人,2022)、超自然说明(Wang 等人,2022b)和 BIG-Bench-Hard(Suzgun 等人,2022)。这些基准测试涵盖了广泛的可能任务,包括编码、数学、常识推理、知识检索等。结果表明,MoP 超越了六种具有代表性的近期方法,在几个主要基准测试中实现了 81% 的平均胜率。我们的主要贡献可以总结如下:

  • 我们提出了一个 Mixture-of-Prompt (MoP),一个 Mixture-of-Expert 框架,将问题空间划分为同质区域。
  • 我们将每个 Expert Prompt 扩展为同时包含 instruction 和 demo,这扩大了 prompt 优化的输出空间。
  • 我们对 50 个任务的实证研究 - 提示优化文献中最大的研究之一 - 表明所提出的两步搜索算法,利用语义相似性进行演示分配和基于区域的联合搜索进行指令分配,在主要基准上实现了显着的性能提升。

相关工作

语言生成的提示优化。

    使预训练的语言模型与人类意图保持一致是释放其潜力的关键一步(Ouyang 等人,2022;Schick 等人,2023; Kojima 等人,)。一种有效的免训练对齐方法是提示优化 (PO)(Shin 等人,2020;周 et al.,2022)。PO 源自情境学习 (ICL)(戴尔,2021),主要涉及上下文演示的各种设计和安排(Wei 等人,2022 年;Yao 等人,2023)。它后来演变为自动提示工程,其中使用各种离散优化算法来搜索最佳提示(Shin 等人,2020;邓等人,2022;Zhang 等人,2022)。随着大型语言模型 (LLM) 的出现,出现了一种范式转变,即利用这些模型以类似于人类编写器的方式优化提示(周 et al.,2022;Pryzant 等人,2023;Xu 等人,2022;Yang 等人,2023;Chen 等人,2023;Fernando 等人,2023)。我们的研究建立在这一最新进展的基础上,因为这些方法产生了强大的结果,并提供了更具可解释性的优化过程。

专家混合范式。

    专家混合(Jacobs 等人,1991;乔丹和雅各布斯,1994)是机器学习社区长期关注的经典范式。MoE 结构最初是基于传统的机器学习模型研究的(Jordan 等人,1996;Collobert 等人,2001)。随后,它被扩展到深度神经网络(Eigen 等人,2013)增强其处理复杂视觉和语音问题的能力。随着这一发展,与各种基础神经网络结构集成的 MoE 层激增(Shazeer 等人,2017;Dauphin 等人,2017;Vaswani 等人,2017),从而在广泛的语言相关任务中取得了重大成就。近年来,将 MoE 层与各种基础网络架构相结合的努力在自然语言建模方面取得了显著的成功。我们的工作将这种在架构领域开发的高级范式扩展到了提示优化任务,其中每个专家都被定义为一个专门的提示。

预赛

在这里插入图片描述
图 1:MoP 图示。我们采用 MoE 范式,将问题空间划分为一组子区域。每个子区域都由一名专业专家管理,该专家配备了一条指令和一组演示。开发了一个两阶段的流程来为每个区域构建专业专家:(1) 演示作业:受 ICL 和核回归之间的理论联系的启发,我们根据 demo 的语义相似性将 demo 分组为专家;(2) 指令分配:每个专家对一条指令进行基于区域的联合搜索 (RBJS) 与分配给它的演示相辅相成,从而产生协同效应。在推理过程中,每个新查询都会路由到嵌入空间中最近的专家,然后分配的专家利用其提示(指令 + 演示)做出最终预测。

术语。

    我们首先介绍将在整篇论文中使用的关键术语。我们将 Prompt 定义为问题之前的整篇文章。我们认为 Prompt 可以分为两部分:

  1. Instruction:一组描述任务的自然语言句子,以及
  2. Demos:一组以特定方式构建的输入-输出对,用于演示如何解决任务。以下是此定义下的示例 Prompt:在这里插入图片描述从数学上讲,提示 (P) 可以表示如下(Xie 等人,2021):在这里插入图片描述这里,I 表示一条指令,{(xi , yi)} n i=1 表示上下文中的演示,即 (输入,输出) 对的集合,o delim 表示分隔符标记。

提示优化。

    最近的努力表明,在自动化快速工程流程方面具有巨大潜力。具体来说,给定一组从任务分配中采样的演示𝒟,类似于监督学习中的 “训练数据”,一个快速优化旨在找到一个指令(无演示),以最小化经验风险(或最大化分数):在这里插入图片描述其中 f(·) 表示某些特定于任务的评分函数(附录 I)。经过优化后,最佳指令可用于预测新输入,格式如下:P ∗ (x) = [I ∗ , x]。在经验风险最小化框架下,可以推导出一个基本假设,即 demos(训练数据)封装了有关任务的所有外部信息。

APE - 自动提示工程。

    与我们最相关的工作是 APE(周 et al.,2022)- 一种开创性的方法,证明 LLM 可用于优化提示。APE 的关键思想是要求 LLM 通过观察从整个训练数据集中随机采样的演示子集来诱导候选指令,并根据它们在保留的验证集(也从训练演示中分区)的排名中选择最佳指令。 正式在这里插入图片描述这里,Mϕ 表示 LLM,{I j} m j=1 是候选指令,T( ˜Dtrain) 表示所选的模板格式(见图 5)。随后,根据验证准确率从候选池中选择最佳指令:在这里插入图片描述我们建议读者参阅 K.1 节以了解更多详情。

    APE 的局限性。虽然像 APE 这样的方法在设计超越人类工程师的提示方面显示出有希望的结果,但它们仍然局限于在单个无演示指令空间中进行搜索。这样的限制会阻碍 NLP 任务中解决问题的潜力,在这种情况下,问题的复杂性可能无法仅通过单个无演示指令得到充分解决。

MoP:提示的混合

框架概述

    用于提示优化的专家混合模型。为了解决现有自动提示工程方法的上述问题,我们通过优化提示混合模型 (MoP) 来扩展自动提示工程的问题空间覆盖范围。为此,我们采用专家混合模型 (MoE) 范式 (Jacobs et al, 1991; Jordan & Jacobs, 1994) 将整个问题空间划分为 C 个区域,每个区域由一位专业专家负责。在 MoE 框架内,提示优化(等式 (2))转化为专家分配问题,旨在为每个专家寻找最合适的提示 P ∗ c,最终目标是优化整个混合模型的性能:在这里插入图片描述

    这里,(xc, yc) ∼ Vc 指的是推理时间内所使用的路由函数分配给专家 c 的数据点(我们将在后面的第 4.2 节中更详细地解释它)。值得注意的是,我们的 MoP 框架扩展了每个专家的提示,使其包含针对问题空间中每个专家区域联合优化的指令和演示;在公式 (5) 中,Pc(xc) =  Ic, V train c, xc 。直观地看,具体的演示擅长定义与局部区域内的查询匹配的细粒度细节和专业知识(局部信息),而说明则提供了解决任务的一般能力和高级解释(全局信息)。受此启发,我们引入了一种两阶段搜索算法,可以为每个专家联合优化(演示,说明)对(详见第 4.2 节和 4.3 节)。

演示作业

    在我们的两阶段搜索算法中,我们通过将训练演示分配给不同的专家来启动该过程。由于演示代表了当地的专业知识,因此它们的分配定义了 MoE 专家的设计,完全取决于构造者。虽然有很多选择,但我们提出了一种基于聚类的演示分配方法,该方法源自最近的 LLM 中的上下文学习理论。LLM 通过嵌入空间中的 Kernel Regression 从演示中学习。最近Han et al. (2023)提供了第一个理论结果,表明 LLM 在嵌入空间中从演示中执行上下文学习 (ICL) 作为内核回归。

    公式:定理 4.1. 令 {(xi , yi)} n i=1 表示提示中使用的 demo;令 K 定义一个核函数,用于度量两个数据点之间的语义相似度,可以表示为 K(xi , xj ) = ϕ(xi) T ϕ(xj ),其中有一些嵌入空间 ϕ(·)。然后,LLM 的输出 P(y|[Sn, xtest]) 以概率 1 − δ 多项式收敛到以下核回归模型。在这里插入图片描述
    定理 4.1 (Han et al, 2023) 表明,当用一组演示和一个新的测试查询 (x test) 提示 LLM 时,在嵌入空间中语义上更接近测试示例的演示对其预测的贡献更大。几项实证研究也观察到了同样的现象 (Rubin et al, 2021; Han et al, 2023; Liu et al, 2021)。

    这种行为对于 ICL 来说也很直观:提供演示的全部目的是让 LLM 利用并将其模式应用于测试输入。根据语义相似性将演示聚类到每个专家。上述分析激发了一种将演示分配给不同专家的自然方式:通过基于语义相似性对它们进行聚类。从定理 4.1 中的核心模型开始,我们的目标是将演示分成 C 组 {V1, . . . , VC },这样每个组(专家)只使用自己的演示。在这种情况下,假设同一个样本 xi 在组 c 中,它的预测将变为在这里插入图片描述并且误差 |y¯i − yˆi | 与聚类外的核项之和 滑 j /∈Vc K(xi , xj ) 有关。因此,一个好的演示分配算法将在保持聚类平衡的同时最小化聚类间核值之和,从而实现以下聚类目标:在这里插入图片描述

    根据附录 F 中的推导,这等同于以下聚类目标:在这里插入图片描述这正是嵌入空间 ϕ(·) 中 K 均值聚类的目标函数。在实践中,我们假设 ϕ(·) := Eθ(·) 是由神经网络编码器形成的映射,并在该嵌入空间中进行 K 均值聚类演示。请注意,嵌入空间的选择不必与 API 模型相同;只要嵌入空间反映了不同演示之间的高级语义相似性,就可以使用它来有效地划分问题空间。我们还在消融研究中比较了其他选项。

    关于聚类算法的选择。原则上,我们的演示分配方法允许应用任何聚类算法。在实践中,我们采用广泛采用的 K 均值系列,因为它们很简单,并进行了以下更改以更好地适合我们的应用:1)我们选择 Kmeans-auto 变体,因为它可以从数据中推断出最佳专家数量。 2)为了避免偏向于较大的聚类数量,我们在确定最佳专家数量时采用缩放惯性(公式(10))作为标准。
C ∗ = argmin C=Cmin,...,Cmax  min {V1,...,VC } C奈 c=1 奈 i∈Vc ∥ϕ(xi) − mc∥ 2 + αC (10)

    路由函数。在推理时间内,每个新查询 x 都将被路由到嵌入空间中距离其最近的专家。
c(x) = argmin c=1,...,C∗ K (ϕθ(x), µc) (11)这里,µc 是每个专家的聚类质心。然后,指定的专家 c(x) 将使用其提示(指令 + 演示)进行最终预测。

指令分配

    给定分配给每个专家的演示集,最后一步是确定每个集群的最佳指令,以便最大化混合的集体性能。 我们引入了基于区域的联合搜索 (RBJS) 算法来解决此目标。 RBJS 由两部分组成:生成候选指令并为每个专家确定最佳指令。 生成候选指令以补充演示。 如第 4.1 节所述,每个专家从存储在其分配的演示中的本地信息中获得不同的专业。 因此,他们还在一般任务解决能力方面处理不同的盲点。 因此,他们可能需要不同的指令来弥补他们的特殊需求。 受此分析的启发,对于每个专家,我们建议利用分配给其他专家的演示来生成候选指令。 这样,指令就可以潜在地捕获遗漏的信息。

    这一选择也得到了经验风险最小化框架的支持,如第 3 节所述。为了快速优化,“恶魔”——类似于监督学习中的训练数据——整合了模型可访问的所有与任务相关的外部信息。因此,利用每个专家的本地演示来生成指令只会重复现有信息。这与我们创建弥补每个专家独特专长的指令的目标相矛盾。任何现有的指令生成算法都可用于根据一组演示提出候选指令。在这项工作中,我们选择 APE 是因为它的简单性。

    确定每个专家的最佳候选人。为了从一组建议中选择最佳指令,现有的提示优化算法通常会在保留的验证集上对它们的性能进行排名,这些验证集从与训练演示相同的分布中采样。使用整个验证集来衡量专家(指令、演示)在完整数据分布上的表现。然而,这可能达不到我们的目的:在推理过程中,每个专家只负责预测他们所在地区的数据。我们的实证结果也支持这种分析;我们发现,智能交易系统在完整数据分布和本地数据分布之间的表现不一定一致(图 2(d))。

    为了在详尽搜索中缓解这个问题,我们首先将验证集中的每个输入路由到其专家,然后对最佳 (instruction, demos) 对执行联合搜索。附录中的算法 1 总结了基于区域的联合搜索算法的整个搜索过程。

实验

    在本节中,我们实验验证了 MoP,它共同寻找最佳(instruction, demos) 对,以将问题空间划分为同质区域。

在这里插入图片描述
图 2:分析。 (a) 数据分布中存在潜在模式,具有语义相似含义的演示被紧密分组。圆形、三角形和星形分别代表训练、路由验证和路由测试演示。(b) 每个专家对每个输入都有不同的任务解决能力。 (三)单个指令不足以满足所有专家的需求,这凸显了每个专家需要不同的协同指令。 (四)在本地数据分发下为每个专家评估的指令性能(即路由到每个专家的子集)与完整数据不一致;这促使在联合搜索 (RBJS) 期间执行基于区域的评估。

实验装置

    我们遵循原始 APE 论文中的设置(周 et al.,2022)但以下情况除外。

  1. 我们的评估是在 OpenAI 最新的 GPT-3.5Turbo-Instruct 模型 1 上进行的,该模型是 APE 中使用的 text-davinci 模型的经济高效(便宜 100 倍)替代品。我们在这个模型上重新运行了 APE。
  2. 对于我们所有的方法,我们报告了 3 次运行的平均值和标准差,以解释搜索阶段的随机性。

任务和评估指标。我们在三个主要的提示优化基准中实证验证了 MoP 的优势:指令归纳 (Honovich 等人,2022)、超自然说明 (Wang 等人,2022b)、BIG-Bench-Hard (Suzgun 等人,2022)。这些基准测试涵盖了广泛的可能任务,包括编码、数学、常识推理、知识检索等。我们在附录 H 中提供了每个任务的详细说明。对于这些基准测试,我们使用预定义的评分函数来衡量每个任务的任务性能(详见附录 I)。

    基线。我们将我们的方法与以下基线进行比较:APE (周 et al.,2022)在 LLM 建议的候选指令池中搜索单个指令,APE+Demos 将随机选择的演示与 APE 找到的指令相结合,APE+K 质心将与 K-means 的质心对应的演示与 APE 找到的指令 InstructZero 相结合;IZ (Chen 等人,2023)通过使用贝叶斯优化方法优化开源 LLM 的软提示,找到黑盒 LLM 的单个指令,IZ+Demos 和 IZ+K 质心与之前的 APE 变体相同。有关更多详细信息,请参阅附录 K。我们将更多部分使用我们方法的基线推迟到第 6 节中的消融研究。

    实现细节。沿前面的自动提示工作(周 et al.,2022),当使用 LLM 生成指令时,我们将温度设置为 0.9 以鼓励多样性,在使用 LLM 进行评估时,我们将温度设置为 0.0。此外,为了公平比较,我们为所有方法设置了相同的预算。关于 MoP 中的演示分配,我们在所有实验中一致使用默认超参数。更多详细信息可以在附录 L 中找到。

分析

    在深入研究主要实验之前,我们进行了实证分析,以激励我们的 MoP 框架的开发。此处显示的结果是针对自动分类任务获得的,最大专家数设置为 4。

    演示集群的可视化。基于 ICL 和核回归之间的理论联系,我们首先根据给定的一组演示的语义相似性将其聚类到区域中。为此,我们首先使用 text-embedding-ada-002 模型 2 作为文本编码器 (Eθ) 将给定的演示集映射到嵌入空间中,然后应用第 4.2 节中描述的聚类算法。

    图 1a 使用 t-SNE 投影可视化嵌入空间中的聚类。该图表明数据分布中存在潜在的模式,并且具有语义相似含义的演示紧密分组。例如,对于图 1a 所示的“自动分类”任务,与国家、计算机科学、已灭绝语言和服装相关的演示都聚类在一起。

    通过在嵌入空间中对演示进行聚类,我们可以有效地找到语义相似的聚类,从而帮助将测试查询(图 1a 中标有星号)准确地分配给相应的区域和最佳专家。专家处理不同的专业。然后,我们验证演示集群对每个测试查询性能的影响。

    为了消除指令对性能的影响,所有专家仅使用聚类演示作为提示,从而将输出空间限制为演示。随后,我们通过计算每个测试输入的总专家数量(C)中正确回答问题的专家数量来计算命中率。如果测试输入产生的命中率在 0/C 和 C/C 以外的范围内,则表明它们对分配的专家很敏感。如图 1b 所示,我们测量了命中率,并观察到 ​​83% 的测试输入的 Hit Ratio 值既不是 0 也不是 1。这意味着大多数测试输入都受到分配给它们的聚类演示类型的影响;每个专家都根据其分配的演示中的本地信息开发不同的专长,导致每个测试输入的任务解决能力存在不同的盲点。

    RBJS 的必要性。我们还研究了共同寻找最佳(说明、演示)对的必要性。为了研究这一点,我们首先将培训演示分配给 4 个不同的专家,并考虑由 LLM 生成的 8 个候选指令。然后,对于每个专家,我们通过将这些指令与每个专家特定的演示相结合,改变指令并衡量提示的测试性能。图 2(c) 可视化了每个专家的候选指令的排名。如图 2(c) 所示,每个候选指令的排名在不同专家之间差异很大。这些结果表明,单个指令不足以满足所有专家的需求,这凸显了每个专家需要不同的协同指令。这强调了 (instruction, demos) 对联合优化方案的重要性,这可以带来更好的结果。此外,对于每个区域,我们计算了 1) 从完整验证集的随机子集(联合搜索)获得的候选指令的验证排名和 2) 在目标区域 (RBJS) 内使用相同大小的路由本地验证集时获得的排名之间的相关性。如图 2(d) 所示,很明显,使用完整数据集的随机子集和使用路由本地数据之间的候选指令的验证排名存在不一致。我们将 RBJS 有效性的评估推迟到第 6.5 节中的消融研究。

在这里插入图片描述
图 3:主要结果。我们在三个主要的提示优化基准中验证了 MoP。在这些结果中,MoP 的平均性能为 52.73%,优于 APE+Demos / IZ+Demos 实现的平均性能 41.39% / 39.87%。

在这里插入图片描述
图 4:胜率矩阵。我们比较了 Instruction Induction (a) 、 SuperNI (b) 和 BIG-Bench-Hard (c) 上所有方法的成对胜率。我们的方法在各种基准中针对所有六个基线实现了最佳胜率。所有基准的 MoP 平均胜率为 81%。

主要结果

    在本节中,我们进行了一项大规模实验,将 MoP 与之前的六个 SOTA 在三个主要基准上进行比较:Instructucion-Induction(周 et al.,2022)、超自然教学(Wang 等人,2022b)和 BIG-Bench-Hard(Suzgun 等人,2022)。这些基准测试中的任务涵盖了广泛的语言理解场景,包括各种类型的推理、知识检索、编码、数学等。由于篇幅限制,我们在这里只展示了 19 个任务,并将所有结果包含在附录 J 中。如图 3 所示,MoP 的性能大大优于现有技术(APE + Demos 和 IZ + Demos)。

    此外,我们还计算了每对方法的胜率。如图 4 所示,MoP 的胜率在所有之前的六种方法中占主导地位,在三个基准测试中平均为 81%。结果不仅揭示了我们框架的优势,还表明 MoP 可以推广到广泛的任务。

消融研究

    在本节中,我们分析了所提议的 MoP 框架中不同模块的效果。我们在整个部分中对三个任务进行了实验:自动分类、数学数据集分类和分类动物任务。所有其他设置与上一节相同。

MoP 对分布外数据的稳健性

表 1:分布外数据的比较。我们比较了分布外数据的不同方法,使用嵌入模型(与 MoP 相同)对抗性创建,将原始数据集分为两个集群,一个用于训练,一个用于测试。总体而言,MoP 在此设置下实现了最佳稳健性。
在这里插入图片描述
    为了进一步评估我们的方法在分布外 (OOD) 设置下的稳健性,我们制作了可以挑战 MoP 的 OOD 数据集:使用与 MoP 相同的嵌入模型,我们将原始数据集分为两个集群:一个用于训练,另一个用于测试。这种划分确保了所有测试数据都与训练集群相距甚远,从而对 MoP 的演示分配和路由功能进行了严格的测试——可以说,这是一个比 APE 面临的更具对抗性的设置。

    表 6.1 中的结果揭示了几个见解。首先,所有方法在 OOD 数据集上都表现出性能下降。这与经验风险最小化的原则一致,其中优化严格局限于训练数据提供的信息。其次,MoP 始终优于其他基线。

    MoP 的弹性可归因于其对问题空间的战略细分。通过将空间划分为不同的区域,每个区域都由专家管理,MoP 确保即使是 OOD 查询也与最近的区域匹配。这减少了查询相对于本地化数据分布的“分布外”效应,从而使查询实际上与所选专家区域不太陌生。

不同数量的演示

在这里插入图片描述
图 5:不同数量的演示的消融研究。我们测量了每种方法在不同数量的演示中的任务性能。 这里N在 x 轴上表示训练演示的总数。

    首先,我们验证了 MoP 在不同演示数量中的基线性能。如图 5 所示,MoP 在各种演示数量的演示中始终优于基线,与 APE+Demos 相比,MoP 实现了 16.89%、22.89%、2.78% 的显着改进,与 IZ+Demos 相比,实现了 21.67%、19.88%、3.33% 的显着改进在考虑每个演示数量的所有任务中。

不同的聚类算法

    我们使用 K-means-Auto 对演示进行聚类,这会自动确定最佳专家数量。其背后的直觉是,更多的专家不一定会产生最好的结果。在这里,我们通过比较 K-Means-Balanced 和 K-means-Auto 的性能来验证这一选择。如表 2 所示,两种 K-Means 变体的性能都优于随机,而 K-Means-Auto 获得了最佳结果。

不同的嵌入模型

    在 demo 作业期间,我们使用 demo 来衡量 demo 的语义相似性L2嵌入空间中的距离。虽然我们的方法与嵌入模型的具体选择无关,但更强的文本编码器在识别语义相似的演示方面表现得更好。在这里,我们研究了嵌入模型的强度如何影响 MoP 的性能。我们研究了三种常用的文本编码器:GPT2-Large、T5 和 Ada-002。表 2 的第一组中的结果表明,虽然 Ada 取得了最好的结果,但 MoP 与 GPT1-Large 的 paried 运行得相当好。这表明所提出的演示分配方法不依赖于特定的嵌入模型。

不同的提示分配算法

    我们进一步分析了基于区域的联合搜索算法设计背后的关键要素。

  1. 每个专家的最佳指令可能不同,因此它们的生成和分配应以演示集群(联合搜索)为条件;
  2. 为了找到补偿每个专家演示的指令,我们使用所有其他专家的演示来生成指令。
  3. 每个专家的最佳提示仅根据分配给该专家的文本点进行评估(基于区域)。

    我们设计了三种提示分配方法,分别验证这些假设:

  1. 独立搜索搜索最佳提示并独立分配演示,即全局最佳提示将分配给所有专家;
  2. RBJS Same-Cluster 使用每个专家自己的演示来生成提示;
  3. 联合搜索在所有验证数据中对最佳提示进行排名。

    表 2 底部组中的结果证实了以下说法:基于区域的联合检索可获得最佳结果。

不同的路由算法

    路由函数对 MoE 框架至关重要,因为它负责将测试输入分配给最合适的专家。在基于聚类的演示分配之后,我们的路由函数也将测试输入映射到其最近的嵌入空间专家。如表 2 所示,我们的路由函数明显优于随机分配。

表 2:消融研究。MoP 中模型和算法的选择列在每组的最后一行。使用 K-means-Auto、text-embedding-ada 和 RBJS 实现最佳性能。
在这里插入图片描述

结论

    这项工作引入了提示混合 (MoP) 方法,以提高大型语言模型的提示优化性能。现有方法搜索单一指令来提示语言模型,而 MoP 则针对一组专家(提示)进行优化,每个专家管理问题空间的一个特殊区域。这种分而治之的方法降低了与分配给单个提示的任务相关的复杂性,从而大大扩大了问题空间的覆盖范围。在 MoP 框架内,我们进一步研究了构建专家委员会的各种演示和指令分配方法。配备所提出的基于相似性的演示分配和基于区域的演示指令联合搜索,MoP 在一组不同的 NLP 任务中比同类方法显着提高了性能。我们希望所提出的方法和相关发现可以为提示优化研究开辟新的可能性。

附录

A. 与其他基线的比较

表 3. 在 BIG-Bench-Hard 上与 OPRO 和 APE-Nearest-Neighbor 的比较。我们报告了 MoP 在 BIG-Bench-Hard 基准任务上相对于第 5.1 节中描述的基线的执行准确度增益 (∆)。我们进行了 3 次实验,并提供了平均值和标准偏差值。请注意,由于 ChatGPT API 固有的随机性,两种方法之间的性能差距小于 1% 可以视为平局。演示数量设置为 Ntrain/5,其中 Ntrain 是训练演示的总数。

在这里插入图片描述
我们进行了进一步的实验,将我们的方法与两个额外的基线进行比较:(1) OPRO (Yang 等人,2023)- 最近提出的一种基于遗传算法的提示优化方法。(2) APE + 最近邻:在测试时,我们根据演示与测试查询的接近程度来选择演示。对于这些实验,我们专注于 Big-Bench-Hard,因为它包含一些最困难的任务,这些任务可以对每种算法如何处理复杂的问题空间进行压力测试。对于这些实验,我们专注于以其具有挑战性的任务而闻名的 BBH 基准测试,以评估每种算法在复杂问题解决场景中的表现。

OPRO ,由于 OPRO 只为 BBH 提供实现,并且其最佳结果是使用强大的专有 LLM 获得的,因此我们使用 GPT-3.5-Turbo 重新运行 OPRO 以进行公平比较。如表 3 所示,我们的方法 (MoP) 与这种较新的提示优化方法相比实现了 80% 的胜率。

APE + 最近邻,我们采用与 MoP 中相同的嵌入模型 text-embedding-ada-002 用于最近邻搜索中的距离函数。表 3 所示的结果表明,MoP 比 APE + 最近邻实现了 70% 的胜率。这一结果进一步证明了联合优化指令和演示的必要性:由于最近邻演示集只能在推理时确定,因此它依赖于独立搜索的无演示指令(即 APE/IZ),这会导致次优组合。相比之下,对于 MoP,提示和演示针对每个专家进行联合优化,从而创建一个连贯的技能集。每个专家最初都被分配了一个固定的演示集群;随后,提示分配算法为每个专家分别选择最佳指令,以增强其特定演示的效用。

附录 B

MoP 算法
在这里插入图片描述

附录 C

MoP 和 MoE 之间的理论联系,我们的工作通过将专家定义为不同的提示(说明 + 演示)来调整 MoE 框架,传统上将不同的模型定义为专家。我们提供以下见解来强调此应用程序与传统 MoE 之间的二元性。

  1. 提示优化可以看作是模型选择:在下一个标记预测任务上预先训练的 LLM 可以看作是条件概率模型的集合,每个模型都由一个特定的提示定义。通过制作各种提示,LLM 用户本质上是在选择不同的子模型来执行各种任务。因此,设计不同的提示相当于从这个集合中选择不同的子模型,使为每个专家自动优化提示的过程与在传统 MoE 中为每个专家构建合适的模型平行。
  2. MoE 的理论特性适用于 MoP:上述概念框架使我们能够直接将 MoE 的理论特性应用于 LLM 的提示优化任务,因为优化专家提示的混合与优化专家模型的混合是相同的。
    我们认为我们工作的主要贡献是第一次使 MoE 框架适应提示优化任务,并引起社区对其强大且持续的潜力的关注,尽管每个组件都选择了简单的算法(演示分配、提示分配和路由功能)。我们希望这个解释更好地突出 MoP 和 MoE 之间的理论二元性,并进一步激励我们的工作。

附录 D

搜索成本比较
表 4:不同算法的搜索和推理成本比较。结果是在 Instruction Induction Benchmark 上测量的,使用相同的硬件 (1×48G A6000) 和 API 模型 (gpt-3.5-turbo-instruct)。
在这里插入图片描述

我们用不同的基线对 MoP 的搜索和推理阶段的运行时间进行基准测试。我们的方法中存在两个计算组件:在两种类型的计算之间:

  1. 查询 LLM
  2. 运行嵌入模型。

由于前者在实践中主导后者,我们将专注于分析 LLM 查询的复杂性:

  • 推理:MoP 在专家混合 (MoE) 范式下运行,部署单个提示,类似于部署单个指令。这构成了 MoP (MoE) 范式相对于提示集成方法或简单地使用较长提示的一个关键优势。
  • 搜索:MoP 中的搜索涉及演示分配阶段的成本可以忽略不计,因为它们不需要 LLM 查询。对于提示分配阶段,复杂性与专家数量呈线性关系,但完全可并行化。

表 4 报告了将 MoP 与 APE 和 IZ 进行比较的挂钟时间。我们的发现包括:(1). GS 包括:

  1. 所有方法都表现出相似的推理时间,这与我们之前的分析一致。
  2. 与 IZ 相比,APE 和 MoP 的搜索成本都大大降低,而 IZ 由于开源 LLM 的本地运行而会产生额外的成本。
  3. 虽然 MoP 的搜索成本(有 10 名专家)大约是 APE 的三倍,但这可以通过并行化显著降低。

附录 E

对发现的专家进行定性分析
我们提供了对已发现专家的示例分析,重点关注为什么 MoP 对某些任务更有效(更差)。

成功案例示例:MoP 明显优于随机演示的一个例子是在自动分类任务中。该任务使用训练数据集,其中包含属于不同流派的各种分类问题,例如国家/地区(例如,人口众多的国家、联合国国家/地区)、名人、语言和公司。我们发现,每个已识别的专家都专注于一两个类别。例如,一位专家只处理与名人相关的查询,从而提高了他们提供准确答案的能力。MoP 擅长的另一个案例是 BBH 的电影推荐任务。在这里,由 MoP 算法识别的每个专家都专注于一组不同的电影。例如,专家 1 专注于奇幻和异想天开的经典冒险,如“绿野仙踪”和“夺宝奇兵”;而 Expert 5 处理涉及深刻主题和复杂故事的电影,例如《黑客帝国》和《辛德勒的名单》。

失败案例示例:MoP 表现出类似于随机演示的性能的一个例子是在任务“大型动物”中。在此任务中,MoP 的表现类似于 APE-Random,这表明使用多个专家不会产生额外的好处。在检查已识别的专家时,我们发现他们的专业差异可以忽略不计。这种观察是直观的,因为这项任务涉及从随机抽样的不同大小的动物列表中选择最大的动物;因此,成功完成任务不需要专门的训练数据。

附录 F

聚类目标的推导
从 (8) 我们有在这里插入图片描述

附录 G

实验中使用的模板
参考周 et al. (2022),我们在实验中提供了每个场景中使用的模板。Generating instructions 是指生成指令,而 Evaluation 表示推理时间(验证或测试阶段)。对于 Listing Demos,它是指列出多个演示示例时使用的模板。当提示注入模型时,COMPLETE 部分将被删除,模型会生成输出。为了公平比较,相同的模板应用于所有方法。<>

在这里插入图片描述

附录 H

任务,在本节中,我们提供了三个基准中每项任务的详细描述,包括广泛的可能任务,包括编码、数学、常识推理和知识检索:指令归纳(表 5)、编码和数学的超自然指令(表 6 和表 7)和 BIG-Bench-Hard(表 8)。

表 5:有关 Instruction Induction 基准测试任务的说明。参考周 et al. (2022),我们在每个任务中提供任务名称、任务摘要和示例演示。
在这里插入图片描述
在这里插入图片描述

表 6:有关 Super Natural Instructions 基准测试代码任务的说明。参考Wang et al. (2022b),我们在每个任务中提供任务名称、任务摘要和示例演示。

在这里插入图片描述
在这里插入图片描述

表 7:Super Natural Instructions 基准测试数学任务的描述。参考Wang et al. (2022b),我们在每个任务中提供任务名称、任务摘要和示例演示。
在这里插入图片描述
在这里插入图片描述
表 8:有关 BIG-Bench-Hard 基准测试代码任务的描述。参考Suzgun 等人 (2022),我们在每个任务中提供任务名称、任务摘要和示例演示。
在这里插入图片描述
在这里插入图片描述

附录 I

评分函数
对于 Instruction Induction 基准测试任务,我们使用称为执行准确性的指标来评估提示的质量,该指标由Honovich 等人 (2022)。该指标定义如下:对于每个(输入、输出)对,如果模型的预测与输出完全匹配,则等于 1。如果没有完全匹配,则等于 0。在某些任务中,会采用此指标的修改版本。例如,它测量正确答案在总答案集中的比例。请参阅第 4.2 节Honovich 等人 (2022)了解更多详情。

对于 Super Natural Instructions 基准测试中的任务,我们使用 ROUGE-L 分数作为评估指标,如Wang et al. (2022b).对于 BIG-Bench-Hard 基准测试任务,我们使用执行准确性作为评估指标,如下所示Suzgun 等人 (2022).

附录 J

主要结果
J.1教学归纳结果
表 9. 指令诱导结果。我们报告了 MoP 相对于第 5.1 节中描述的指令诱导基准任务的基线的执行准确度增益 (∆)。我们进行了 3 次实验,并提供了平均值和标准差值。请注意,由于 ChatGPT API 固有的随机性,两种方法之间的性能差距小于 1% 可以视为平局。演示数量设置为 Ntrain/10,其中 Ntrain 是训练演示的总数。
在这里插入图片描述
我们显示了整个 Instruction Induction 基准测试中每种方法的执行准确性结果(Honovich 等人,2022)任务,不包括数据集尚未公开的两个任务:“Ascii”和“Cs 算法”。

J.2Super Natural Instructions 的结果

表 10:APE 在 Super Natural Instructions 中与代码和数学相关的任务上的性能。我们报告 APE 的表现(周 et al.,2022)关于代码和数学相关的任务,根据 Super Natural Instructions 基准测试的元数据中提供的域信息进行选择。我们运行 3 个实验,并提供平均值和标准差值。
在这里插入图片描述
在这里插入图片描述
表 11. 超自然指令的结果。我们报告了 MoP 相对于第 5.1 节中关于超自然指令基准任务的基线的 ROUGE-L 分数增益 (∆)。我们进行了 3 次实验,并提供了平均值和标准差值。请注意,由于 ChatGPT API 固有的随机性,两种方法之间的性能差距小于 1% 可以视为平局。演示数量设置为 Ntrain/10,其中 Ntrain 是训练演示的总数。
在这里插入图片描述

为了进一步提高我们方法的实际适用性,我们对 Super Natural Instructions 基准测试进行了实验(Wang 等人,2022年)。该基准测试包含各种任务,包括与常识性分类和信息提取相关的任务。尽管它涵盖的任务范围很广,但我们的验证特别关注与代码和数学相关的任务。

为了实现这一目标,我们首先评估了 APE 在与代码和数学相关的任务上的表现。随后,我们对 APE 遇到挑战的 20 项任务进行了实验,即 APE 的 ROUGE-L 分数低于 50% 的任务(请参阅表 10)。

J.3BIG-Bench-Hard 基准测试的结果

表 12. BIG-Bench-Hard 上的结果。我们报告了 MoP 在 BIG-Bench-Hard 基准测试任务上相对于第 5.1 节中描述的基线的执行准确度增益 (∆)。我们进行了 3 次实验,并提供了平均值和标准差值。请注意,由于 ChatGPT API 固有的随机性,两种方法之间的性能差距小于 1% 可以视为平局。演示数量设置为 Ntrain/5,其中 Ntrain 是训练演示的总数。
在这里插入图片描述
我们对 BIG-Bench-Hard 基准测试中包含的任务进行了实验,该基准测试侧重于被认为具有挑战性的任务,其中包括 BIG-Bench Instruction Induction 任务周 et al. (2022).

附录 K基线

K.1猿
在本节中,为方便读者理解,我们对 APE(Automatic Prompt Engineering)进行了详细的解释(周 et al.,2022)),这与我们的工作密切相关。

K.1.1自动提示优化的背景
首先,我们旨在解释自动提示方法(包括 APE)背后的背景(周 et al.,2022)。虽然最近的 LLM 已经展示了他们解决用户指令描述的任务的非凡能力(Ouyang 等人,2022;OpenAI,2023;Touvron 等人,2023;Peters 等人,2018;Devlin 等人,2018;Brown 等人,2020;Wei 等人,2022b),精心制作的提示对于最大限度地提高 LLM 解决问题的能力至关重要。然而,这通常涉及费力的试错。最近的尝试通过使用 LLM 来设计具有其语言生成能力的提示,从而在给定的演示数据集中解决任务,从而实现自动化。APE 是这些自动提示优化方法之一,它已经实证证明,在解决目标任务方面,LLM 生成的提示比人工创建的提示更有效。

K.1.2APE 算法详解
在这里插入图片描述
我们提供了 APE 方法的更详细说明。在 APE 中(周 et al.,2022),首先,它利用预先训练的黑盒 LLM 来提出一组候选指令。具体来说,APE 最初选择用于提出指令的随机演示,并将图 6 中“生成指令”对应的模板与采样演示一起导入 [FULL_DEMOS]。然后,它将此提示馈送到 LLM 中,以生成一组候选指令。以这种方式生成一组候选指令后,APE 使用验证集的子集 (
𝒟
~
有效
). 随后,它在测试阶段使用具有最高验证分数的最佳指令,即单个无演示指令。为了公平地进行比较,所有方法,包括我们的 MoP 方法,都使用相同的训练、验证和测试数据集。

K.2InstructZero
InstructZero(Chen 等人,2023)通过使用贝叶斯优化方法优化开源 LLM 的软提示,找到黑盒 LLM 的单个指令。更具体地说,在 InstructZero 的每次贝叶斯优化迭代中,一个软提示被转换为使用开源 LLM 的指令,该指令随后被馈送到黑盒 LLM 中。然后,黑盒 LLM 的输出被发送回贝叶斯优化过程,以生成下一个软提示。更多细节请参考Chen 等人 (2023).

附录 L实现细节

如第 5 节所述,为了公平比较,我们为所有方法分配了相等的预算。为了进一步详细说明,APE 和 InstructZero 在 20 个候选指令选项中搜索最佳提示,而在 MoP 的情况下,所有专家的候选指令总数加起来为 20。

对于 APE+Demos、APE+K 质心、InstructZero+Demos 和 InstructZero+K 质心,它们中的每一个都将通过 APE 或 InstructZero 找到的最佳提示与随机选择的演示或与集群嵌入空间中的质心对应的演示相结合。对于这些方法,演示数的设置与 MoP 的情况相同,以便进行公平的比较。关于超参数α,等式 10 中的值设置为默认值 0.02,并且在所有实验中保持不变。

附录 M局限性

为了促进未来的探索,我们讨论了所提出的方法的两个局限性。首先,演示分配中使用的 K-means-Auto 算法并不能保证结果集群的平衡。当集群收到超过限制的演示时,我们会随机丢弃它们以满足约束。此操作可能是次优的,因为它没有考虑它们的相对重要性。未来的工作可能会探索各种数据选择方法来修剪集群大小。其次,MoP 使用现有的指令生成方法 (APE),但有时 APE 一开始就无法生成合理的指令。然而,MoP 可以应用于任何指令生成方法,如果将来出现更好的指令生成方法,我们也可以预期 MoP 的性能会相应提高。最后,激励使用聚类算法分配演示的理论——将 ICL 连接到内核回归——无法解释 LLM 中的演示顺序敏感性。这表明未来的理论进步可能有助于激励更好的演示分配算法。最后,虽然理论(Han 等人,2023)将 ICL 与内核回归联系起来激发了对演示作业使用聚类算法的启发,它无法解释 LLM 中演示的顺序敏感性;进一步的理论发展可以帮助开发更好的演示作业算法。

;