。 **Tülu 3:推動開源語言模型後訓練的進展** https://arxiv.org/pdf/2411.15124 https://drive.google.com/file/d/1VqWTVM9cdGZts1LQjdbZPOPFIIXM6VRa/view?usp=drive_link **Tülu 3 是一個由 Allen Institute for AI (AI2) 開發的開源語言模型專案**。這個專案的目標是**縮小開源模型與閉源模型之間在後訓練 (post-training) 方面的差距**。它基於 **Llama 3.1 基礎模型**建立了一系列最先進的後訓練模型。 Tülu 3 不僅僅釋出了模型本身,更重要的是,它提供了一套**全面的資源,包括所有相關的資料、訓練方法 (recipe)、程式碼、基礎設施和評估框架**。這使得開源社群能夠更容易地重現、學習並進一步開發高性能的語言模型。 Tülu 3 的成功歸功於三個核心要素: 1. **Tülu 3 Data:** 一套新的、採用寬鬆授權的訓練資料集,這些資料集特別針對核心技能進行了策劃。資料的策劃非常重要,包括從公共資料集提取和針對特定技能合成新的提示詞 (prompt)。專案也強調了對資料進行「去汙染」(decontamination) 的重要性,以確保評估的公平性。 2. **Tülu 3 Eval:** 一套用於評估的模型評估套件和工具。這套評估框架包含開發集和未見過的評估集,用於衡量模型在多種核心技能上的表現,例如知識、推理、數學、程式設計、指令遵循和安全性。專案也開源了其評估系統 OLMES (Open LanguageModel Evaluation System)。 3. **Tülu 3 Recipe:** 一個先進的多階段訓練流程。這個訓練流程包含了新的演算法進展,以及透過嚴謹的實驗來優化資料組合、方法和參數。主要的訓練階段包括: * **監督式微調 (Supervised Finetuning, SFT)**。 * **直接偏好優化 (Direct Preference Optimization, DPO)**,專案中使用了長度正規化的 DPO (length-normalized DPO),認為它相較於 PPO 更簡單快速。DPO 的訓練使用了經過改編的 UltraFeedback 管線,並從內部和外部模型產生了偏好資料。增加獨特的提示詞數量對於提升 DPO 的下游性能很重要。 * 一種新穎的方法,稱為**可驗證獎勵強化學習 (Reinforcement Learning with Verifiable Rewards, RLVR)**。這種方法利用可驗證的黃金標準最終答案或約束條件作為獎勵,而無需中間的思維鏈 (Chain-of-Thought)。專案使用 PPO (Proximal Policy Optimization) 來實現 RLVR。 透過這個多階段的訓練流程,Tülu 3 模型在多個基準測試上展現了卓越的性能。特別是,**Tülu 3 的模型超越了同等規模的其他開源模型**,例如 Llama 3.1 Instruct、Qwen 2.5 和 Mistral Instruct。在較大的 70B 尺寸上,**Tülu 3 甚至可以媲美或超越一些閉源模型,例如 GPT-4o-mini 和 Claude 3.5-Haiku**。對於 405B 的模型,其性能可與 DeepSeek v3 和 GPT-4o 競爭。 Tülu 3 的釋出不僅提供了高性能的模型,更透過透明地分享訓練方法、資料和工具,為開源社群提供了一個寶貴的參考和基礎,以進一步推進語言模型後訓練的研究和應用。它也分享了實驗中不成功的部分,為社群指明了可能的方向。 好的,這是一份根據您提供的來源內容整理成的教材格式回應,重點介紹了用於建構和改進大型語言模型 (LLMs),特別是針對**推理能力**的訓練方法。 --- **人工智慧與大型語言模型訓練方法** **章節 1:引言與動機** * **人工智慧的進展與開放研究** * 當今人工智慧的進步得益於**開放的科學研究與發展**以及**開放模型的獲取**。 * 然而,近年來許多研究和開發趨於**封閉**。 * **持續研究的必要性** * 即使研究領域變得更加封閉,我們仍需進行大量研究以: * **理解大型語言模型的科學**。 * **改進模型並建構下一代模型**。 * **推動語言模型超越語言本身**,應用於科學領域,如醫療健康;並超越文本形式。 * **緩解模型的偏差和風險**。 * **將模型應用於現實世界**。 * **開發 LLM 代理 (agents)**,改進其**規劃 (planning)**、**推理 (reasoning)**、測試階段擴展 (test time scaling)。 * **使模型適合部署並建構高效模型**。 * **建立開放生態系統的目標** * 為促進創新和加速語言模型科學,我們需要模型是**完全開放的 (fully open)**。 * 開放模型的特點:**透明 (transparent)** (可獲取數據)、**可訪問 (accessible)**、**可重現 (reproducible)** (供研究人員和開發者使用)。 * Udab 和 AI2 致力於建構一個生態系統,可以在不同階段建構語言模型,包括預訓練、後訓練和中訓練 (mid-training),以及建構代理。 * OLMo (Open Language Model) 和 Tulu 是其中兩個主要努力,Tulu 是**開放的後訓練方法 (open post-training recipes)**。 * 目標是開發、研究和改進語言模型,所有努力需**完全開放、有文檔、可重現**。 * 這有助於**賦予 AI 社群力量**,並向公眾**介紹 AI 的工作原理**。 * 然而,這個完全開放的生態系統只是當今 AI 領域整體圖景的一部分。 **章節 2:大型語言模型 (LLMs) 的訓練流程** * **現代大型語言模型的建構階段** * 建構現代 LLM 大致分為兩個階段:**預訓練 (Pre-training)** 和**後訓練 (Post-training)**。 * **預訓練階段** * **目標:** 模型被訓練用於**預測下一個詞元 (predicting the next token)**。 * **數據:** 通常來自**大規模、大量的數據**,主要來源於**網路 (web)**。 * **局限性:** 從此階段產生的模型通常**尚未準備好用於許多應用**。 * 它**不安全 (not safe)**。 * 可能**無法遵循人類指令 (follow human instructions)**。 * 在**推理方面 (reasoning) 不夠出色**。 * **後訓練階段** * 在後訓練階段,模型獲得了更多能力: * 可以進行**聊天 (chat)**。 * 可以**遵循指令 (follows instructions)**。 * 可以整合**工具使用 (tool use)**。 * 能夠**推理 (reason)**。 * 能夠辨識何時回覆**有害 (harmful)** 或不遵循指令。 * 後訓練的主要目的: * **與人類偏好對齊 (align with human preferences)** (例如,收集數據判斷哪種回覆更符合人類期望)。 * 具備**工具使用 (tool use)**、**搜索 (searching)**、**程式碼執行 (code execution)** 等能力。 * 讓模型能夠**推理 (reason)** (例如,學習解決算術文字問題)。 * **建構成功語言模型的關鍵組成部分** * 成功的語言模型建構需要以下要素: * **數據 (Data)**:用於訓練模型。 * **訓練架構 (Training architecture)** 和**神經網絡 (neural network)**:幾乎所有情況下都是基於 **Transformer 的架構 (Transformer based architecture)**。 * **徹底的評估循環 (thorough evaluation Loop)**:用於判斷模型的進步或退步。 * **數據**、**模型**和**算法**是建構現代成功語言模型的**三個核心部分 (three integral parts)**。 **章節 3:後訓練技術:Tulu 計畫** * **Tulu 計畫概述** * Tulu 計畫始於 2023 年。 * 目標是開發一個**開放 (open)**、**可重現 (reproducible)** 且**最先進的 (state-of-the-art)** 後訓練方法。 * 此方法可應用於許多不同的**開放權重模型 (open weight models)**,如 Llama、Qwen。 * Tulu 經歷了多個版本,逐步整合了不同的技術和數據。 * 最終目標是利用開源模型,達到甚至超越 GPT-4 等專有模型的性能。 * **Tulu 訓練步驟** * Tulu 的後訓練方法從一個**基礎模型 (base model)** 開始。 * 接著遵循三個重要步驟: 1. **指令微調 (Instruction Tuning) / 監督式微調 (Supervised Fine-tuning - SFT)**。 2. **偏好微調 (Preference Tuning)**。 3. **可驗證獎勵強化學習 (Reinforcement Learning with Verifiable Rewards)** (一種新穎的方法)。 * 有時需要在這些階段之間進行**回溯和調整 (back and forth)**。 * **3.1 指令微調 (Instruction Tuning / Supervised Fine-tuning - SFT)** * **目標:** 透過大量的提示 (prompts) 和完成 (completions),**微調 (fine tune)** 預訓練語言模型,使其能夠**遵循這些指令 (follow these instructions)**。 * **數據策劃 (Data Curation):** 如何獲取和組織數據。 * **人工註釋 (Human annotation):** * 優點:可以提供高品質的數據。 * 缺點:**成本高 (costly)**、**耗時 (time consuming)**、**變異性大 (high variance)**。對於推理等複雜任務,可能不適合一般註釋者,需要**專家註釋 (expert annotations)**,這難以擴展且**多樣性不足 (not diverse enough)**。 * **合成數據生成 (Synthetically generate data):** * 方法:使用**另一種語言模型**透過**自我循環 (self-loop) 或自我指令循環 (self-instruction loop)** 生成數據。 * 優點:**良好 (really good)**,特別在許多情況下。 * 缺點:可能**有雜訊 (noisy)**,且對用於生成數據的語言模型存在**偏差 (biased)**。 * **最佳方案:混合式數據收集 (hybrid collection):** 結合人類註釋和合成生成數據。 * **數據集的發展:** * 早期的工作集中於 NLP 任務(問答、摘要、翻譯),如 **Natural Instructions** 和 **Supernatural Instructions**。 * **Self-instruct 框架** 開啟了合成數據生成的研究,並被社群廣泛採用,產生了 **Alpaca**、**Vicuna** 等數據集。 * 還有針對短形式問答的數據集,如 **Flan V1**。 * Tulu 3 論文列出了許多公開可用的數據集,包括人工策劃、專家策劃和社群合成生成。 * **數據混合 (Data Mixing):** * 將不同來源和形式的數據(例如,針對不同能力設計的數據)組合起來。 * **挑戰:** **平衡不同能力的數據**,以確保模型在各方面都獲得高準確性 (例如,添加詩歌生成數據可能降低數學推理能力,反之亦然)。 * 方法:社群正在探索許多不同的數據混合方法,包括手動經驗分析、自動化混合等。 * Tulu 1 的方法:結合所有可用的公開數據集。 * 評估:在多個領域(聊天、知識、推理、程式碼、多語言、安全)進行評估,發現不同數據集在不同領域表現各異 (例如,ShareGPT 在聊天方面表現好,但在知識或推理方面較差)。 * Tulu 的混合策略:結合在特定領域表現出色的數據集,形成**人類 + 合成 (human + synthetic)** 的數據類型。曾考慮使用 ShareGPT 數據,但因許可問題後來棄用。 * **深入探討推理數據:思維鏈 (Chain of Thought - CoT)** * **重要性:** 對於提高推理能力至關重要。 * **範例:** 解決數學文字問題。僅使用「輸入-輸出」(input-output) 設定進行微調效果可能有限。 * **CoT 的好處:** * 幫助模型處理**複雜的多步驟問題 (complex multi-step problems)**。 * **揭示模型的推理過程 (revealing the model's reasoning process)**。 * 可能利用模型在預訓練中已看過的 CoT 數據,**提升該能力 (boost this capability up)**。 * **更容易發現邏輯錯誤 (easier to spot errors in the logic)**。 * **類似人類的解釋和思維過程**。 * **生成 CoT 數據的挑戰與方法:** * **挑戰:** 手動獲取 CoT 註釋**困難 (challenging)**,**耗時且昂貴 (time consuming, expensive)**,通常需要**專家註釋**,**難以擴展 (difficult to scale)**,且**多樣性不足**。 * **Tulu 的方法:** 採用**混合式數據策劃 (hybrid data curation)**。 * **數據混合與選擇**。 * 使用**不同「角色扮演」(personas)** 生成**多樣化數據 (diverse data)**: * 為特定技能 (數學、程式碼、精確指令遵循) 設計不同角色。 * 要求模型針對特定角色生成數據 (例如,為化學動力學研究員設計數學問題)。 * 嘗試了多種角色 (專家、兒童、電腦科學家、音樂家等)。 * 這確保了**高多樣性 (High diversity)** 並**易於擴展 (enables us to scale)**。 * 生成大量問題 (超過 150k 困難數學問題,50k 小學數學問題,35k Python 程式碼和精確指令遵循問題)。 * 使用強大模型 (GPT-4、Claude Sonnet) 生成逐步解決方案。 * **Persona-driven 數據的效果:** * 將 Persona-driven 合成數學問題數據與通用公開數據結合。 * 增加 Persona-driven 數據量**持續提升**數學性能 (特別是困難的數學問題)。 * 對簡單問題集 (GSM8K) 提升較少,可能因為現有公開數據已足夠好。 * **數據過濾:使用自我一致性 (Self-consistency)** * 對於合成生成的每個問題,要求 GPT-4 生成**多個推理路徑 (multiple reasoning paths)**。 * 應用**自我一致性**:找出多數投票 (majority vote) 的答案,並保留能得出該答案的推理路徑。 * 結果:過濾掉約 40% 的數據。 * 使用**僅 60% 的過濾後數據**,在數學任務上達到類似的性能,甚至在 GSM8K 上有更顯著的提升。這表明過濾數據的品質更高。 * **其他 CoT 生成方法:** * **人工註釋:** 非常準確,但規模有限,難以增加推理風格多樣性。 * **轉換為程式碼:** 將數學問題轉為 Python 程式碼並執行生成解決方案。優點:**保證正確性 (guarantees correctness)**。缺點:**較不自然 (less natural)**,不像用自然語言解釋。 * **模型自我生成 CoT:** 可擴展,但品質高度依賴於基礎模型。 * Tulu 結合了這些方法。 * **最終 SFT 數據混合 (Tulu-SFT)** * 結合了人工策劃和合成生成的 CoT 數據,形成了 Tulu 的最終 SFT 數據混合。 * 消融實驗 (ablations) 表明了不同數據組件的重要性 (例如,移除 WildChat 影響聊天,移除 Persona 數據影響數學,移除數學數據導致數學性能顯著下降)。 * 添加**安全數據 (safety data)** 未損害模型的通用能力。 * 與社群中其他流行的數據集 (如 Mammoth、RLHF) 相比,Tulu SFT 數據混合取得了**顯著提升**。 * 繼續改進數據混合非常重要。 * **3.2 偏好微調 (Preference Tuning)** * 在 SFT 之後進行。 * **目標:** 透過使用**獎勵模型 (reward model)** 來**與人類偏好對齊**。 * **偏好數據 (Preference Data):** * 形式:包含一個提示和**兩個模型回應**,標註其中一個**優於 (better than)** 另一個。 * 來源:**人類註釋 (annotated by humans)** 或使用**另一種 AI 模型 (RLAIF - RL with AI Feedback)** 進行評估 (例如,使用 GPT-4 或 Claude Sonnet)。 * 優勢:與評估絕對分數相比,比較回覆**更容易 (much easier to deal with comparison)**。 * **算法:基於人類反饋的強化學習 (Reinforcement Learning with Human Feedback - RLHF)** * 工作原理:使用強化學習。 * 基本概念:策略 (Policy) 生成下一個詞元,與環境 (Environment) 互動,從環境獲取獎勵 (Reward),並更新世界狀態。 * 在 RLHF 中:狀態由輸入提示更新;動作是生成回覆;**環境是獎勵模型 (reward model)**,它是一個神經網絡,根據回覆判斷是否符合偏好。 * 優化:目標是**最大化獎勵 (maximize the reward)**,同時**約束模型盡可能接近基礎語言模型 (constrain the model to stay as close as possible to the base language model)**。這是在對齊偏好和維持原始模型能力之間的平衡。 * **RLHF 算法變體:** * **PPO (Proximal Policy Optimization)**:原始公式。 * **DPO (Direct Preference Optimization)**:直接在偏好方程上使用梯度下降優化。可以看作是**排名目標 (ranking objective)**。 * 新的變體:SimPO (不使用參考模型)、Length Normalized DPO。 * **DPO 與 PPO 比較:** * 實現複雜性、記憶體使用、吞吐量等方面不同。 * 通常 **PPO 的性能優於 DPO**。 * 但 PPO **更複雜**,特別是對於較大模型,需要運行兩個模型 (獎勵模型和策略模型)。 * **DPO 實驗成本更低**,更適合開發階段進行消融實驗。 * **偏好微調的成果與洞察:** * 在 SFT 基礎上進行 DPO 微調可帶來提升 (例如,約 2% 的提升)。 * **高品質數據**對於構建優秀的偏好微調算法**最重要**。精心策劃的數據帶來顯著提升 (從 56% 提升到 61%)。 * 用 PPO 替換 DPO,在相同數據下帶來額外提升 (約 1%)。 * 使用**更大的獎勵模型**幫助不大 (提升約 0.5 個百分點)。 * 混合提示(特別設計的特定任務提示)平均提升不大。但對於**推理等特定領域**,使用特定領域的提示帶來**顯著提升** (尤其是在 GSM8K 上)。 * **總結要點:** * **數據品質**是構建優秀偏好微調算法**最重要因素**。 * PPO 優於 DPO,但 **DPO 更易於實驗和開發**。 * 擴展獎勵模型幫助不大。 * 使用**特定領域提示**在推理等領域帶來性能提升。 * **Tulu 3 的偏好微調方法:** * **提示選擇 (Prompt selection)** 很重要。 * 使用包含 SFT 中已用過的提示、新提示和域外提示的組合。 * 從多種模型 (弱模型如 Llama 7B 到強模型如 GPT-4) 生成回覆,以便獲取豐富的偏好數據。 * 使用**在策略數據 (on policy data)** 很重要:將 Tulu 3 模型的完成結果納入訓練數據,以便學習哪些結果更優。 * 使用 **LLM 作為評審 (LLM as Judge)**:讓 GPT-4 評估哪個回覆更好。評估標準包括**有用性 (helpfulness)**、**指令遵循 (instruction following)**、**真實性 (truthful)** 和**誠實性 (honest)**。評估結果二元化為「被選擇」(chosen) 和「被拒絕」(rejected)。 * 優化算法:使用了 DPO 和 SimPO,因 Simplicity 更簡潔,最終選擇了 DPO。 * 消融實驗確認了使用 GPT-4 作為評審更好、結合在策略和離策略數據 (off policy) 效果最佳、引入新提示也能提升結果。 * **3.3 可驗證獎勵強化學習 (Reinforcement Learning with Verifiable Rewards - RLVR)** * **動機:** * 偏好微調在推理等複雜任務上可能出現**性能停滯或過度優化 (plat out or overfitting)**。 * 神經網絡獎勵模型分配的分數可能缺乏**直觀意義 (intuition)**,人類反饋也非絕對標準。 * **核心思想:** * 對於其**正確性可以驗證 (verify their correctness)** 的任務,可以使用一個**更簡單的**獎勵模型。 * 實際上,可以用一個**基於規則的驗證函數 (rule based verification function)** 取代神經網絡獎勵模型。 * 範例:對於「2 + 2 = ?」的問題,如果答案是正確的則獎勵為 1,否則為 0。 * **應用範圍:** * 適用於具有**標準答案 (ground truths answer)** 的問題,如 GSM8K 和 Math 等數學推理任務。 * 適用於具有**可驗證約束 (verifiable constraints)** 的任務,如精確指令遵循 (例如,要求以特定詞開頭或包含特定詞數)。可以驗證生成結果是否符合這些約束。 * **算法應用:** * 將基於規則的驗證函數作為環境的代理。 * **優點:** **不需要中間的思維鏈 (intermediate Chain of Thought)**,只需要最終答案或驗證結果。 * 應用經典的強化學習算法進行優化 (例如,使用了 PPO)。 * 使用了數萬到十萬級別的訓練實例。 * 在 Big Bench Hard 等推理任務上進行評估。Flan 數據集被發現對 BPH 有提升作用。 * **驗證函數的實現:** * 對於數學和推理,可能是簡單的「如果預測等於正確數字則獎勵 1,否則 0」的判斷。 * 對於約束滿足,可能計算符合約束的百分比。 * **RLVR 的成果:** * 性能曲線顯示,訓練步驟增加時性能**持續提升 (results are going up)**,且**過度優化現象減少 (less over parameter optimization)**。 * 在 SFT 基礎上應用 RLVR 帶來**更高的增益 (higher gains)**。 * 將 RLVR 應用於 DPO 模型之上取得了**最高的數字 (highest number)**。 * 在 GSM8K 和 Math 上看到了顯著的提升。 * 在指令遵循任務 e-eval 上也有增益,但從 DPO 開始應用增益較少 (仍在研究原因,可能數據不足)。 * Flan 數據集上的 RL 顯示對某些推理任務有改進。 * 將此方法應用於 OLMo 2 模型。 * **堆疊多個 RLVR 步驟 (stacking multiple RLVR steps)** 可以帶來更多改進。 * **RLVR 成功的原因:** * RLVR 本身不是新方法,是使用 RL 的最簡單方式。 * 它之所以現在有效,是因為**基礎模型的品質有了很大的提升 (now base model qualities have improved a lot)**。 * 早期的模型 (如 GPT-2) 品質較差,RL 無法在其上看到顯著提升。 * 現在的模型更好,可以在 RLVR 步驟中更好地進行探索和利用。 * **規模效應:** * RLVR 在更大模型規模下效果更好 (405B vs 70B)。 * 在 405B 規模下,Math 性能提升更為顯著 (從 60 提升到 67)。 * 正在探索新的優化算法,如 GrPO,在 Qwen 模型上應用已取得了**顯著提升 (significant Improvement)** (例如,從 67% 提升到 84.6%)。 * **Tulu 3 的總結** * 整合了 SFT (精心策劃的數據混合)、偏好微調 (偏好數據) 和 RLVR (驗證步驟)。 * 模型演示 (demo) 可在 playground.l.org 上體驗。 * **程式碼 (code)**、**數據 (data)** 和**流程框架 (pipeline and framework)** 都已**公開 (publicly available)**。鼓勵使用這些數據來建構更好的後訓練或適應模型。 * Tulu 方法已成功應用於基於 Llama、Qwen 和 OLMo 的模型,並顯示了顯著提升。 **章節 4:測試階段推理技術 (Test Time Inference)** * **目標:** 在模型生成響應時提升推理能力。 * **Swan 計畫** * 一個針對推理和測試階段擴展的**極簡方法 (very minimal recipe)**。 * 組成部分:精心策劃的數據 (S1K) 和一個簡單的測試階段擴展算法。 * **S1K 數據集:** * 收集了大量更高層次的推理數據,包括數學、邏輯推理、概率問題等。這些數據比 Tulu 3 中的數據更複雜,包含奧林匹亞或數學競賽級別的問題。 * 從 59k 問題開始,經過濾除低品質、增加難度和強調多樣性,最終得到 1k 個**高品質數據點**。 * 發現使用 1k 數據和完整的 59k 數據在基準測試上表現**幾乎相似 (almost similar)**。 * **數據註釋:** 從 Google Thinking Gemini 或 DeepSeek R1 中提煉推理步驟和答案。包含「思考詞元」(thinking tokens)。 * **測試階段擴展算法:預算強制 (Budget Forcing)** * 這是一個非常**簡單 (very simple)** 但**有效 (successful)** 的方法。 * **原理:** 在模型生成回覆時,如果它沒有達到預設的**詞元預算 (token budget)**,就**強制 (Force)** 模型生成更多內容。 * 方法:在模型生成的回應末尾添加一個特定的**詞元 (token)**,如「wait」。這個詞元暗示模型「我們不確定你的答案是否正確」。 * 這**不需要訓練一個模型**來決定何時添加「wait」詞元。 * 透過控制詞元預算和添加「wait」詞元,可以控制生成長度。 * **訓練與成果:** * 在 Qwen 32B 模型上使用 S1K 數據進行訓練。 * 結果顯示,隨著**生成詞元數量的增加 (with more generated tokens)**,模型在數學任務上的**準確性呈上升趨勢 (scaling Trend)**,包括 Math 500、Math Competition 和 PG level GPQA Diamond 數據集。 * **與其他測試階段方法的比較:** * 預算強制 (或稱循序擴展 Sequential scaling) 的效果曲線通常比平行擴展方法(如多數投票 Majority voting / 自我一致性 Self-consistency)更陡峭、更成功。 * **其他有前景的推理技術方向:** * **自我引導生成 (Self-guided Generation)**:在推理時讓模型更具自我意識。 * **Self-RAG (Retrieval Augmented Generation with Self-criticism)**:一個基於檢索增強生成 (RAG) 的模型。模型在生成詞元的同時,**批評自己的結果並進行自我改進 (criticize its outcomes and self-improve)**。模型會生成「批評詞元」(critic tokens) 來判斷生成的回應或檢索到的文檔是否合理。 * Self-RAG 在**綜合科學文獻 (synthesizing scientific literature)** 和回答複雜科學問題方面表現出色。 * 相關的系統有 **Open Scholar** (demos.allen.ai 上可體驗)。 **章節 5:預訓練階段的改進** * **將推理能力融入預訓練的重要性:** * 為了擁有更強大的基礎模型,需要將推理能力融入預訓練階段。RLVR 的成功也依賴於更好的基礎模型。 * **訓練階段的劃分:** * 通常訓練包括多個階段。 * **第一階段 (預訓練 Pre-training):** 包含熱身期 (warmup) 和餘弦學習率衰減。主要目標是使用**數兆 (trillions) 詞元**的大量非結構化、多樣化文本進行**預測下一個詞元**的訓練。使用能力範圍內的最佳數據。 * **第二階段 (中訓練 Mid-training):** 在預訓練**後期 (toward the end of training)** 進行。 * **數據:** 使用**高品質數據 (high quality data)**,專門設計用於處理**更複雜的推理任務 (more complex reasoning)** 和程式碼。數據量約為預訓練的 1% (500 億詞元)。 * **方法:** **提升採樣 (upsample)** 高品質預訓練數據,同時引入**監督式微調數據**、大量**推理數據 (reasoning type data)** 和**程式碼數據 (coding data)**。強調數據的**品質 (quality)**。 * 目標:**修補 (patch)** 模型在預訓練中可能不足的能力,例如特定的數學運算能力。透過評估觀察模型表現,進行修補並注入知識。 * **OLMo 2 的數據混合:** * **預訓練數據:** 包括網頁、程式碼、學術論文、STEM 論文、數學網頁和證明等,總計約 4 兆詞元。 * **中訓練數據:** 大量增加了**數學數據 (lots and lots of math data)**,特別是針對模型不足的部分 (例如,乘法)。包含大量**推理數據**。 * **OLMo 2 成果:** * 結合預訓練和中訓練後,模型性能**顯著提升 (significant boost)**。 * **最大的提升**出現在 **GSM8K** (數學推理能力) 和 **DROP** (基於數學數據的問答)。 * OLMo 2 (8B 版本) 的表現與 Llama 3 8B 版本**旗鼓相當 (on par)**。 **章節 6:結論與未來方向** * 人工智慧領域已取得巨大進展。 * 但在許多新興任務上仍需大量研究和創新。 * 未來的研究方向包括(但不限於):**推理 (reasoning)**、**代理 (agents)**、用於其他領域的語言模型 (如科學領域)。