強(qiáng)化學(xué)習(xí)讓大模型自動糾錯,數(shù)學(xué)、編程性能暴漲,DeepMind新作
自我糾正(Self-correction)是大語言模型 (LLM) 非常重要的能力,但人們發(fā)現(xiàn)這種能力在現(xiàn)代 LLM 中基本上很少存在?,F(xiàn)有的訓(xùn)練自我糾正的方法要么需要多個模型,要么依賴于更強(qiáng)大的模型或其他形式的監(jiān)督。
我們?nèi)绾尾拍茏?LLM 具備自我糾正能力?之前的研究要么依賴于提示工程,要么依賴于專門用于自我糾正的微調(diào)模型。但前者通常無法有效地進(jìn)行有意義的內(nèi)在自我糾正,而后者基于微調(diào)的方法需要在推理時運(yùn)行多個模型,例如需要 oracle「教師」來監(jiān)督指導(dǎo)自我糾正過程。
在最近提交的一篇論文中,來自 Google DeepMind 的研究者開發(fā)了一種無需上述任何要求即可有效進(jìn)行自我糾正的方法,即通過強(qiáng)化學(xué)習(xí)進(jìn)行自我糾正(SCoRe,Self-Correction via Reinforcement Learning),只需訓(xùn)練一個模型,該模型既可以對推理問題做出響應(yīng),也可以糾正錯誤,盡管沒有收到任何 oracle 反饋。更重要的是,SCoRe 完全通過在自生成數(shù)據(jù)上進(jìn)行訓(xùn)練來教模型具備這種能力,而無需任何 oracle。
- 論文標(biāo)題:Training Language Models to Self-Correct via Reinforcement Learning
- 論文地址:https://arxiv.org/pdf/2409.12917
本文主要貢獻(xiàn)在于提出了一種多輪強(qiáng)化學(xué)習(xí)方法 ——SCoRe,用于教 LLM 如何糾正自己的錯誤。相對于基礎(chǔ) Gemini 模型,SCoRe 在 MATH 推理問題的自我糾正方面獲得了 15.6% 的增益,在 HumanEval 編碼問題上獲得了 9.1% 的增益。
SCoRe 原理介紹
為了教 LLM 進(jìn)行自我糾正,SCoRe 將標(biāo)準(zhǔn)單輪強(qiáng)化學(xué)習(xí)(公式 2)擴(kuò)展到 Zhou 等人提出的分層框架下的多輪設(shè)置。
不過這樣做面臨諸多挑戰(zhàn)。首先,優(yōu)化公式 1 解決了分布偏移問題,但尚不清楚它是否也能滿足要求 [D2]。
這里的 [D2] 如下圖所示,圖中展示了 SFT 方法失敗的兩個原因。而有效的解決方案必須滿足兩個要求:[D1] 模型應(yīng)該直接在自生成軌跡上進(jìn)行訓(xùn)練,以緩解 SFT 的分布不匹配(圖 4),[D2] 所采用的自生成軌跡應(yīng)防止在學(xué)習(xí)過程中因進(jìn)行微小編輯而崩潰。
作者開發(fā)了一種在線 RL 方法,通過仔細(xì)的初始化和獎勵塑造來解決這些挑戰(zhàn)。
其次用于微調(diào)的基礎(chǔ)模型初始化在編輯距離上呈現(xiàn)出高度傾斜的分布(圖 3a),這使得它們?nèi)菀资艿侥J奖罎⒌挠绊懀@是深度強(qiáng)化學(xué)習(xí)中一個常見的問題。即使基礎(chǔ)模型可以在自我校正過程中產(chǎn)生編輯距離比傾斜度較小的分布,但仍然需要強(qiáng)化學(xué)習(xí)訓(xùn)練過程從訓(xùn)練數(shù)據(jù)中學(xué)習(xí)一種可以推廣到測試提示的自我校正策略。
SCoRe 旨在解決上述關(guān)鍵挑戰(zhàn),其分為兩個階段,這兩個階段都是通過適當(dāng)初始化模型和控制后續(xù) RL 使模型偏向?qū)W習(xí)自我糾正。
具體而言,這兩個階段包括:
階段 I:訓(xùn)練模型初始化以防止崩潰
SCoRe 第一階段的目標(biāo)是通過提高基礎(chǔ)模型對第二次嘗試響應(yīng)的覆蓋率來獲得良好的模型初始化,以便后續(xù)自我糾正訓(xùn)練不會出現(xiàn) STaR/SFT 中觀察到的崩潰現(xiàn)象。
為了達(dá)到此目的,該研究不采用 SFT 來初始化 RL 訓(xùn)練,而是開發(fā)了第一階段來產(chǎn)生不易崩潰的單獨(dú)初始化。
作者微調(diào)基礎(chǔ)模型,以便在第二次嘗試時產(chǎn)生高獎勵修正,同時通過使用 KL 散度將第一次嘗試的響應(yīng)分布限制為盡可能接近基礎(chǔ)模型的響應(yīng)分布,從而強(qiáng)制模型不改變其第一次嘗試的響應(yīng)。雖然這看起來不是最優(yōu)的 —— 但第一次嘗試的響應(yīng)錯誤較少,可以糾正為更好的第二次嘗試響應(yīng)。優(yōu)化的目標(biāo)可以表示為:
其中 ??_2 是一個超參數(shù),旨在僅在第一次嘗試時強(qiáng)制執(zhí)行嚴(yán)格的 KL 懲罰,以避免第一輪響應(yīng)發(fā)生偏移(用藍(lán)色項(xiàng)表示)。請注意,作者仍然使用公式 2 中的默認(rèn) KL 散度懲罰,但該懲罰的權(quán)重要小得多,并且為了簡潔起見,公式 3 中省略了它。事實(shí)上,與簡單的多輪 RL 不同,階段 I 在分離兩個響應(yīng)方面更有效(圖 5b)。
階段 II:帶有獎勵的多輪強(qiáng)化學(xué)習(xí)
借助第一階段的模型初始化,該模型在耦合兩個響應(yīng)時表現(xiàn)出更小的偏差,SCoRe 的第二階段現(xiàn)在可以訓(xùn)練兩次嘗試的響應(yīng),并根據(jù)公式 1 優(yōu)化獎勵。當(dāng)然,作者還希望確保在此過程中不會降低第一次嘗試的響應(yīng)。因此,對于兩輪自我糾正問題,作者針對以下目標(biāo)訓(xùn)練策略 ??_??(?∣?):
圖 6 為階段 I、階段 II 流程說明??梢钥闯?SCoRe 以交錯方式應(yīng)用階段 I 和 II 進(jìn)行多次迭代。
實(shí)驗(yàn)評估
該研究進(jìn)行了一系列實(shí)驗(yàn),來驗(yàn)證 SCoRe 在教 LLM 具備自我糾正能力方面的有效性,并通過消融實(shí)驗(yàn)探索了 SCoRe 的每個組件的影響。
該研究主要關(guān)注數(shù)學(xué)和編碼任務(wù),使用以下基準(zhǔn)來評估方法的有效性:
- MATH;
- MBPP 和 HumanEval。
幾種方法在 MATH 基準(zhǔn)上的實(shí)驗(yàn)評估結(jié)果如下表 3 所示:
在代碼生成方面,實(shí)驗(yàn)結(jié)果如下表 4 所示:
消融研究
為了探究以下幾個問題,該研究進(jìn)行了消融實(shí)驗(yàn):
- 多輪訓(xùn)練的重要性
- 多階段訓(xùn)練的重要性
- 獎勵函數(shù)設(shè)計(jì)(reward shaping)的影響
- on-policy 強(qiáng)化學(xué)習(xí)的重要性
消融實(shí)驗(yàn)結(jié)果如下表 5 所示:
感興趣的讀者可以閱讀論文原文,了解更多研究內(nèi)容。