來自:Mutual Reasoning Makes Smaller LLMs Stronger Problem-Solvers
提出 一種自對弈相互推理方法(self-play mutual reasoning approach),使用兩個小模型SLM進(jìn)行交互驗(yàn)證,構(gòu)建動作池,進(jìn)行蒙特卡洛樹搜索(MCTS)。無監(jiān)督的形式,可以沒有準(zhǔn)確答案進(jìn)行。

1. 定義了一套類似人類的推理動作:
A1: Propose an one-step thought.
根據(jù)現(xiàn)有的推理步驟為給定的問題生成下一步思考
(與生成完整思考的CoT不同,只生成一步思考,簡化了推理過程)
A2: Propose the remaining thought steps.
提出剩余的思考步驟。在已有的推理步驟的基礎(chǔ)上,提示LLM直接生成剩余步驟,直到得到最終答案。
(與標(biāo)準(zhǔn)的CoT相一致,啟用“快速思考”來用更少的步驟解決簡單問題)
A3: Propose next sub-question along with its answer.
提出下一個子問題及其答案。此操作受到最少到最多提示法Self-Discover的啟發(fā),該方法將復(fù)雜問題分解為一系列更簡單的子問題,并按順序解決它們。
A4: Answer the sub-question again.
重新回答子問題??紤]到A3可能沒有正確回答子問題,提出此操作來重新回答它。為了提高準(zhǔn)確性,此操作提示LLM使用少量示例的鏈?zhǔn)剿伎?。需要注意的是,A3生成的原始答案沒有使用類似鏈?zhǔn)剿伎嫉奶崾荆亲裱俗钌俚阶疃鄦栴}分解的提示(Zhou et al., 2022, Self-Discover)
A5: Rephrase the question/sub-question.
重述問題/子問題。在分析錯誤案例時(shí),發(fā)現(xiàn)許多錯誤是由于LLM誤解了問題。例如,它可能忽略了問題中提供的某個特定條件。因此,我們提出一個新的操作,即用更簡潔的方式重述問題。具體來說,提示LLM清晰地列出問題陳述中給出的所有條件。
2. 動作消融

3. 兩個模型的交互一致性
隨機(jī)mask掉SLM1生成步驟中的句子,讓SLM2推理mask掉的部分,看是否最后SLM1和SLM2的答案一致。

4. 平衡探索和利用

值得注意的是,Q(reward)的計(jì)算采用最多答案在所有答案中的占比,如math問題question中的一個子問題subquestion的答案生成了10個subanswer,分別是【3個1,5個2,2個3】, 那么這個子問題的最有可能的答案會是2,可信度是5/10(也就是reward)
未完待續(xù)...
TODO: