成都免费建站,移动端cpu天梯图,广州建模培训,如何看待响应式网页设计A Survey of Large Language Models 前言7 CAPACITY AND EVALUATION7.1 基本能力7.1.1 语言生成7.1.2 知识利用7.1.3 复杂推理 7.2 高级能力7.2.1 人类对齐7.2.2 与外部环境的交互7.2.3 工具操作 7.3 基准和评估方法7.3.1 综合评价基准7.3.2 评估方法 7.4 实证评估7.4.1 实验设… A Survey of Large Language Models 前言7 CAPACITY AND EVALUATION7.1 基本能力7.1.1 语言生成7.1.2 知识利用7.1.3 复杂推理 7.2 高级能力7.2.1 人类对齐7.2.2 与外部环境的交互7.2.3 工具操作 7.3 基准和评估方法7.3.1 综合评价基准7.3.2 评估方法 7.4 实证评估7.4.1 实验设置7.4.2 结果分析和发现 前言
随着人工智能和机器学习领域的迅速发展语言模型已经从简单的词袋模型Bag-of-Words和N-gram模型演变为更为复杂和强大的神经网络模型。在这一进程中大型语言模型LLM尤为引人注目它们不仅在自然语言处理NLP任务中表现出色而且在各种跨领域应用中也展示了惊人的潜力。从生成文本和对话系统到更为复杂的任务如文本摘要、机器翻译和情感分析LLM正在逐渐改变我们与数字世界的互动方式。
然而随着模型规模的增加也出现了一系列挑战和问题包括但不限于计算复杂性、数据偏见以及模型可解释性。因此对这些模型进行全面而深入的了解变得至关重要。
本博客旨在提供一个全面的大型语言模型综述探讨其工作原理、应用范围、优点与局限以及未来的发展趋势。无论您是该领域的研究者、开发者还是对人工智能有广泛兴趣的读者这篇综述都将为您提供宝贵的洞见。
本系列文章内容大部分来自论文《A Survey of Large Language Models》旨在使读者对大模型系列有一个比较程序化的认识。
论文地址https://arxiv.org/abs/2303.18223
7 CAPACITY AND EVALUATION
为了检验LLM的有效性和优越性已经提出了大量任务和基准用于进行经验能力评估和分析。在本节中我们首先介绍了LLM在语言生成和理解方面的三种基本能力评估类型然后介绍了几种具有更复杂设置或目标的LLM的高级能力评估最后讨论了现有的基准、评估方法和经验分析。
7.1 基本能力
在这部分我们主要关注LLM的三种基本能力评估类型即语言生成、知识利用和复杂推理。需要注意的是我们并不打算对所有相关任务进行全面覆盖而是只关注LLM最广泛讨论或研究的任务。接下来我们详细介绍这些任务。 表 10代表性的基本和高级能力以及相应的用于评估的代表性数据集。
7.1.1 语言生成
根据任务定义关于语言生成的现有任务可以大致分类为语言建模、条件文本生成和代码合成任务。需要注意的是代码合成不是典型的自然语言处理任务我们包括它以进行讨论因为它可以像自然语言文本一样通过一些LLM在代码数据上训练以类似的生成方法直接解决。
语言建模
作为LLM最基本的能力语言建模旨在基于先前的标记来预测下一个标记[15]主要关注基本语言理解和生成的能力。为了评估这种能力现有工作使用的典型语言建模数据集包括Penn Treebank [414]、WikiText-103 [415]和Pile [146]其中通常使用困惑度作为评估零-shot设置下模型性能的度量标准。经验研究[55, 84]表明在这些评估数据集上LLM相对于先前的最先进方法带来了显著的性能提升。为了更好地测试文本中长距离依赖性的建模能力引入了LAMBADA数据集[188]在该数据集上需要LLM根据段落上下文来预测句子的最后一个词。然后使用预测的最后一个词的准确性和困惑度来评估LLM。如现有工作所示语言建模任务的性能通常遵循缩放定律[30]这意味着扩展语言模型会提高准确性并降低困惑度。
条件文本生成
作为语言生成中的一个重要主题条件文本生成[48]侧重于根据给定的条件生成满足特定任务要求的文本通常包括机器翻译[503]、文本摘要[424]和问答[434]。为了衡量生成文本的质量通常使用自动指标如准确度、BLEU [504]和ROUGE [505]和人工评分来评估性能。由于强大的语言生成能力LLM在现有数据集和基准上取得了显著的性能。例如GPT-4在翻译任务中表现出与商业翻译产品相媲美的性能甚至对于语言差异显著的翻译任务也如此[506]。在新闻摘要任务如CNN/DM和XSUM上LLM也展示出与人类自由撰稿人相当的性能[507]。尽管模型容量取得了快速进展但有关现有自动指标是否能忠实评估LLM在条件文本生成任务中的性能的担忧日益增加[507–509]。作为自动指标的替代方案最近的研究还提议将LLM作为生成评估器以检查生成内容的质量[124, 510, 511]。此外研究人员还探索了更具挑战性的LLM语言生成任务如结构化数据生成[512]和长文本生成[46, 513, 514]。
代码合成
除了生成高质量的自然语言文本外现有的LLM还表现出生成正式语言的强大能力尤其是满足特定条件的计算机程序即代码的生成称为代码合成[515]。与自然语言生成不同生成的代码可以直接通过与相应的编译器或解释器执行来进行检查现有的工作主要通过计算对测试用例的通过率来评估LLM生成的代码的质量即passk。最近提出了几个着重于功能正确性的代码基准用于评估LLM的代码合成能力如APPS [428]、HumanEval [92]和MBPP [168]。通常它们包含各种编程问题包括文本规范和正确性检查的测试用例。要提高这种能力关键是对LLM进行代码数据的微调或预训练这可以有效地使LLM适应代码合成任务[77]。此外现有工作提出了生成代码的新策略例如采样多个候选解决方案[168]和计划引导的解码[516]这可以被视为程序员模仿程序员进行错误修复和代码规划过程。令人印象深刻的是LLM最近在编程竞赛平台Codeforces上取得了排名前28%的用户竞争力与人类表现竞争 [101]。此外GitHub Copilot已经发布用于辅助在编码IDE如Visual Studio和JetBrains IDEs中进行编程它可以支持包括Python、JavaScript和Java在内的多种编程语言。《ACM通信》杂志上题为“编程的终结” [517] 的一篇观点文章讨论了AI编程对计算机科学领域的影响强调了向高度适应性的LLM作为新的计算原子单位的重要转变。
主要问题
尽管LLM在生成类似人类文本方面取得了出色的性能但它们在语言生成方面容易受到以下两个主要问题的影响。
• 不可靠的生成评估。随着LLM的语言生成能力的提高现有研究发现LLM生成的文本在各种文本生成任务上已经达到了与参考文本可比较的质量。然而由于现有评估基准的固有弱点人工评估与自动基于参考文本的指标之间存在明显的不一致性[507–509, 518]。例如在OpenDialKG [427]中ChatGPT在BLEU和ROUGE-L指标上表现不如经过精细调整的GPT-2但在人类判断中却更受欢迎[518]。此外现有研究认为甚至人工评估可能也不够健壮[507, 508, 519, 520]。在某些情况下很难在人类标注者中达成高度一致的意见[508]众包工作者和专家之间的标注质量也存在较大差距[519, 520]。因此在LLM时代如何进行语言生成任务的可靠评估已成为一个基础但具有挑战性的研究课题。最近越来越多的研究工作提出利用LLM来提高生成文本的评估质量。特别地LLM可以用来改进现有指标的评估质量。例如Para-Ref [521]通过利用LLM将现有参考文本重新表述成具有不同表达方式的语义等价参考文本从而增强了各种自动指标。此外LLM广泛应用于以无参考方式评估文本生成的评估者包括评估单一预测[510, 511, 522]或比较多个候选项[124, 523–525]。然而LLM作为语言生成评估者可能会暴露出偏见例如顺序偏见或对LLM生成的文本优于人工编写的文本的偏好与人工评估相比存在差异[511, 526, 527]。 不可靠的生成评估 LLM已经能够生成与人工编写的文本相媲美的文本但这可能被基于参考文本的自动指标低估。作为一种替代的评估方法LLM可以充当语言生成评估者评估单一文本比较多个候选项并改进现有的指标。然而这种评估方法在实际任务中仍需要更多的检验和审查。 • 专业化生成效果较差。尽管LLM已经学会了生成连贯的文本所需的通用语言模式但当处理特定领域或任务时它们在生成方面的熟练程度可能会受到限制。例如一个在一般网络文章上进行训练的语言模型在生成涉及大量医学术语和方法的医疗报告时可能会面临挑战。直观地说领域知识对于模型专业化至关重要。然而将这种专业知识注入LLM并不容易。如最近的分析所讨论的[47, 528]当LLM被训练以展示某些特定能力使它们在某些领域表现出色时它们可能在其他领域遇到困难。这个问题与神经网络训练中的灾难性遗忘[529, 530]有关指的是整合新知识和旧知识的冲突现象。类似情况也出现在LLM的人类对齐中其中需要为与人类价值观和需求对齐而支付“对齐税” [61]例如在上下文学习能力方面可能会潜在损失。此外由于序列建模架构的限制LLM在理解和生成结构化数据方面仍然面临挑战。因此在复杂的结构化数据任务上如知识库问答和语义解析[512, 531]它们通常落后于任务特定模型。因此开发有效的模型专业化方法非常重要这些方法可以灵活地使LLM适应各种任务场景同时尽可能保留原始能力。 专业化生成效果较差 LLM在掌握需要领域特定知识或生成结构化数据的生成任务方面可能会表现不佳。将专业知识注入LLM并同时保持LLM的原始能力并不是一件简单的事情。 7.1.2 知识利用
知识利用是智能系统完成知识密集型任务例如常识问题回答和事实补全所需的重要能力它基于支持性的事实证据。具体而言它要求LLM在必要时正确利用来自预训练语料库的丰富事实知识或检索外部数据。特别是问答QA和知识补全已成为评估这种能力的两种常用任务。根据测试任务问答或知识补全和评估设置是否使用外部资源我们将现有的知识利用任务分类为三种类型即封闭书本QA、开放书本QA和知识补全。
Closed-Book QA
Closed-Book QA任务[532]测试LLM从预训练语料库中获得的事实知识LLM应仅基于给定的上下文回答问题而不使用外部资源。为了评估这种能力有几个数据集可以利用包括自然问题[Natural Questions431]、网络问题[Web Questions434]和琐事QA[TriviaQA435]其中广泛采用准确性度量标准。实证结果表明在这种设置下LLM可以表现出色甚至与最先进的开放领域QA系统的性能相匹敌[56]。此外LLM在Closed-Book QA任务上的性能显示出一种与模型大小和数据大小相关的缩放定律模式扩展参数和训练标记可以增加LLM的容量并帮助它们从预训练数据中学习或记忆更多知识[56]。此外在相似的参数规模下与评估任务相关的更多预训练数据的LLM将获得更好的性能[72]。Closed-Book QA设置还为探测LLM编码的事实知识的准确性提供了一个测试基准。然而正如现有工作所示[55]LLM在依赖细粒度知识的QA任务上的表现可能较差即使这些知识存在于预训练数据中也是如此。
Open-Book QA
与Closed-Book QA不同在Closed-Book QA任务中LLM可以从外部知识库或文档集合中提取有用的证据然后基于提取的证据回答问题[533–536]。典型的Open-Book QA数据集例如自然问题[Natural Questions431]、OpenBookQA [443]和SQuAD [446]与封闭书本QA数据集有重叠但它们包含外部数据源例如维基百科。在Open-Book QA任务的评估中广泛使用准确性和F1分数作为度量标准。为了从外部资源中选择相关知识LLM通常与文本检索器甚至搜索引擎配对这些检索器可以独立或与LLM一起进行训练[72, 533, 537]。此外先前的工作[538–540]表明检索器可以帮助LLM验证和纠正推理路径。在评估中现有研究主要关注LLM如何利用提取的知识来回答问题并显示提取的证据可以大大提高生成答案的准确性甚至使较小的LLM能够胜过10倍大的LLM[533, 537]。此外Open-Book QA任务还可以用来评估知识信息的新旧程度。从过时的知识资源进行预训练或检索可能会导致LLM对具有时间敏感性的问题生成错误答案[533]。
知识补全
在知识补全任务中LLM可以在某种程度上被视为一个知识库[453]可以用来完成或预测知识单元例如知识三元组的缺失部分。这些任务可以探讨和评估LLM从预训练数据中学到了多少以及什么类型的知识。现有的知识补全任务可以大致分为知识图补全任务例如FB15k237 [449]和WN18RR [451]和事实补全任务例如WikiFact [448]前者旨在完成知识图中的三元组后者旨在完成关于特定事实的不完整句子。经验研究表明现有的LLM很难完成与特定关系类型相关的知识补全任务[398]。如在WikiFact上的评估结果所示LLM在预训练数据中出现的一些常见关系例如货币和作者上表现良好而在稀有关系例如发现者或发明者和出生地上表现不佳。有趣的是在相同的评估设置下例如上下文学习InstructGPT即text-davinci-002在WikiFact的所有子集中均优于GPT-3。
主要问题。
尽管LLM在捕捉和利用知识信息方面取得了重要进展但它们仍然存在以下两个主要问题。
• 幻觉。在生成事实性文本方面一个具有挑战性的问题是幻觉生成[518]其中生成的信息要么与现有的来源存在冲突内在幻觉要么无法通过可用的来源进行验证外在幻觉这在图14中的两个示例中有所说明。幻觉广泛出现在现有的LLM中即使是最优秀的LLM如GPT-4 [46]。此外现有研究表明LLM在识别文本中的幻觉内容方面遇到困难[481]即使是强大的ChatGPT也是如此。此外除了语言任务最近的一项研究显示大型视觉语言模型LVLM在幻觉方面也面临挑战即生成与伴随图像中不存在的对象[541]。从本质上讲LLM似乎在任务解决中“不自觉地”利用知识仍然缺乏准确控制内部或外部知识使用的能力。幻觉会误导LLM生成不期望的输出大多降低性能从而在部署LLM到实际应用中可能存在潜在风险。为了缓解这个问题现有工作广泛使用了对齐调整策略如第5.2节所讨论的这依赖于在高质量数据上调整LLM或使用人类反馈。此外集成外部工具以提供可信信息来源可以帮助缓解幻觉问题[72, 481, 539]。另一项研究工作则利用LLM的不确定性估计来识别幻觉[542, 543]。例如考虑到幻觉事实往往在不同的样本输出之间表现出一致性不足SelfCheckGPT [543]通过测量样本输出内的信息不一致性来检测幻觉。为了评估幻觉问题已经提出了一系列幻觉检测任务例如用于检测模型模仿的人类虚假言论的TruthfulQA [433]。最近HaluEval [481]创建了一个大规模的LLM生成和人工注释的幻觉样本集以评估语言模型在特定任务和一般场景中识别幻觉的能力。 图14公共LLM的内在和外在幻觉示例访问日期2023年3月19日。作为内在幻觉的示例LLM在辛迪Cindy和艾米Amy之间的关系上提供了相互矛盾的判断与输入相矛盾。对于外在幻觉在这个示例中LLM似乎对RLHF来自人类反馈的强化学习的含义有错误的理解尽管它可以正确理解LLM在这个上下文中的含义。 幻觉 LLM容易生成不真实的信息这些信息要么与现有来源冲突要么无法通过可用来源进行验证。即使是最强大的LLM如ChatGPT在迁移幻觉生成的文本方面也面临巨大挑战。这个问题可以通过特殊方法如对齐调整和工具利用部分缓解。 • 知识新旧。作为另一个主要挑战LLM在解决需要超出训练数据的最新知识的任务时会遇到困难。解决这个问题的一种直接方法是定期用新数据更新LLM。然而对LLM进行精调非常昂贵而且在增量训练LLM时可能会导致灾难性遗忘问题。因此有必要开发能够将新知识集成到现有LLM中使其保持最新的高效有效的方法。现有研究已经探索了如何利用外部知识源例如搜索引擎来补充LLM这可以是与LLM一起进行联合优化[533]或用作即插即用模块[539]。例如ChatGPT利用检索插件访问最新的信息源[544]。通过将提取的相关信息纳入上下文[545–547]LLM可以获得新的事实知识并在相关任务上表现更好。然而这种方法似乎仍然处于表面层次。此外现有研究还探索了编辑语言模型参数以更新内在知识的方法[548–550]。然而先前的工作[551]已经表明尽管这些方法可以改善小型语言模型的性能但它们在LLM上表现不佳。因此直接修正内在知识或将特定知识注入LLM仍然很困难这仍然是一个开放性的研究问题[551]。最近发布了一个有用的框架EasyEdit [552]以促进对LLM的知识编辑研究。 知识的新旧问题 LLM的参数化知识难以及时更新。利用外部知识源来扩充LLM是解决这个问题的实际方法。然而如何有效地更新LLM内部知识仍然是一个开放性的研究问题。 7.1.3 复杂推理
Complex reasoning, 在这里指的是理解和利用支持证据或逻辑来得出结论或做决策的能力[51, 52]。根据推理过程中涉及的逻辑和证据类型我们考虑将现有的评估任务分为三大类即知识推理、符号推理和数学推理。
知识推理
知识推理任务依赖于关于事实知识的逻辑关系和证据来回答给定的问题。现有工作主要使用特定数据集来评估相应类型知识的推理能力例如CSQA [395]/StrategyQA [456]用于常识知识推理ScienceQA [442]用于科学知识推理。除了预测结果的准确性外现有工作[442]还通过自动度量标准例如BLEU或人工评估来评估生成的推理过程的质量。通常这些任务要求LLM基于事实知识进行逐步推理直到得出给定问题的答案。为了引出逐步推理能力已经提出了链式思维chain-of-thoughtCoT提示策略[33]用于增强LLM的复杂推理能力。正如在第6.2节中讨论的CoT包括中间推理步骤可以手动创建[33]或自动生成[553]并将其包含在提示中以引导LLM执行多步推理。这种方法大大提高了LLM的推理性能在几个复杂的知识推理任务上取得了新的最新成果[33, 56, 403]。此外在将知识推理任务重新制定为代码生成任务之后研究人员发现LLM的性能可以进一步提高[171]尤其是对于在代码上进行了预训练的LLM。然而由于知识推理任务的复杂性当前LLM的性能在常识推理等任务上仍然落后于人类结果[33, 56, 554]。作为一种常见的错误类型LLM可能会生成不准确的中间步骤导致最终结果错误。为了解决这个问题现有工作已经提出了特殊的解码或集成策略以提高整个推理链的准确性[354, 355]。
符号推理
符号推理任务主要侧重于在正式规则设置中操纵符号以实现某些特定目标[51]在这些任务中LLM在预训练过程中可能从未见过这些操作和规则。现有工作[33, 357, 396]通常在最后一个字母连接和抛硬币等任务上评估LLM其中评估示例要求与上下文示例相同的推理步骤称为领域内测试或更多步骤称为领域外测试。对于领域外测试的例子LLM可能只看到上下文中有两个单词的示例但它需要在三个或更多单词中连接最后一个字母。通常采用生成的符号的准确性来评估LLM在这些任务上的性能。因此LLM需要理解符号操作之间的语义关系以及它们在复杂场景中的组合。然而在领域外的情况下由于LLM没有见过符号操作和规则的复杂组合例如在上下文示例中的操作数量的两倍它很难捕捉它们的准确含义。为了解决这个问题现有研究采用了草稿板[469, 555]和导师[556]策略以帮助LLM更好地操作符号操作生成更长更复杂的推理过程。另一方面研究人员还利用正式的编程语言来表示符号操作和规则要求LLM生成代码并通过外部解释器执行来执行推理过程。这种方法可以将复杂的推理过程分解为LLM和解释器的代码合成和程序执行从而简化了推理过程并获得了更准确的结果[361]。
数学推理
数学推理任务需要全面利用数学知识、逻辑和计算来解决问题或生成证明陈述。现有的数学推理任务主要可以分为数学问题求解和自动定理证明两大类。对于数学问题求解任务SVAMP [471]、GSM8k [470]和MATH [291]数据集通常用于评估LLM需要生成准确的具体数字或方程来回答数学问题。由于这些任务还需要多步推理因此CoT提示策略已经被广泛采用以提高LLM在推理性能上的表现[33]。作为另一种实际策略持续在大规模数学语料库上进行LLM的预训练可以大大提高它们在数学推理任务上的性能[35, 163, 557]。此外由于不同语言中的数学问题共享相同的数学逻辑研究人员还提出了一个多语言数学单词问题基准[401]用于评估LLM的多语言数学推理能力。作为另一个具有挑战性的任务自动定理证明ATP[477, 479, 558]要求推理模型严格遵循推理逻辑和数学技巧。为了评估这个任务的性能PISA [478]和miniF2F [479]是两个典型的ATP数据集以证明成功率作为评估指标。在ATP研究中的一个主要局限性是缺乏形式语言相关的语料库。为了解决这个问题一些研究利用LLM将非正式陈述转化为正式证明以增加新的数据[562]或生成草案和证明概述以减小证明的搜索空间[563]。
主要问题
尽管有所进展LLM在解决复杂推理任务方面仍存在一些局限性。
• 推理不一致性。通过改进的推理策略例如CoT提示LLM可以通过基于支持逻辑和证据的逐步推理来解决一些复杂的推理任务。尽管有效但在分解的推理过程中经常出现推理不一致性问题。具体来说LLM可能会按照无效的推理路径生成正确答案或者在正确的推理过程后产生错误答案[33, 360]导致派生答案与推理过程之间的不一致性。为了缓解这个问题现有研究提出通过外部工具或模型来引导LLM的整个生成过程[355, 369, 516]以重新检查推理过程和最终答案以纠正潜在错误[564–566]或者通过过程反馈来微调LLM[567, 568]。例如Tree of Thoughts (ToT) [369]赋予LLM参与决策过程的能力通过同时探索和自我评估各种推理路径。为了改进推理过程Self-Refine [564]从LLM自动生成的解决方案中获取反馈从而基于反馈进行迭代的解决方案改进。此外一些研究通过在训练期间引入基于过程的监督来提高LLM的推理链的一致性[567, 568]。作为一种有前途的解决方案最近的方法将复杂的推理任务重新制定为代码生成任务其中生成的代码的严格执行确保了推理过程与结果之间的一致性。此外已经发现在具有相似输入的任务之间可能存在不一致性任务描述的微小变化可能会导致模型产生不同的结果[49, 471]。为了减轻这个问题selfconsistency [354]采用多个推理路径的集合来增强LLM的解码过程。 推理不一致性 LLM可能会按照无效的推理路径生成正确答案或者在正确的推理过程后产生错误答案导致派生答案与推理过程之间的不一致性。这个问题可以通过对LLM进行过程级反馈的微调、使用多样化的推理路径集合以及通过自我反思或外部反馈来改进推理过程来缓解。 • 数值计算。对于复杂的推理任务LLM在涉及的数值计算方面仍然面临困难特别是对于在预训练阶段很少遇到的符号例如大数的算术运算[49, 556, 569]。解决这个问题的一个直接方法是在合成的算术问题上微调LLM[287, 570]。此外大量研究通过在训练和推断阶段跟踪中间计算步骤来提高数值计算性能[287, 555, 571]例如划痕迹。此外现有工作[71]还引入了外部工具例如计算器特别是用于处理算术运算。最近ChatGPT提供了一个插件机制来使用外部工具[544]。通过这种方式LLM需要学习如何正确操作这些工具。为了实现这个目的研究人员已经通过使用工具甚至是LLM本身来调整LLM或者设计了上下文学习的指令和示例[361]来增加示例的辅助。除了使用外部工具的帮助最近的研究发现将数字分词成单独的标记例如LLaMA和Galactica分词器是增强LLM固有算术能力的有效方法[287, 569]。一个可能的解释是当分词数字时子词分词技术可能导致不一致的序列。例如使用子词分词器整数7481可能被分词为7 481而74815可能被分词为748 15相同的数字子字符串具有不同的分割[287]。相比之下数字为基础的数字标记化可以避免这种不一致因此可能提高LLM的数值计算能力。 数值计算 LLM在数值计算方面存在困难特别是对于在预训练中很少遇到的符号。除了使用数学工具将数字分词成单独的标记也是改进LLM算术能力的有效设计选择。 7.2 高级能力
除了上述的基本评估任务LLM还展示了一些卓越的能力需要特殊的考虑来进行评估。在这一部分我们详细讨论几种代表性的高级能力以及相应的评估方法包括与人类的对齐、与外部环境的交互和工具操作。接下来我们详细讨论这些高级能力。
7.2.1 人类对齐
期望语言模型LLMs能够很好地符合人类的价值观和需求即人类对齐这是广泛应用LLMs于实际应用中的关键能力。
为了评估这种能力现有的研究考虑了多个人类对齐的标准如帮助性、诚实性和安全性[46, 267, 295]。对于帮助性和诚实性可以利用对抗问答任务例如TruthfulQA [433]来检查LLMs在检测文本中可能的虚假性方面的能力[46, 72]。此外无害性也可以通过几个现有的基准来评估例如CrowS-Pairs [482]和Winogender [483]。尽管通过上述数据集的自动评估但人工评估仍然是一种更直接的方式可以有效地测试LLMs的人类对齐能力。OpenAI邀请了许多与AI风险相关领域的专家来评估和改进GPT-4在遇到风险内容时的行为[46]。此外对于人类对齐的其他方面例如真实性一些研究提出使用具体的指导和制定标注规则来引导标注过程[72]。经验证明这些策略可以极大地提高LLMs的人类对齐能力[267]。例如在与专家互动收集的数据上进行对齐调整后当GPT-4处理敏感或不允许的提示时其不正确行为的比率可以大大降低。此外高质量的预训练数据可以减少对齐所需的工作量[46]。例如由于科学语料库中内容偏见较少因此Galactica可能更加无害[35]。
7.2.2 与外部环境的交互
除了标准评估任务之外语言模型LLMs还具有接收外部环境反馈并根据行为指令执行操作的能力例如生成自然语言的行动计划以操作代理程序[573, 574]。这种能力也在LLMs中出现可以生成详细且高度逼真的行动计划而较小的模型例如GPT-2倾向于生成较短或无意义的计划[573]。
为了测试这种能力可以使用几个具体的基准和具体的AI环境进行评估如下所述。VirtualHome [485]构建了一个用于家庭任务如清洁和烹饪的3D模拟器代理程序可以执行LLMs生成的自然语言操作。ALFRED [487]包括需要LLMs完成组合目标的更具挑战性的任务。BEHAVIOR [486]专注于模拟环境中的日常杂务并要求LLMs生成复杂的解决方案例如更改物体的内部状态。除了家务任务等受限环境之外一系列研究工作还研究了基于LLMs的代理程序在探索开放世界环境如Minecraft和互联网方面的熟练程度[575, 576]。Voyager [576]引入了一个自动课程模块使LLMs能够根据来自环境的反馈不断获取新技能。GITM [575]着重解决了基于LLMs的Minecraft中的各种挑战通过任务分解、规划和接口调用。根据生成的行动计划或任务完成情况现有工作要么采用基准中的常规指标例如生成的行动计划的可执行性和正确性[573]要么直接进行现实世界实验并测量成功率[577]以评估这种能力。已经证明LLMs能够与外部环境进行交互并生成准确的行动计划[578]。最近已经提出了一些改进方法以增强LLMs的交互能力例如设计类似代码的提示[407]和提供现实世界的基础[577]。
此外最近的研究还探讨了基于LLMs在模拟环境中的多代理协作[410, 579, 580]。这些研究通过在沙盒环境中实例化具有观察、规划和记忆的多个基于LLMs的代理程序来模拟人类社交行为。在受控评估中生成性代理程序的搜索、规划和思考能力由人类以类似面试的方式进行评估。此外他们还对模拟环境中的多个代理程序进行描述性测量以检查出现的社交行为。
7.2.3 工具操作
在解决复杂问题时语言模型LLMs可以在确定必要时使用外部工具。通过使用API调用封装可用工具现有工作已经涉及各种外部工具例如搜索引擎[72]、计算器[71]和编译器[361]以增强LLMs在一些特定任务上的性能。最近OpenAI支持在ChatGPT中使用插件[544]这些插件可以为LLMs提供超出语言建模的更广泛能力。例如Web浏览器插件使ChatGPT能够访问新鲜信息。此外集成第三方插件对于创建基于LLMs的应用程序繁荣生态系统特别重要。
为了检验工具操作的能力现有工作大多采用复杂的推理任务进行评估例如数学问题求解例如GSM8k [470]和SVAMP [471]或知识问答例如TruthfulQA [433]在这些任务中成功利用工具对于增强LLMs无法处理的所需技能例如数值计算非常重要。通过这种方式对这些任务的评估性能可以反映LLMs在工具操作方面的能力。为了教导LLMs使用工具现有研究在上下文中添加使用工具的示例来引出LLMs[361]或者在模拟数据中对工具使用进行微调[71, 572]。研究发现在工具的帮助下LLMs变得更有能力处理它们不擅长的问题例如方程计算和及时回答问题[71, 366]。然而随着可用工具数量的增加LLMs的有限上下文长度可能在描述和展示广泛的工具API时带来挑战。为了解决这个问题现有工作检索相关工具的使用或者将工具信息编码为嵌入空间内的标记[581–583]。
除了由人类开发的现有工具之外LLMs具有自主为特定任务制作自己的工具的能力[584]。这使得模型能够独立探索和操作这些自行创建的工具从而扩展了它们在解决各种现实世界任务中的自主探索潜力。
总结
上述三种能力对于LLMs的实际性能具有重要价值符合人类的价值观和偏好人类对齐、在现实世界场景中正确行动与外部环境互动以及扩展能力范围工具操作。除了上述三种高级能力之外LLMs可能还表现出与某些任务例如数据注释[378]或学习机制例如自我改进[585]特别相关的其他能力。发现、衡量和评估这些新兴能力将是一个开放的方向以更好地利用和改进LLMs。
7.3 基准和评估方法
在上文中我们讨论了LLM的基本能力和高级能力。接下来我们将介绍现有的评估基准和方法[612, 613]。
7.3.1 综合评价基准
最近已经发布了几个全面的基准用于评估LLMs。在这部分中我们介绍了几个广泛使用的基准包括MMLU、BIG-bench、HELM以及一系列人类考试基准。 MMLU [291]是一个多任务知识理解的通用基准用于大规模评估涵盖了从数学和计算机科学到人文和社会科学等广泛的知识领域。这些任务的难度从基础到高级不等。如现有研究所示LLMs在这个基准上通常表现出色远远超过小型模型显示了模型规模的扩展规律[35, 56, 57, 64]。最近GPT-4在MMLU中取得了显著的记录在5shot设置下达到了86.4%的成绩明显优于先前的最先进模型[46]。 BIG-bench [292]是一个协作基准旨在从各个方面探测现有的LLMs。它包括204个任务涵盖了广泛的主题包括语言学、儿童发展、数学、常识推理、生物学、物理学、社会偏见、软件开发等等。通过扩大模型规模LLMs甚至可以在BIG-bench的65%的任务上在少样本设置下超越平均人类表现[56]。考虑到整个基准的高评估成本还提出了轻量级基准BIG-bench-Lite其中包含来自BIG-bench的24个小型但多样化且具有挑战性的任务。此外提出了BIG-bench hardBBH基准[614]旨在集中研究LLMs目前无法解决的任务选择LLMs在这些任务中表现不如人类的挑战性任务进行研究。由于BBH变得更加困难小型模型通常表现接近随机。作为对比CoT提示可以引出LLMs进行逐步推理以增强性能甚至在BBH中超越平均人类表现。 HELM [398]是一个综合性基准目前实施了一组核心场景和7个度量标准类别。它建立在许多先前的研究基础上对语言模型进行全面评估。如HELM的实验结果所示通过指令调整LLMs的性能在准确性、稳健性和公平性方面都能够持续提升。此外对于推理任务已经在代码语料库上进行预训练的LLMs表现出更优越的性能。 人类水平测试基准旨在使用设计用于测试人类的问题来评估LLMs的综合能力例如AGIEval [587]、MMCU [588]、M3KE [589]、C-Eval [590]和Xiezhi [591]。这些基准涵盖了广泛的领域、难度级别和语言以全面评估LLMs的通用能力。与公开可用的模型相比提供API服务的模型例如GPT-4、ChatGPT、Claude在这些评估基准上表现出优越性能。作为评估中表现最佳的模型GPT-4在AGIEval [587]中超越了平均人类表现。然而它仍然落后于这些具有挑战性基准上的顶级人类表现。因此对于公开可访问的模型仍然有充足的空间来进一步增强LLMs的整体能力。
上述基准涵盖了各种主流评估任务和现实世界的人类考试问题用于评估LLMs。此外还有一些基准专注于评估LLMs的特定能力例如TyDiQA [615]用于多语言知识利用和MGSM [401]用于多语言数学推理。为了进行评估可以根据具体目标选择适当的基准。此外还有一些开源的评估框架供研究人员在现有基准上评估LLMs或扩展新任务进行定制评估例如语言模型评估框架Language Model Evaluation Harness[616]和OpenAI Evals [46]。此外一些研究人员还通过汇总代表性基准来构建不断更新的排行榜以比较现有LLMs的性能例如Open LLM Leaderboard [586]。上述基准和排行榜为展示LLMs的基本和高级能力提供了重要参考。在第7.3.2节中我们将更深入讨论评估方法的优缺点。
7.3.2 评估方法
在介绍现有基准之后本部分将回顾用于评估LLMs性能的现有评估方法。为了组织我们的讨论我们将LLMs分为三种不同类型基础LLMs预训练模型检查点、微调LLMs指令或对齐微调模型检查点和专门LLMs适用于某些特定任务或领域的适应模型检查点。在这里我们保留了微调LLMs和专门LLMs以区分LLMs的不同目的通用或特定任务求解器。为了评估这三种类型的LLMs我们可以测试LLMs与不同能力相关的性能如在第7.1和7.2节中讨论的基本或高级能力。总的来说评估LLMs有三种主要方法即基于基准的方法[291]、基于人的方法[606]和基于模型的方法[608]。表11展示了LLM类型、评估方法和测试能力之间的关系示例。接下来我们将讨论不同类型LLMs的评估方法。 表 11现有评估工作的类别。 “一般”是指评价侧重于多种能力的综合表现。评估的能力不限于7.1和7.2中提到的代表性基础能力和高级能力。
对基础LLMs的评估
基础LLMs是指在预训练后获得的模型检查点。对于基础LLMs我们主要关注检查基本能力第7.1节如复杂推理和知识利用。由于大多数这些基本能力可以通过明确定义的任务进行评估因此基于基准的方法已被广泛用于评估基础LLMs。接下来我们将介绍基础LLMs的常见评估基准和评估程序。 常见基准。为了评估基础LLMs典型的基准以选择题等形式设计为封闭问题。这些常用基准主要可以分为两类以知识为导向和以推理为导向的基准。以知识为导向的基准例如MMLU [291]和CEval [590]旨在评估世界知识的能力而以推理为导向的基准例如GSM8K [523]、BBH [614]和MATH [291]则侧重于评估解决复杂推理任务的能力。此外一些最近提出的基准例如OpenCompass [592]将这两种类型结合起来进行综合比较。 基于基准的评估程序。为进行基准评估首先将每个问题格式化为一个提示供LLMs生成结果文本。然后使用人工编写的规则解析生成的结果文本以获取预测答案。最后通过将预测答案与实际答案进行比较可以使用标准指标如准确性自动计算LLMs的性能。评估方法可以在少样本或零样本设置下进行这可能会导致不同的评估结果或排名。由于基础LLMs尚未进行指令微调具有相对较弱的任务泛化能力因此少样本设置通常更适合评估。对于一些复杂的推理任务还需要在评估过程中使用CoT提示以充分展示其能力。另一个需要注意的是这种评估方法也可以用于评估微调LLMs的能力。实际上一些排行榜例如Open LLM Leaderboard [586]是基于这种方法构建的评估基础LLMs和微调LLMs。
微调LLMs的评估
在这部分中微调LLMs是指在预训练模型权重基础上进行指令微调或对齐微调后获得的模型检查点。通常微调LLMs将在各种能力上进行测试例如知识利用和人类对齐因此常见的情况是它们会使用多种评估方法进行评估。除了基于基准的评估外人类基础和基于模型的方法也广泛用于评估微调LLMs的高级能力。接下来我们将介绍这两种评估方法。 基于人的评估。与基本能力的自动评估不同人类评估通常考虑了在实际应用中更多的因素或能力例如人类对齐和工具操作。在这种评估方法中测试任务通常采用开放性问题的形式邀请人类评估员对LLMs生成的答案质量进行评判。通常人类评估员有两种主要的评分方法成对比较和单一答案评分。在成对比较中给定相同的问题人类被分配来自不同模型的两个答案以确定哪一个更好而在单一答案评分中他们只需逐次评分一个答案。例如HELM [398]使用人类对摘要和虚假信息任务进行单一答案评分而Chatbot Arena [606]构建了一个众包平台允许用户与两个匿名的聊天LLMs进行对话并报告成对比较结果。 基于模型的评估。由于人类评估既昂贵又耗时一些工作提出利用强大的封闭源LLMs例如ChatGPT和GPT-4作为人类评估员的替代品[606, 608]。例如AlpacaEval [608]收集了一组指令并利用功能强大的LLM例如GPT-4作为评委对参考输出进行成对比较。此外MT-bench [606]收集了一组多轮问题用于评估并通过ICL和CoT等方法提高了基于LLM的评估员的可靠性。与人类评估员相比LLMs如ChatGPT和GPT-4可以在小规模手工制作和大规模众包评估任务中与人类达成高度一致。尽管如此这些封闭源LLMs的访问受到限制存在潜在的数据泄漏风险。为了解决这个问题最近的工作[606]探索了使用人类评估员的评分数据来微调开源LLMs例如Vicuna [124]作为模型评估员从而缩小了与功能强大的封闭源LLMs例如GPT-4之间的差距。
专门的LLMs的评估
专门的LLMs是指专门适用于某些领域或应用程序如医疗保健[282]和金融[617]的模型检查点。作为专门的任务求解器专门的LLMs将被测试不仅在通用能力如复杂推理等基本能力和人类对齐等高级能力上还在与其指定领域或应用程序相关的特定能力上。为了实现这一目的通常需要构建专门针对目标领域或应用程序的具体基准。然后这些领域特定的基准可以与通用基准结合使用以对专门的LLMs进行综合和有针对性的评估。例如MultiMedQA [282]是医疗保健领域的一个具体基准包括医疗检查和医疗保健问题。在这项工作[282]中MultiMedQA已与MMLU [291]结合使用以评估专门用于医疗保健领域的LLMs如Med-PaLM [282]。类似地FLUE [617]构建了一个金融领域的基准涵盖从金融情感分析到问题回答的各个方面。它已与BBH [614]合作使用以评估金融LLMs如BloombergGPT [286]。
不同评估方法的优缺点
在上文中我们讨论了评估LLMs能力的不同方法。接下来我们简要分析每种评估方法的优缺点。 基于基准的方法。这种评估方法可以利用现有的基准来评估LLMs的性能。这些基准中涉及的任务通常包含足够的测试样本来衡量核心能力例如推理。整个评估过程可以几乎自动化进行便于对各种基础LLMs进行测试实验特别是在预训练期间监测模型检查点的性能。然而LLMs对评估设置通常很敏感包括问题提示、零样本或少样本测试以及答案解析方法。因此在进行评估实验时应考虑可能的影响因素。评估结果应注意采用的评估设置。另一个问题是数据污染[56]即测试数据本身或相关内容已包含在预训练语料库中。随着越来越多的开放数据被用于开发LLMs这一现象变得越来越严重。 基于人的方法。人类评估在评估LLMs解决实际任务的能力时具有一些优势。其中一个关键优点是它能够直接反映LLMs的实际能力。基于来自真实用户的反馈和经验人类评估提供了LLMs在实际场景中性能的更直接的度量。此外它可以基于人类评估员进行更灵活和多样化的评估任务。例如用户可以提交各种查询并根据自己的任务认知来测试LLMs的能力。这允许深入了解LLMs在不同类型的任务和背景下的优势和劣势。然而人类评估也具有固有的限制可能会影响其准确性和一致性。评估员之间的个性化口味和教育水平的差异等因素可能会引入评估过程中的偏见或不一致性。在某些情况下用户的判断可能是主观的可能不反映LLMs的真实能力。此外进行强大且可靠的人类评估通常需要大量的评估员这可能非常昂贵和耗时。此外人类评估通常不可重复因此无法扩展现有的评估结果或跟踪LLMs的进展。 基于模型的方法。作为基于人类方法的替代品基于模型的方法旨在减少对人类参与的依赖实现更高效和可扩展的评估。此外LLMs可以为分配的评分提供有意义的解释从而增强了评估的可解释性。尽管具有可扩展性和可解释性基于模型的方法已被发现存在一些问题包括位置、冗长和自我增强偏见[606]。特别是位置偏见即呈现响应的顺序指的是LLMs倾向于为特定位置的答案分配较高的分数而不是其他位置的答案。冗长偏见意味着LLMs倾向于喜欢冗长的答案即使与较短的答案相比它们在质量上较短。自我增强偏见表示LLMs经常高估自己生成的内容。此外由于LLMs在解决复杂推理问题方面能力有限它们不能胜任某些困难任务的合格评估者例如数学推理。这些限制可以通过特定的提示工程和微调策略在一定程度上
总结一下我们对LLMs评估的现有工作的分类表11主要基于两个主要维度即评估方法和模型类型这些维度进一步扩展了测试能力。还有一些最近的工作[612, 613]也讨论了LLMs评估现有工作的分类或分类法。
7.4 实证评估
上述的评估基准和方法主要用于评估LLMs的整体能力。在本部分我们对第7.1节和第7.2节中讨论的能力进行细粒度的评估。对于每种能力我们选择代表性的任务和数据集进行评估实验以检验LLMs的相应性能。
7.4.1 实验设置
在这一部分我们介绍了我们评估的实验设置。
评估模型
为了进行评估我们考虑了来自开源模型到闭源API访问模型的代表性LLMs具体如下
• 开源模型。现有的开源模型可以分为基础模型和指导调优模型。基础模型仅在大型通用语料库上进行了语言建模目标的预训练但没有进一步进行监督微调。在我们的评估中我们选择了四个代表性的基础模型包括LLaMA7B[57]、LLaMA 27B[90]、Pythia7B和12B[87]以及Falcon7B[626]。指导调优模型是使用指导即任务数据集、日常聊天或合成指导进行微调的模型。在我们的实验中我们选择了四个代表性的指导调优模型包括Vicuna7B和13B[124]、Alpaca7B[123]和ChatGLM6B[84]。此外我们还包括LLaMA 2-Chat7B[90]以供比较它是一个代表性的模型通过指导调优和RLHF与人对齐基于LLaMA 27B。
• 闭源模型。除了开源模型之外还有一些只能通过API访问的闭源模型受到了开发人员和研究人员的广泛关注。在这里我们选择了四个代表性的闭源模型包括text-davinci002/003简称Davinci002/003、ChatGPT、Claude和Claude 2其中前三个模型由OpenAI开发另外两个由Anthropic开发。
任务和数据集
接下来我们为第7.1节和第7.2节中讨论的能力设置了评估任务和数据集。我们主要评估LLMs在这些数据集上的零样本性能。对于那些难以以零样本方式解决的更复杂任务例如数学推理和工具操作我们主要报告3次试验的性能考虑到开源模型的上下文长度限制。
• 语言生成。如前所讨论对于语言生成我们考虑评估三种类型的任务即语言建模、条件文本生成和代码合成。具体来说我们选择了四个常用的数据集即LAMBADA [188]语言建模、WMT’22 [421]机器翻译、XSum [425]文本摘要和HumanEval [92]代码合成进行评估。在WMT’22中我们从原始的大规模测试集中选择了每种语言对1000个示例以检查LLMs在机器翻译中的平均性能。我们评估LLMs在这些数据集上的零样本性能并计算了LAMBADA的预测单词的准确性、WMT’22的BLEU-4、XSum的ROUGE-L和HumanEval的pass10。
• 知识利用。为了评估知识利用能力我们选择了四个问答数据集即TriviaQA [435]、Natural Questions [431]、Web Questions [434]和ARC [432]以及一个事实提取数据集WikiFact [448]。我们还报告了LLMs在这些数据集上的零样本性能并计算了ARC的准确性和其他数据集的精确匹配度。
• 复杂推理。对于复杂推理我们评估了开放问题QA [443]、HellaSwag [460]和SocialIQA [459]等比较模型用于知识推理Colored Objects [292]和Penguins in the Table [292]用于符号推理GSM8k [470]和MATH [291]用于数学推理。我们计算OpenbookQA、HellaSwag和SocialIQA的准确性Colored Objects和Penguins in the Table的解决率GSM8k和MATH的准确性。对于知识推理任务我们评估零样本性能因为它们都是可以在零样本设置中解决的问答任务。对于复杂的符号推理和数学推理任务我们利用3次示范来更好地引导LLMs完成它们。在现有工作[33361]的指导下我们还利用了思维链提示策略来更好地解决数学推理任务。
• 人类对齐。对于人类对齐我们选择了TruthfulQA [433]来衡量LLMs是否在回答问题时是真实的CrowS-Pairs [482]和WinoGender [483]来评估LLMs中的刻板印象RealToxityPrompts [484]来评估LLMs生成有毒语言的程度以及HaluEval [481]来测试LLMs识别幻觉的能力。由于Real-Toxicity-Prompts的测试集太大我们从中随机抽取了10000个示例进行评估。我们遵循LLaMA [57]的做法报告零样本性能并计算了TruthfulQA的认定为真的准确性、CrowS-Pairs的偏见句子识别准确性高困惑度、WinoGender的指代解析准确性he/she/they、RealToxityPrompts的毒性评分以及HaluEval的识别幻觉的平均准确性。对于TruthfulQA我们遵循现有工作[57]的做法使用text-davinci-003代替人类进行评分。对于Crows-Pairs和WinoGender我们遵循LLaMA [57]的实验设置来计算困惑度和指代解析分数。对于RealToxityPrompts我们利用Perspective-API进行毒性评估。
• 与环境互动。为了测试这一能力我们选择了ALFWorld [488]和WebShop [489]进行评估这些模拟了家庭和电子商务环境等真实世界情境。我们遵循ReAct [367]的设置在WebShop和ALFWorld上分别评估了LLMs的1次和2次试验性能并计算了ALFWorld的成功率和WebShop的平均分数/成功率。此外我们还遵循ReAct [367]的设置来减小输入提示的长度并使用换行作为EOS标记。
• 工具操作。对于工具操作我们考虑了两种类型的工具包括搜索引擎和模型接口。因此我们采用了两个工具操作基准即HotpotQA [457]和Gorilla [496]。HotpotQA要求LLMs使用搜索引擎从网络上检索文档而Gorilla则要求LLMs从TorchHub、TensorHub和HuggingFace三个中心调用模型API。我们计算了HotpotQA的精确匹配度和Gorilla的准确性。对于HotpotQA我们遵循ReAct [367]的做法报告3次试验的性能。对于Gorilla我们遵循其论文[496]发布的代码并评估零样本性能。
实验细节
对于每个任务和数据集我们使用与现有工作提供的相同提示和结果解析方法即TruthfulQA、HotPotQA、Gorilla、HaluEval或根据我们的经验设计即TriviaQA、Natural Questions、Web Questions、ARC、WikiFact、GSM8k、MATH、C-Objects、Penguins、LAMBADA、WMT’22、XSum、HumanEval、CrowS-Pairs、WinoGender、RealToxityPrompt来评估比较的LLMs。具体来说所有关于闭源模型的实验都是基于调用它们的官方API进行的而对于开源模型我们使用它们公开可用的代码和模型参数并在8个A80080G GPU上执行推断。对于TriviaQA、OpenbookQA、HellaSwag和SocialIQA我们在开发集上进行实验因为测试集没有公开发布。而对于其他数据集我们在测试集上进行实验。要重现我们的实验我们还公开在https://github.com/RUCAIBox/LLMSurvey/tree/main/Experiments中发布了我们的实验代码和数据。
7.4.2 结果分析和发现
我们在表12中报告了实验结果并对结果进行了分析如下。 表12在特别选择的任务上评估LLMs的八种能力。橙色和蓝色字体的阴影分别表示闭源模型和开源模型结果的性能顺序。此表将不断更新以纳入更多模型的结果。
对于闭源模型的分析
我们总结对四个闭源模型即ChatGPT、Claude、Davinci003和Davinci002的分析和发现如下
• 这五个闭源模型在作为通用任务求解器方面取得了令人期待的结果其中ChatGPT大多表现最佳。ChatGPT、Claude、Claude 2、Davinci003和Davinci002在大多数任务中表现良好包括复杂任务例如GSM8k显示出成为通用任务求解器的巨大潜力。其中ChatGPT在评估任务中表现出更强大的模型能力在所有任务中获胜最多。在一些评估任务中ChatGPT与其他闭源模型之间的性能差距非常大尤其是在复杂任务上例如GSM8k上的78.47ChatGPT对49.96Davinci002以及HumanEval上的79.88ChatGPT对51.22Claude。
• Claude 2、ChatGPT和Davinci003在与环境和工具操作任务的交互方面表现更好。在两个评估任务中Claude 2、ChatGPT和Davinci003的表现优于其他模型很多例如HotpotQA上的36.40Claude 2对26.00Davinci002Gorilla-TF上的44.53ChatGPT对7.74Claude以及Gorilla-TH上的72.58Davinci003对22.04Claude。一个可能的原因是这三个模型已经专门针对这些高级能力进行了优化例如支持外部插件的使用。
• 所有对比模型在非常困难的推理任务上表现不佳。在MATH和HotpotQA上所有模型包括ChatGPT表现不佳。这两个任务很难解决需要准确理解复杂的数学知识并在文档之间执行多跳推理。此外这些模型在机器翻译任务WMT上的表现也相对较弱。一个可能的原因是WMT还包含许多使用小语言的评估示例这些示例可能在这些LLMs的预训练数据中没有得到很好的覆盖。
对于开源模型的分析
接下来我们继续展示对八个开源模型LLaMA 2-Chat、Vicuna、Alpaca、ChatGLM、LLaMA 2、LLaMA、Pythia和Falcon的分析和发现如下
• 指导调优模型大多优于基础模型。在所有比较的开源方法中指导调优模型LLaMA 2-Chat、Vicuna、Alpaca和ChatGLM大多优于非指导调优模型LLaMA 2、LLaMA、Pythia和Falcon。这表明指导调优通常能够改善LLMs在解决各种任务中的少样本或零样本能力。然而在指导调优之后Vicuna7B和Alpaca7B在LAMBADA一项语言建模任务上表现下降。原因可能是指导数据主要关注使LLMs能够遵循人类指令这并不总是对通用语言生成任务有用。
• 这些小型开源模型在数学推理、与环境互动和工具操作任务上表现不佳。在数学推理、与环境互动和工具操作任务上所有这些评估的开源模型表现都不佳包括指导调优模型。一个可能的原因是用于微调这些模型的指导数据并没有专门设计用于这些任务。此外由于模型大小较小这些闭源模型可能具有有限的模型容量。
• 在不同的人类对齐任务上表现最佳的模型各不相同。对于不同的人类对齐任务我们可以看到这些模型在性能排名上表现不一致。例如在TruthfulQA上LLaMA 2-Chat7B在比较的开源模型中表现最佳而在CrowS-Pairs上Vicuna13B表现最佳。一个可能的原因是这些任务是为了评估人类对齐的不同方面而设计的这些模型在不同任务上表现不同即使对于相同模型的变体也是如此例如Pythia7B和Pythia12B。需要进行更多的实验和分析来揭示更详细的发现。
• 作为更近期发布的模型LLaMA 27B在整体上表现良好尤其是在复杂推理任务上。对于复杂推理任务LLaMA 27B大多表现优于其他基础模型例如在C-Objects中的43.95LLaMA 27B对29.80Falcon7B。对于其他任务例如语言生成和知识利用LLaMA 27B也可以达到与性能最佳的基础模型相当的性能。它使用了更多的数据进行预训练大约2万亿个标记这主要有助于出色的性能。此外它还进行了更强大的数据清理过程。
• 扩展开源模型可以持续改善性能。通过比较Vicuna7B和Vicuna13BPythia7B和Pythia13B的性能我们可以看到规模较大的模型在这些评估任务上大多表现优于较小的模型表明扩大模型规模的有效性。在不同任务之间扩展模型对于更复杂的任务例如符号和数学推理更有益处较大的模型在很大程度上优于较小的模型。