论文阅读 - Uncertainty of Thoughts: Enhanced Information Seeking in LLMs - NeurIPS 2024

目录

概述

绪论

实验方法

问题生成和模拟

基于不确定性的奖励计算

通过奖励传播选择问题

案例展示

实验

Experimental Setup

Performance


 

 https://openreview.net/pdf?id=CVpuVe1N22

概述

        该论文介绍了一种名为 “思维不确定性”(Uncertainty of Thoughts, UoT)的算法,旨在提升大型语言模型(LLM)在不确定性环境下的信息搜寻能力。该算法通过主动提问来寻求解决任务所需的信息,尤其适用于医疗诊断和故障排除等实际应用。

        UoT 结合了以下三个关键组成部分:

        1. 不确定性感知模拟方法:使模型能够模拟可能的未来情景及其发生的可能性。

        2.基于不确定性的奖励机制:该机制以信息增益为基础,激励模型积极寻求信息,从而最大限度地减少未知信息的数量

        3.奖励传播方案:用于选择最佳问题,以最大限度地提高预期奖励。

        该论文通过在医疗诊断、故障排除和“20 Questions”游戏等任务上的实验表明,与直接提示相比,UoT 在多个 LLM 上实现了 38.1% 的平均性能提升,提高了任务成功率和效率(即完成任务所需的问题数量)

绪论

        LLM 的能力增长与实际应用:随着 LLM 能力的提升,它们越来越多地被部署到具有挑战性的现实环境中,这些环境通常涉及不确定性和模糊性

        LLM 智能体或助手的发展需求:为了有效地完成交互环境中的任务,LLM 需要具备主动寻求信息的能力,例如通过在对话场景中提问。

        医学诊断的例子:在医学诊断中,病人最初可能不会提供完整的症状细节。医生需要通过提问来揭示关键信息,从而做出正确的诊断。提问能力在揭示病人未主动提供的关键细节方面至关重要。例如,病人可能只抱怨头痛,但通过医生的提问,可能会发现与正确诊断相关的其他重要信息,如视力变化、对光敏感或头部受伤等。

        现有技术的局限性:现有技术侧重于提高 LLM 基于给定信息进行推理或规划的能力,而不是提高 LLM 有效率地寻求信息的能力。例如,Chain-of-Thought (CoT) 和 Tree-of-Thoughts (ToT) 允许 LLM 表达中间“想法”并对其进行推理,但缺乏有效的问题信号,无法通过揭示关键信息来更好地减少不确定性。

方法简介:

        引入 Uncertainty of Thoughts (UoT):为了增强 LLM 主动寻求信息的能力,该论文介绍了一种名为 Uncertainty of Thoughts (UoT) 的方法,该方法通过模拟自身的不确定性来改进 LLM 提出有用问题的能力。UoT 是一种基于信息增益的奖励方法,它激励模型以最大程度减少未知信息的方式来寻求信息。

        UoT 的关键组成部分:UoT 结合了不确定性感知模拟框架(使模型能够模拟可能的未来情景),基于不确定性的奖励(以信息增益为基础),以及奖励传播方案(用于选择最佳问题)

        UoT 的目标:该论文旨在开发能够在高度不确定和模糊的环境中有效运行的 LLM,超越传统的 QA 设置,在传统 QA 设置中,解决任务所需的所有信息都会在开始时提供给模型。据作者所知,UoT 是第一种通过显式建模和寻求减少不确定性来使 LLM 能够提出有效问题的方法。

论文的主要贡献:

        介绍 UoT,一种使 LLM 能够显式建模和寻求减少不确定性的方法。

        介绍了一个包含 3 个任务和 5 个数据集的基准,用于评估 LLM 通过提问来寻求所需信息的能力.

        实验表明,与直接提示相比,UoT 将多个 LLM 的成功率平均提高了 38.1%,并在任务成功率和效率方面都达到了最佳性能。

实验方法

        实验方法部分主要介绍了论文中使用的 UoT (Uncertainty of Thoughts) 算法,以及实验设置的各个方面,包括问题设定、基线方法、数据集和评估指标等。

问题设定

        实验模拟了提问者和回答者之间的互动2。提问者的目标是通过提出问题来推断未知的特定信息;

        使用可能性空间 Ω 来表示所有可能的选项,其中 ω ∈ Ω 代表每个场景中的真实选项。例如,在医疗诊断中,Ω 是所有可能疾病的集合;

        提问者和回答者之间通过多轮对话进行互动,直到提问者正确确定答案或达到最大轮数;

UoT 方法概述

        UoT 旨在通过模拟模型自身的不确定性,来提高大型语言模型(LLM)主动寻求信息的能力;

        问题生成和模拟:LLM 生成多个候选问题,并模拟每个问题的未来场景;

        基于不确定性的奖励:使用基于信息增益的奖励来评估问题,激励模型寻求信息;

        奖励传播方案:用于计算提问每个候选问题的预期奖励,并选择预期奖励最高的问题;

问题生成和模拟

        LLM 首先生成多个候选问题;

        然后,对于每个候选问题,模拟未来几个步骤的可能性,形成一个可能性树。树的节点类型包括:

        回答者节点:轮到回答者回答问题;

        提问者节点:轮到提问者提出问题;

在每个回答者节点,基于对当前问题的可能答案(肯定或否定)进一步扩展树;

使用 LLM(“回答者模拟器”)来确定在当前对话历史下,哪些可能性与肯定或否定答案相符;

基于不确定性的奖励计算

        利用信息论中的信息增益概念来评估问题的有效性,即衡量通过提问减少了多少不确定性,激励模型能够提出最大程度减少不确定性的问题;

        使用熵来衡量随机变量的不确定性,熵越高表示不确定性越大;

熵的计算:衡量当前可能性集合 Ωv 的不确定性程度

        公式:H(X) = -\sum_{i=1}^n p(x_i | \Omega_v )logp(x_i | \Omega_v)

        假设:由于缺乏信息性的先验知识,假设每种疾病的可能性相同,即均匀分布,例如,p(流感) = p(肺炎) = p(红疹) = 1/3, 熵为H(X) = - (1/3 * log(1/3) + 1/3 * log(1/3) + 1/3 * log(1/3))

        根据回答减少模型对未知随机变量的不确定性的程度,为问题分配奖励;

信息增益的计算:衡量提出某个问题后,期望不确定性减少的程度

        问题示例:“你发烧了吗?”

       模拟回答:LLM 模拟肯定和否定两种回答

            肯定回答 ΩAv:“是”,则可能性集合缩小为 {流感,肺炎},即发烧通常与流感和肺炎相关

             否定回答 ΩNv:“否”,则可能性集合缩小为 {红疹},即不发烧通常与红疹相关

        条件概率计算:p_v^A = 2/3(因为 Ωv 中有 2 种疾病可能导致发烧)

                                p_v^N = 1/3(因为 Ωv 中只有 1 种疾病不太可能导致发烧)

        信息增益公式:IG_v(X) = -p^A_v log p_v^A - p^N_v log p_v^N

                IGv(X) = - (2/3 * log(2/3) + 1/3 * log(1/3))

        奖励函数 Ru(v) 的定义基于信息增益,并进行了一些修改以提高奖励的区分度

        奖励函数: 对信息增益进行调整,使其更适合作为奖励信号

                公式:R_u(v) = \widetilde{IG}_v(X) := (-p_v^A log p_v^A - p_v^N log p_v^N) / (1+ \lambda^{-1} |p_v^A - p_v^N|)

                确保奖励值在范围内,提供归一化且一致的奖励;

                当 ΩAv 和 ΩNv 具有相同概率时(即问题能将可能性集合大致减半),奖励函数达到最大值,反映了不确定性的最大程度降低;

        当其中一个子集的概率为零时,奖励函数达到最小值,表示不确定性没有降低

        重要性:直接使用信息增益可能导致奖励区分度不足,因此需要进行缩放调整

通过奖励传播选择问题

使用奖励传播方案来反映过去决策的有效性,通过累积奖励来收集多个模拟步骤中的奖励;

定义了累积奖励 Ra(v),它在树的每个节点 v 处累积奖励

        累积奖励 Ra(v):从根节点到当前节点 v 的所有奖励之和

        公式:R_a(v) := R_u(v) + \left\{\begin{matrix} 0 & v \ is \ root\\ R_a(Parent(v)) & otherwise \end{matrix}\right.

计算每个节点的预期奖励 Re(v),表示在该节点及其所有后代节点上预期获得的总奖励值;

        预期奖励 Re(v):在节点 v 及其所有后代上预期获得的总奖励值

        公式:R_e(v) := \left\{\begin{matrix} R_a(v) & if \ v \ is \ a \ leaf; \ otherwise:\\ p_v^A R_e(v^A) + p_v^N R_e(v^N) & if \ v \ is \ an \ answer \ node \\ \frac{1}{m} \sum_{w \in Chindren(v)}^{m} R_e(v) & if \ v\ is \ a \ Questioner \ Node \end{matrix}\right.

        对于回答者节点,预期奖励是肯定回答和否定回答的概率加权和;

        对于提问者节点,预期奖励是所有子节点的平均奖励

最后,选择具有最高预期奖励的问题

案例展示

        游戏设定:提问者(LLM)需要通过最多20个“是”或“否”的问题,猜出回答者心中想的一个物体...。假设回答者心中想的是“雪豹”。

问题生成:

        在第1轮,提问者(LLM)根据历史对话(此时为空)和可能性集合(比如,预先设定的动物、地点、食物和物体等类别)生成多个候选问题。例如,LLM可能生成以下三个候选问题:"X是人造物体吗?"、"X是动物吗?"、"X是植物吗?"

多步模拟:

        对于每个候选问题,LLM模拟可能的未来场景,形成一个树状结构。

        树的根节点是一个回答者节点,表示刚提出了一个问题。

以问题“X是动物吗?”为例,LLM模拟两种可能的回答:

▪回答“是”:产生一个子节点(提问者节点)。LLM需要继续生成下一个问题,例如“X是哺乳动物吗?

▪回答“否”:产生另一个子节点(提问者节点)。LLM需要生成另一个问题,例如“X是植物吗?”

LLM重复这个过程,继续向下扩展树,直到达到预设的深度(例如3步)

可能性集合更新:

        在模拟过程中,每个节点都有一个当前可能性集合Ωv,表示与当前对话历史一致的可能选项;

        当模拟到回答者节点时,LLM使用“回答者模拟器”来更新可能性集合;

        例如,如果问题是“X是动物吗?”,模拟回答是“是”,则LLM将可能性集合Ωv更新为只包含动物的集合;

        这个过程不断进行,直到树的叶子节点。

不确定性奖励计算:

        在生成树之后,LLM需要评估每个问题的有效性,即减少不确定性的程度;

        LLM使用信息增益来衡量不确定性的减少量,并基于此为每个问题分配奖励;

        例如,如果问题“X是动物吗?”能将可能性集合大致减半,那么这个问题的奖励就比较高;

奖励传播与问题选择:

        LLM根据树结构,自底向上地计算每个节点的累积奖励和预期奖励;

        累积奖励表示从根节点到当前节点的总奖励

        预期奖励表示在当前节点及其后代节点上预期获得的奖励总值

        最后,LLM选择根节点上预期奖励最高的那个问题,作为实际向用户提出的问题

实验

Experimental Setup

模型(Models):

        使用了多种大型语言模型(LLMs)来评估该方法(UoT)的通用性,包括Llama-3-70B-Instruct...,Mistral-Large,Gemini-1.5-Pro,Claude-3-Opus和GPT-4

        同时验证了早期发布的一些LLMs的性能,包括Llama 2-70B-Chat,Cohere,PaLM 22,Claude 2和GPT-3.5-turbo

基线(Baselines):

        直接提示(Direct Prompting, DP):直接提示LLM生成下一个回复;

        规划提示(Planning Prompting, PP):利用另一个LLM来规划未来,并以此决定要提出的问题;

        思维链(Chain-of-Thought, CoT):通过详细描述推理步骤来提高LLMs的推理能力;

        CoT-SC(自洽性,Self-Consistency):一种集成方法,探索多个推理路径;

        Reflexion:让智能体提出行动并进行自我评估,以培养新的想法;

        思维树(Tree-of-Thoughts, ToT):通过在树结构上探索和评估多个推理路径,使LLMs能够做出决策

        在开放集(OS)和封闭集(CS)设置中评估方法和LLMs。在开放集中,模型在没有先前结果知识的情况下进行测试,需要自己探索和发现可能的目标或解决方案;在封闭集中,模型被给予关于所有可能结果的完整信息,例如,在医疗诊断中,模型知道所有可能的疾病列表。

场景和数据集(Scenarios and Datasets):

        20个问题(20 Questions):一个猜谜游戏,回答者想一个东西,提问者提出最多20个是非题来猜它;

        医疗诊断(Medical Diagnosis):医生需要向患者询问症状,以确定准确的诊断;

        故障排除(Troubleshooting):客户支持技术人员与客户互动,以识别和解决计算机系统、电子设备、机械或其他复杂系统中的故障或问题;

        UoT(开放集)设置:基于对话历史迭代更新LLMs感知的可能性,而不是预先定义所有可能性。

评估指标(Evaluation Metrics):

        成功率(Success Rate, SR):SR = S/T,其中S是成功案例的数量,T是总案例数;

        成功案例中的平均对话长度(Mean Conversation Length in Successful Cases, MSC):MSC = Rs/S,其中Rs是成功案例中的总回合数;

        平均对话长度(Mean Conversation Length, MCL):MCL = R/T,其中R是所有案例中的总回合数。MCL衡量基于成功和失败案例中使用资源的效率;

Performance

20 个问题(20 Questions):

        对于所有类型的 LLM,配备 UoT 的模型在开放集(OS)和封闭集(CS)设置中均优于基线模型;

        在使用 GPT-4 增强规划和推理的方法中,CoT (CS) 和 PP (CS) 的性能甚至低于单独使用 GPT-4;

        UoT (OS) 表现出卓越的性能,成功率比 Adapted-ToT (OS) 平均提高了 8.7%;

        UoT (CS) 实现了最高的成功率,超过了第二好的 Reflexion 平均 4.3%;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值