告別無效計算!新TTS框架拯救19%被埋沒答案,推理準確率飆升
大語言模型通過 CoT 已具備強大的數學推理能力,而 Beam Search、DVTS 等測試時擴展(Test-Time Scaling, TTS)方法可通過分配額外計算資源進一步提升準確性。然而,現有方法存在兩大關鍵缺陷:路徑同質化(推理路徑趨同)和中間結果利用不足(大量高質量推理分支被丟棄)。
為解決這些問題,華為諾亞方舟實驗室聯合香港中文大學等機構的研究人員提出逐步推理檢查點分析(SRCA)框架 —— 在推理步驟間引入 “檢查點”,并集成兩大核心策略:(1)答案聚類搜索(Answer-Clustered Search):根據中間檢查點答案對推理路徑進行分組,在保證質量的同時維持路徑多樣性;(2)檢查點候選增強(Checkpoint Candidate Augmentation):利用所有中間答案輔助最終決策。
實驗結果表明,在多個數學數據集上,如 MATH500 和 OlympiadBench,SRCA 相較于現有 TTS 方法,推理準確性均有提升。該論文已被 EMNLP 2025 接收。

- 論文題目:Stepwise Reasoning Checkpoint Analysis: A Test Time Scaling Method to Enhance LLMs' Reasoning
- 論文鏈接:https://arxiv.org/abs/2505.17829
Test Time Scaling(TTS)技術簡單來說就是在模型測試階段 "砸資源":不改變模型本身,而是通過增加推理時的計算開銷,讓 LLM 在解題時 "多想一會兒",從而顯著提升推理準確性。除了常見的長思維鏈,比如 DeepSeek R1 典型的 think 模式,多次采樣并有策略的搜索正確解題路徑也是一種常見的 TTS 策略。
我們常用的多數投票 / 自我一致性(Self-Consistency)可以視為是最樸素的 TTS 技術。比如讓模型對一道數學題生成 10 個推理過程,最后選出現次數最多的答案。這種看似簡單的方法,卻能顯著提升模型推理的準確率 —— 代價是多花幾倍計算時間。
隨著任務難度提升,這種暴力提升采樣次數的做法效率越來越低。于是研究者們引入了額外的打分模型,比如一個過程獎勵模型(PRM),從而開發了更先進的 TTS 算法。

- Beam Search:(左圖)每次采樣得到的路徑由 PRM 打分,保留得分最高的 k 條推理路徑繼續深入,避免在錯誤方向浪費資源;
- DVTS(Diverse Verifier Tree Search):(右圖)同時維護多個獨立的推理樹,每棵樹向下探索 PRM 打分最高的路徑。強迫模型探索不同解題思路,減少 "一條道走到黑" 的風險。
不過這類方法仍然存在兩個問題。
兩大痛點
- 思路太單一:明明生成了多條推理路徑,最終卻都往一個方向扎堆(路徑同質化)。這是由 PRM 的局限性帶來的:并不完美的 PRM 打分具有隱式的偏好,選出的路徑往往具有一定的共性。這有時會導致一些思路不同但并未出錯的解題路徑打分略低未能被繼續探索。
- 中間結果浪費:推理過程中產生的大量中間過程被直接丟棄。以 Beam Search 為例,假設采樣次數為 16,束寬為 4,則采樣中 75% 的步驟將被直接丟棄。這其中不乏一些優質的正確的解題思路,但是這些中間過程并未有效貢獻到最終答案的決策中。
我們的解法:給推理過程 "設檢查點"
針對這些問題,我們提出了 SRCA(Stepwise Reasoning Checkpoint Analysis) 框架,該框架包含三個關鍵組件:
- 檢查點注入:強制模型在每一步推理后暫停并輸出階段性答案。
- 答案聚類搜索:把檢查點答案一樣的推理路徑歸為一組,并從每組內選擇路徑繼續推理。
- 檢查點候選增強:收集所有檢查點答案加入到最終答案的選擇。
下面是每個組件的具體介紹。
檢查點注入(Checkpoint Injection):打斷推理并預測答案

檢查點注入是 SRCA 的基礎技術,后續的 ACS 和 CCA 算法全部依賴于檢查點注入收集到的中間答案,核心思路是強制模型在每一步推理后暫停并輸出階段性答案。早期的工作中亦有類似的探索,chain-of-probe (https://aclanthology.org/2025.findings-naacl.140/) 同樣是利用暫停推理收集答案的思路觀測模型推理時置信度 (confidence) 的變化以判斷模型推理是否準確。而檢查點注入則更關注模型階段性推理的答案本身,具體流程如下:
- 檢測步驟結束符(如 "### Step"):當檢測到此類字段時,說明 LLM 的上一步推理已經結束,可以進行答案檢查。
- 插入提示 "So the answer is":我們通過插入后綴強行改變上下文,模型沿著新的上下文繼續解碼,輸出它所認為的答案。
- 記錄檢查點答案:該答案是我們后續改進搜索策略和投票的重要依據。
通過這樣的方式,我們可以收集到模型基于當前推理步驟得出的答案。這種 “中間答案” 盡管并不完整和精確,但它們在一定程度上可以代表模型在當前的思考過程,比如兩條推理路徑得出的中間答案是一樣的,我們則可以認為這兩條推理路徑目前解題的思路和進度是類似的。收集到中間答案后,通過合理的 KV Cache 管理,我們可以將推理狀態回滾到上一步推理結束的時刻,從而避免反復推理降低計算開銷。
答案聚類搜索(ACS):防止 “思路扎堆”,鼓勵不同解法

基于檢查點答案,我們重新設計了路徑搜索策略,提出了 Answer Clustering Search 算法。傳統方法(如 Beam Search)雖然讓模型嘗試多條路,但 PRM 打高分的路徑往往類似,這就容易提前扼殺搜索路徑的多樣性,導致最終錯過可能的正確答案。
針對路徑同質化問題,ACS 在檢查點執行雙層篩選機制:
- 組內擇優:將同中間答案的路徑歸組,按組內 PRM 總分排序
- 組間競爭:采用輪詢調度(Round-Robin),按總分順序從每組抽取最優路徑
這樣保證了不同解題方向(不同組)都有機會保留至少一條 “種子選手” 繼續發展。即使某一種方法(組)目前分數不是最高,只要它整體有潛力,它最好的那條路也有機會被選上。這就大大增加了解題思路的多樣性,避免大家一窩蜂擠到一條(可能錯的)思路上。
檢查點候選增強(CCA):搶救 “半成品好答案”,變廢為寶

在傳統樹搜索(如 Beam Search / DVTS)中,只有那些最終走完全程的路徑才有資格參與最終答案的評選。大量未完成的中間推理步驟被直接丟棄。CCA 通過收集復用這些未完成路徑的檢查點答案提升模型推理的準確性:
- 在每一步推理之后,記錄收集所有的檢查點答案。
- 即使一條路沒走完,它在某個步驟得出的那個中間答案,也可能是最終答案。所以 CCA 會把每個中間答案連同它走到這一步的推理過程,都打包成一個獨立的候選答案。這就像把那些半成品搶救出來。
- 當所有路徑都推理結束后(無論是走完還是被淘汰),最終的答案評選不再是只看那幾條 “完整” 路徑的最終答案。CCA 會把所有收集到的這些 “半成品答案” 和完整路徑的最終答案,全部放在一起,根據 PRM 的打分選擇最高者。
這樣極大減少了 “好答案被中途埋沒” 的情況。即使模型后面推理跑偏了,只要它在某個步驟 “靈光一現” 得出了正確結果,CCA 就能把它撈回來,給模型一個 “后悔藥”。這大大提高了計算資源的利用率。下面是一個具體的示例:

如圖所示,模型推理完成得到的答案是 9,而正確答案是 27。但回顧推理過程中的檢查點答案可以發現,模型在第 4 和第 5 步已經得出了 27 這個答案,而錯誤出在第 6 步 ——9 是一個完全平方數而不是平方立方數。而 CCA 記錄收集了所有檢查點答案,并綜合考慮所有候選答案選出最終結果。可以看到第 5 步的檢查點答案得到了最高分 0.7192,該答案被 CCA 恢復并修正了錯誤答案。
實驗結果
TL;DR:
- SRCA 框架加持的 1B 小模型在 MATH500 數據集上達到 65.2% 準確率,首次超越參量 70 倍的 70B 大模型(65.0%)
- 通過答案聚類搜索(ACS)優化路徑多樣性,SRCA 僅需 16 次采樣即可達到其他 TTS 方法 128 次采樣的精度。在同等硬件條件下,推理效率提升達 8 倍,從而降低計算成本。
- 檢查點候選增強(CCA)策略成功從中間步驟拯救 19.07% 的正確答案。這些答案誕生于推理中途,卻因后續路徑偏差被丟棄。CCA 通過復用高質量中間結果,構建了強大的錯誤容忍機制。
- 設置合理閾值,當候選池中出現超過閾值的檢查點答案即停止推理輸出答案,平均可節省 27% 的推理步驟,推理準確率輕微下降 0.58%。





































