Large Language Models are Zero-Shot Reasoners?(Kojima et al., 2022)
這篇文章研究了大型語言模型 (LLMs) 在推理任務上的能力,并提出了一種名為 Zero-shot-CoT 的新方法,該方法能夠有效地引導 LLM 進行多步驟推理,并在各種推理任務上取得了顯著的成果。
是基于我上一篇博客思維鏈 Chain-of-Thought Prompting-CSDN博客的后續研究,因為上一篇博客中的提示需要使用少樣本提示(Few-shot-CoT)而提出來的零樣本提示(Zero-shot-CoT)。
?文章發現,在標準零樣本提示方法無法取得良好效果的情況下,簡單的添加 “Let’s think step by step” 提示,就能夠顯著提升 LLM 在算術、符號推理以及其他邏輯推理任務上的表現。
其實過程非常簡單
Zero-shot-CoT方法通過兩階段提示引導模型生成推理過程和答案:
-
推理提取階段(Reasoning Extraction):通過添加觸發句(如“Let’s think step by step”)讓模型生成逐步的推理路徑。
-
答案提取階段(Answer Extraction):基于生成的推理文本,使用特定格式提示(如“Therefore, the answer is”)提取最終答案。
具體步驟
-
推理提取階段:
-
輸入格式:將問題轉換為模板“Q: [問題]. A: [觸發句]”(例如“Q: 小明有5個蘋果… A: Let’s think step by step”)。
-
模型生成:模型輸出詳細的推理過程(如數學計算、邏輯推導)。
-
-
答案提取階段:
-
輸入格式:將推理文本與答案觸發句拼接(如“[推理文本] Therefore, the answer is”)。
-
模型生成:輸出最終答案(數值、選項字母等),并通過正則匹配提取。
-
例子
問題:
小明有5個蘋果,他每天吃2個。這些蘋果能吃幾天?
階段1:推理提取
-
輸入:
Q: 小明有5個蘋果,他每天吃2個。這些蘋果能吃幾天? A: Let’s think step by step.
-
模型生成:
小明有5個蘋果,每天吃2個。 第一天吃完后剩下5-2=3個; 第二天吃完后剩下3-2=1個; 第三天只能吃1個,不夠2個。 所以總共能吃2天。
階段2:答案提取
-
輸入:
Q: 小明有5個蘋果… A: Let’s think step by step. 第一天吃完后剩下5-2=3個… 所以總共能吃2天。 Therefore, the answer is
-
模型生成:
2
-
最終解析:通過正則提取數字“2”。
有意思的是,同時論文也告訴你不是簡單添加"Let's think step by step"而是通過他們多次嚴重準確率最高的
論文揭示了大型語言模型在零樣本場景下的強大推理潛力,挑戰了傳統觀點(即復雜推理需依賴任務特定示例或微調)。Zero-shot-CoT不僅為推理任務提供了高效的基線方法,還提示研究者應更深入探索語言模型中隱藏的零樣本能力。未來工作可進一步挖掘多任務通用提示,以釋放模型的高層次認知潛能。