ReAct 怎么证明“边想边查”有用?
ReAct 把“只想”“只查”“边想边查”拆开比,结果并不一边倒:读结论要看任务、看跟谁比、看错在哪。
这一页为什么在这里
揭示 ReAct 的真数字,回答 Q16 的审稿问题:和谁比、在哪类任务上、错在哪。结果不是一边倒,正好用来练习读论文的三问。末尾一行把第二站留下的问题交给第三站,右下角出口接到第 9 讲。
上屏
- 第 1 步:表格,条件小字:同一套示范,同一个模型 PaLM-540B,2022。行:只想(CoT)|只查(Act)|边想边查(ReAct)。列:多跳问答 HotpotQA(答案完全一致的比例)|事实核查 FEVER(判断正确的比例)。数字先空着。
- 第 2 步:填数:只想 29.4|56.3;只查 25.7|58.9;边想边查 27.4|60.9。表下一行:两者结合(先用一种,不行换另一种):35.1|64.6。
- 第 3 步:小表“失败里错在哪”(人工看了失败的例子):编造事实:只想 56%,边想边查 0%|推理出错(含原地绕圈):16%,47%|搜不到有用的:—,23%。一行判断:“更好”都带条件:哪个任务、跟谁比、错在哪。底部:留下的问题:一次任务结束,经历就丢了 → ③ 让 agent 自己写下来。右下角出口:→ 第 9 讲|查到的结果,成了下一步的输入。
讲
第 1 步 · 教师可说的话
先猜三种做法
ReAct 的作者没有只放一个漂亮的例子。同一套示范、同一个模型,拆成三种做法,在两个任务上比。你猜哪种最好?
指图与比较
比较三行方法与两个任务,数值格保持空白。
第 2 步 · 教师可说的话
看两个任务的结果
结果不是一边倒。多跳问答上,只想反而最高,29.4;事实核查上,边想边查最高,60.9。两种结合,先用一种、不行换另一种,两个任务都最好。
指图与比较
比较每列高亮值,再看两种方法结合后的结果。
第 3 步 · 教师可说的话
看失败类型
再看错在哪。他们人工看了失败的例子:只想的时候,失败里一大半是编造事实,56%;边想边查几乎不编,0%,但更常绕圈子,或者搜不到有用的东西。读一篇论文的结论,要问:在哪个任务上、和谁比、错在哪。
指图与比较
对照编造事实、推理出错和搜不到有用信息三行。
本页衔接
检索可以成为动作;下一步是让 agent 在跨天的生活中留下并取回自己的经历。
连续教师稿原文
ReAct 的作者没有只放一个漂亮的例子。同一套示范、同一个模型,拆成三种做法,在两个任务上比。你猜哪种最好?
结果不是一边倒。多跳问答上,只想反而最高,29.4;事实核查上,边想边查最高,60.9。两种结合,先用一种、不行换另一种,两个任务都最好。
再看错在哪。他们人工看了失败的例子:只想的时候,失败里一大半是编造事实,56%;边想边查几乎不编,0%,但更常绕圈子,或者搜不到有用的东西。读一篇论文的结论,要问:在哪个任务上、和谁比、错在哪。
讲授出口
→ 第 9 讲|查到的结果,成了下一步的输入。可以展开:检索只是一种工具调用;“观察回到输入、决定下一步”就是行动与反馈的闭环。第 9 讲把工具换成运行代码、跑测试,反馈变得可以验证。
完整推理
设置。 同一套少样本示范、同一个模型 PaLM-540B,只改提示里允许的东西:只写推理(CoT),只做检索动作(Act),推理和动作交替(ReAct)。任务一个是多跳问答 HotpotQA(指标是答案完全一致的比例,EM),一个是事实核查 FEVER(判断论断是否被支持,指标是准确率)。检索工具是一个简单的维基百科接口:搜索词条、在页内查找文字、给出答案。
结果(表 1)。 HotpotQA:CoT 29.4,Act 25.7,ReAct 27.4,多跳问答上只想反而最高。FEVER:CoT 56.3,Act 58.9,ReAct 60.9,事实核查上边想边查最高。两者结合(一种方法没把握时换另一种)最好:HotpotQA 上 ReAct→CoT-SC 35.1,FEVER 上 CoT-SC→ReAct 64.6。注意这两个最好成绩来自两种不同的结合顺序:ReAct→CoT-SC 在 FEVER 上是 62.0,CoT-SC→ReAct 在 HotpotQA 上是 34.2。作为参照,表 1 里有监督训练的最好成绩是 67.5(HotpotQA)和 89.5(FEVER),这些提示方法离专门训练的系统还远。
错在哪(表 2,只针对 HotpotQA)。 作者从 ReAct 和 CoT 的答对、答错轨迹中各随机抽 50 条,共 200 条,人工标注。在失败的例子里:CoT 的失败有 56% 是编造事实,ReAct 是 0%;ReAct 的失败更多是推理出错(47%,含卡在重复步骤里出不来;CoT 16%),以及搜不到有用的信息(23%)。检索减少了一种错误,也带来了新的错误。
带走的判断。 读一个“更好”的结论,要问三件事:在哪个任务上(两个任务结论不同);和谁比(只想、只查、结合,以及有监督的上限);错在哪(错误的种类变了,不只是错误的多少)。“更可解释”不等于“更准确”。
留下的问题 → 第三站。 不管怎么查,一次任务结束,查到的、想到的都丢了;下一次同样的问题,模型从头再来。第三站让 agent 自己把经历写下来。
学生可能的回答与误区
- 第 1 步|多数人猜“边想边查”两项都最高。结果不是一边倒,这正是要读出的东西。
- 第 2 步|“35.1 和 64.6 是同一种结合方法的成绩。”它们来自两种顺序:ReAct→CoT-SC 和 CoT-SC→ReAct。
- 第 3 步|“ReAct 不编造事实,所以更可靠。”它把编造换成了推理出错和搜不到;可解释不等于准确。
- 第 3 步|把百分比读成全部样本的比例。分母是失败的例子,而且只看了 HotpotQA。
教学构造与出处
- 教学构造:中文的行列名和“失败里错在哪”的归类(“推理出错”含原地绕圈)是课件的译法。
- ReAct · 表 1、表 2,PaLM-540B 提示实验:arXiv 2210.03629v3,ICLR 2023。表 1:Standard 28.7/57.1,CoT 29.4/56.3,CoT-SC 33.4/60.4,Act 25.7/58.9,ReAct 27.4/60.9,CoT-SC→ReAct 34.2/64.6,ReAct→CoT-SC 35.1/62.0,有监督最好 67.5/89.5。表 2:HotpotQA 上 200 条轨迹的人工标注,错误比例的分母是失败例子。作者报告,来源支持。