研究者表示,如果 Sytem 2 蒸餾可以成為未來持續學習 AI 系統的重要特徵,則可以進一步提升 System 2 表現不那麼好的推理任務的性能。
談到大語言模型(LLM)的策略,一般來說有兩種,一種是即時的 System 1(快速反應),另一種是 System 2(慢速思考)。
其中 System 2 推理傾向於深思熟慮的思維,產生中間思維允許模型(或人類)進行推理和規劃,以便成功完成任務或回應指令。在 System 2 推理中,需要付出努力的心理活動,尤其是在 System 1(更自動化思考)可能出錯的情況下。
因此,System 1 被定義為 Transformer 的應用,可以根據輸入直接產生回應,而無需產生中間 token。 Sytem 2 被定義為產生中間 token 的任何方法,包括執行搜尋或多次提示然後最終產生回應的方法。
業界已經提出了一系列相關的 System 2 技術,包括思維鏈、思維樹、思維圖、分支解決合併、System 2 Attention、Rephrase and Respond (RaR) 等。由於這種明確的推理,許多方法都顯示出更準確的結果, 但這樣做通常會帶來更高的推理成本和反應延遲。因此,許多此類方法未在生產系統中使用,而大多使用了 System 1。
對人類來說, 學習將技能從深思熟慮(System 2)轉移到自動(System 1)的過程在心理學中被稱為自動性,以及程序記憶的使用。例如,第一次開車上班時,人們通常會花費有意識的努力來規劃和做出到達目的地的決定。而在駕駛員重複這條路線後,駕駛過程就會「編譯」到潛意識中。同樣,網球等運動可以成為「第二天性」。
在本文中,來自 Meta FAIR 的研究者探討了一種類似的 AI 模型方法。 該方法在給定一組未標記範例的情況下以無監督的方式執行編譯,稱為 System 2 蒸餾。對於每個範例,他們應用給定的 System 2 方法,然後以無監督的方式測量預測的品質。
例如對於具有唯一答案的任務,研究者應用自洽性(self-consistency)並多次進行採樣。對於 System 2 足夠一致的範例,他們假設應該蒸餾此結果,並將其添加到蒸餾池中。然後對 System 1 進行微調,以符合 System 2 方法對收集的範例池的預測,但不產生中間步驟。下圖 1 說明了將 System 2 蒸餾到 System 1 的整體過程。
研究者對 4 種不同的 System 2 LLM 方法和 5 種不同的任務進行了實驗。結果發現,本文方法可以在各種設定中將 System 2 推理蒸餾回 System 1 中,有時甚至比 System 2 教師的結果更好。此外,這些預測現在只需花費計算成本的一小部分即可產生。
例如,他們發現成功的蒸餾適用於處理有偏見的意見或不相關信息的任務(System 2 Attention)、澄清和改進某些推理任務中的響應(RaR)以及LLM 的細粒度評估(分支-解決- 合併)。
不過,並非所有的任務都可以蒸餾到 System 1 中,尤其是需要思維鏈的複雜數學推理任務。這也反映在人類身上,如果沒有深思熟慮的 System 2 推理,人類就無法執行某些任務。
論文地址:https://arxiv.org/pdf/2407.06023v2
將System 2 蒸餾回System 1
將System 2 蒸餾回System 1
1% ,研究者考慮設定一個單一模型,在他們的例子中是一個大語言模型(LLM),它能夠實現兩種回應模式:
System 2 方法可能涉及多個提示、分支、迭代和搜索,同時使用 LLM 產生中間結果以進行進一步處理。相較之下,System 1 模型只考慮原始輸入x 並直接呼叫LLM pθ 來產生輸出y:
方法:System 2 蒸餾
本文方法的第一步是使用System 2 模型對未完成本文方法標記的輸入X 產生響應:
然後,這些響應y^i_S_II 可直接用作System 2 蒸餾目標,以微調System 1 模型。但是,它們容易受到噪音的影響:其中一些響應可能是高品質的,而另一些可能是低品質或不正確的。對於涉及簡短回應(通常具有唯一正確(但未知)的答案)的簡短問答和推理任務,研究者考慮採用無監督管理步驟來嘗試提高訓練資料品質。他們考慮了以下兩種依賴自洽性標準的變體:
輸出的自洽性:對S_II (x^i ; p_θ) 進行總共N 次採樣,並接受多數投票響應;如果沒有多數投票獲勝者,則丟棄該範例。
輸入擾動下的自洽性:以輸出不變的方式擾動輸入x^i,例如改變提示中多項選擇題的順序,併計算每次擾動的S_II;如果輸出不一致,則丟棄該範例。
之後研究者得到了合成資料集 (X_S_II , Y_S_II),其中 X_S_II 是 X 的一個過濾子集,目標是 Y_S_II。最後一步是使用這個蒸餾出來的訓練集對參數為 p_θ 的 LLM 進行監督微調。研究者通常從當前狀態 p_θ 初始化此模型,然後繼續使用新資料集進行訓練。微調後,他們得到一個 LLM ,這是一個 System 1 模型,預計提供與評估的 System 2 模型類似的輸出和效能提升。
實驗結果
訓練和評估設定
研究者使用 Llama-2-70B-chat 作為所有實驗的基礎模型。他們需要一個具有足夠能力的基礎模型,使其能夠像 System 2 模型一樣高效運行,同時還具有可以微調的開放權重,因此做出了此選擇。
同時,研究者考慮了幾種 System 2 方法,包括 System 2 Attention、 RaR、分支解決合併(Branch-Solve-Merge)和思維鏈, 並重點關注每種方法都顯示出強大性能的任務。
對於 System 1,研究者使用指令調整後的基礎模型作為標準基線進行零樣本推理。他們報告每個任務的任務特定指標,以及「#Tokens」指標,後者衡量評估集上每個輸入產生的平均 token 數量。 System 2 方法則包括中間 token 產生以及最終輸出 token 產生。
Rephrase and Respond 蒸餾
RaR 是一種 System 2 方法,它首先提示語言模型以進一步闡述的方式來複述原始問題,然後基於復述的問題生成響應,目的是提供更優的輸出。
對於蒸餾數據,研究者使用輸出的自洽性為 RaR 建立 System 2 蒸餾資料集。對於每個輸入,他們對最後一個字母( last letter)任務進行了八次採樣迭代,並同樣對硬幣翻轉(coin flip)任務的每個階段進行八次採樣迭代,然後用多數投票來確定最終輸出。
首先來看最後一個字母連結(Last letter Concatenation)任務。此任務著重於符號推理,要求模型連接給定單字的最後一個字母。整體結果如下表 1 所示。
基線 System 1 模型 (Llama-2-70B-chat) 的準確率達到 30.0%,低於 System 2 的 1-Step 和 2-Step RaR 方法(分別為 39.5% 和 44.5%)。透過本文無監督技術將 2-Step RaR 方法蒸餾回 System 1 Llama-2-70B-chat 模型,則實現了 98.0% 的驚人準確率。
與零樣本聊天模型相比,模型可以有效地從這些訓練資料中學習如何解決任務。 RaR 的蒸餾有效地繼承了 System 2 和 System 1 的優勢,既保留了 System 2 的準確率優勢,而其推理成本與 System 1 相當。
再來看硬幣翻轉推理任務。這種符號推理任務經常在研究中進行測試,它涉及確定硬幣的最終面(正面或反面),從已知的初始位置開始,經過一系列用自然語言描述的翻轉,例如“硬幣正面朝上” 。
整體結果見上表 1。 Llama-2-70B-chat(零樣板)在此任務上的成功率為 56.1%,而 1-Step 和 2-Step RaR 的成功率分別為 58.5% 和 77.2%。因此,使用 2-Step 方法獲得了巨大改進。透過本文無監督技術將 2-Step RaR 蒸餾回 System 1 Llama-2-70B-chat 可獲得 75.69% 的結果。
因此,蒸餾的 System 2 模型提供的性能與 System 2(2 Step RaR)相當,但不需要使用 2 個提示執行 LLM 程序。
System 2 Attention 蒸餾
Weston 和Sukhbaatar (2023) 提出了System 2 Attention (S2A),這種方法有助於減少模型的推理偏見陷阱,例如依賴輸入中的上下文資訊或關注不相關的上下文資訊或專注。
研究者驗證了將 S2A 提煉到 System 1 中的可行性,特別是 SycophancyEval 問答任務,該任務包含已知會損害 LLM 性能的輸入中的偏見信息。
結果如下表 2 所示,報告了 3 個隨機種子的平均準確率。如預期,基線(System1)LLM 在有偏見部分的準確率較低,容易受到偏見輸入的影響。 S2A 顯著提高了有偏差輸入的效能。 System 2 蒸餾表現出與 System 2 方法類似的強大性能。
更多實驗結果請參考原論文。
以上是Meta開發System 2蒸餾技術,Llama 2對話模型任務準確率接近100%的詳細內容。更多資訊請關注PHP中文網其他相關文章!