论文《Improving Factuality and Reasoning in Language Models through Multiagent Debate》
原论文
原论文链接:https://arxiv.org/abs/2305.14325
论文项目网站:Improving Factuality and Reasoning in Language Models with Multiagent Debate
二 介绍
本文中,提出了一种互补的方法来提高语言响应,多个语言模型实例提出并辩论他们的个人反应和推理过程,在多轮,以达到一个共同的最终答案。
结果表明该方法提高了生成内容的事实有效性,减少了当代模型容易出现的错误答案和幻觉。
大语言模型提取的自然语言的质量和准确性可能无法保证,当前的模型可能会因为自信地产生幻觉或在推理链中做出令人难以置信的跳跃而受到影响。最近很多工作集中在提高语言模型的事实准确性和推理,但是这些工作大多是应用于单个模型的。本文提出多智能体联合辩论推理,以得出一个共同的答案。
给定查询,语言模型的多个实例首先生成查询的各个候选答案。然后,每个模型实例读取并批评所有其他模型的响应,并使用此内容更新自己的答案。这一步要重复几轮。这一过程促使模型构建与其内部批评者以及预印本中的合理性相一致的答案。
发现辩论不仅仅是为了放大模型法定人数中的一个正确答案-我们发现许多情况下,所有模型最初都做出了错误的预测,但随着辩论的进行,最终得出了正确的答案。
论文的工作主要是:
- 利用模型之间的多代理辩论过程 来提高当代语言模型中的事实正确性和推理准确性
- 引入了一个新的事实正确性基准,当代语言模型与之斗争。
- 评估了我们的辩论程序在语言生成中的表现,无论是在代理的数量,辩论的基本回合,以及在一组六个不同的推理和事实准确性任务中引发这种行为的提示。
三 通过多智能体辩论生成语言模型
三个方面
- 多Agent辩论在多大程度上提高推理?3.1
- 多Agent辩论在多大程度上提高了事实效度?3.2
-
什么样的设计选择使多Agent辩论可以提高语言生成性能?3.3
3.1
评估多智能体辩论在多大程度上提高了语言模型的基本推理过程
实验:1.算数:六个不同的两位数组成的算术表达式 2.GSM8K:解决小学数学推理任务 3.考虑模型能力的战略推理,并要求模型预测国际象棋比赛中的最佳下一步
基线:首先,我们要求代理直接生成响应(单个代理)。接下来,我们考虑要求语言模型生成,然后对生成的响应进行“自我反思”。最后,我们考虑使用多个代理生成响应并执行多数投票。
结果:报告每种方法在算术、小学数学和国际象棋推理任务上的结果。在每个任务中,我们观察到,利用多个不同的代理生成解决方案,提高了使用一个单一的语言模型代理生成解决方案的性能。同时,我们也看到,当一个语言模型被要求批评它的早期生成时,反射通常会在性能上有适度的提升。多智能体辩论可以被看作是反思和多智能体生成的结合,它大大提高了每个任务的推理能力。
实验中发现:所有的模型最初给予一个不正确的反应,但辩论的结果仍然获得正确的答案,因为代理人批评对方的推理。因此,我们辩论的目的不仅仅是扩大一个正确的答案-所有模型最初都可能是错误的,但通过辩论过程得出正确的答案。与其他推理方法的兼容性。
3.2
评估多主体辩论在多大程度上提高了语言模型中的潜在真实性。
实验在三种不同的环境中评估语言模型的真实性:
-
传记。为了评估语言模型的真实性,我们引入了一项新的任务,即准确地生成人们的历史传记。
-
利用现有的MMLU数据集评估语言模型在回答不同的事实知识问题时的真实性
-
测量了国际象棋比赛中可能移动的有效性
结果:基于反射的方法在真实性设置中会导致较差的性能。相比之下,辩论在这一设置中的表现也是最好的。当潜在的语言模型对问题不确定时,不同的语言代理倾向于给出不同的答案,当这些不同语言的代理被要求相互交流时,每个代理都会迅速将他们的意见转变为更准确的共识答案。
3.3
多智能体辩论如何改善语言模型中的底层语言生成过程。
代理数量。首先,我们分析了辩论中代理人数量的影响。增加了辩论中使用的代理数量,同时将辩论长度固定为2。在算法上,性能随着代理数量的增加而单调增加。
辩论回合数。增加了代理之间的辩论长度,同时将代理的数量固定为3个。发现,在算术任务,性能也单调增加辩论长度。然而,我们发现,额外的辩论轮以上的四个导致类似的最终表现4轮辩论。
辩论长度。辩论使用较长的提示导致较慢的收敛到正确的答案,但也导致一个更好的正确答案的最终共识。
初始化提示。我们首先指示每个语言模型在MMLU数据集上表现得像不同的角色(教授,医生,数学家)。不同的初始化提示获得进一步的收益。
总结的效果。当辩论中有许多代理人时,其他代理人的回应可能首先被总结,然后作为上下文给出,从而减少上下文长度。此操作可提高性能。
利用不同的语言模型。对于同一个数学问题,使用不同的模型ChatGPT:和Bard:模型。第一轮都错误,但是第二轮ChatGPT可以调整回正确答案。在这个集合中,我们发现多智能体辩论提高了两个智能体的性能。
4.相关工作
为了提高推理能力,方法依赖于提示技术,验证,思维链演示,以及中间自我反思和微调。
为了提高真实性,方法依赖于训练技术,如RLHF,修剪真实数据集,外部知识检索和基于似然估计的无训练方法。
本文的工作提供了另一种方法来获得推理和事实的语言模型:使用多智能体辩论。
5.局限性和讨论
与其他提示技术相比,我们的多智能体辩论程序在计算上更昂贵,因为它需要多个语言生成,和一个基本的辩论程序。然而,我们认为这种方法可以被视为一种生成额外数据的方法,这些数据可以被提取回来以自我改进原始基础模型。
虽然辩论通常会汇集成一个最终答案,但这些答案不一定是正确的。尽管答案是不正确的,语言模型会自信地确认他们的答案是正确的,并且与所有其他代理的响应一致。