強化學習系統:推論與訓練怎麼接起來|CMU 11-768 第 12 堂
RL 系統用推論引擎取樣、驗證器給獎勵、訓練引擎重算 logprob 與梯度,再把新權重同步回推論端。用一個自編的小例子走完這五步,再理解快取、歷史保留與非同步更新各在解決什麼問題。
RL 系統用推論引擎取樣、驗證器給獎勵、訓練引擎重算 logprob 與梯度,再把新權重同步回推論端。用一個自編的小例子走完這五步,再理解快取、歷史保留與非同步更新各在解決什麼問題。
一個prompt加一個示範答案,與一個prompt加兩個偏好回應,不是相同資料。SFT學示範token;典型RLHF管線先學reward再做受約束的policy更新;DPO由偏好對與reference-relative比率直接建立loss。這篇整理它們的分界,完整推導與驗收各有單獨教學篇。
CS224R Spring 2026 的 default project 要你在 Qwen2.5-0.5B Base 上,針對 Countdown 算術推理任務依序實作三個階段:SFT 暖身、IPO 偏好最佳化、用規則式 verifier 當獎勵的 RLOO,三者用同一套 vLLM 評估比較,再做一個自選的研究延伸。實作部分禁止用 SFTTrainer 這類高階 trainer,也禁止任何 AI 工具協助,只有延伸部分例外。延伸占報告成績的一半,看的是方法和紀錄,不是分數。起始碼和資料集都公開,校外讀者缺的是 Modal credits 和 autograder。
CS224R Spring 2026 第九講由 Archit Sharma 客座,投影片註明改寫自 CS224N。主線是一條推導鏈:instruction tuning 解決不了「沒有標準答案」和「錯誤輕重不同」,所以改成最大化人類偏好;人類評分太貴又不準,所以改用成對比較訓練 Bradley-Terry reward model;RLHF 拿它當獎勵、加 KL 懲罰做 policy gradient;DPO 則利用 KL 約束問題的封閉解,把 reward 寫成 policy 的對數比值,整件事變成一個二元分類損失。最後一段談前沿:reward hacking、可驗證獎勵,以及用 AI 回饋取代人類回饋。
預訓練完的模型很會接話,卻不一定會照指令做事。這一堂前半講 post-training 的兩步:instruction tuning 用大量不同任務教模型讀懂任務描述,RLHF 再讓模型朝人類偏好的整份回答靠攏,中間靠 reward model 與成對比較解決人力與評分不一致的問題,DPO 與 KTO 則把強化學習那一段拿掉。InstructGPT 與 ChatGPT 就是這兩步串起來。後半講 LLM adaptation:模型太大、整個微調太貴,所以只訓練少量參數,做法有 Adapter、LoRA 與 prompt tuning,沒有哪一種在所有任務都最好。
Yueqi Song 這講把 agent SFT 拆成六個決定:loss 只算 assistant token(停止 token 也要算)、挑哪些軌跡(通過測試的也會教壞模型,換老師、加新任務比多抽樣有用)、用 Agent Data Protocol 統一格式、訓練時注意 packing 與 template drift、用實際 harness 評估,以及 SFT 要為接下來的 RL 選 checkpoint,而不是訓到自己最好。
Graham Neubig 用一個修 bug 的 coding 任務,把第 9 講的 policy gradient 推到實戰:用 critic、GAE 或 PRM 把功勞分給個別回合,用 importance ratio 與 clipping 處理非同步 RL 的過期資料,並把 PPO、GRPO、CISPO、GSPO、DAPO 收成一張對照表;最大的篇幅留給獎勵本身——verifier 誤判、reward hacking 與探索崩塌,最後以 on-policy 蒸餾收尾。
Lec 23 把 transformer 接成一個會預測下一個 token 的模型:切 token、查 embedding、疊 L 層 masked attention,最後乘回 embedding 表做 softmax,用交叉熵(也就是 MLE)訓練。預訓練只給知識,要會聊天還需要 SFT、LoRA、RLHF、DPO;推論時再靠 in-context learning、RAG、chain-of-thought 與工具呼叫。Lec 24 把「自己造一個假的監督任務」推廣到影像:自編碼器、上色、補洞、旋轉、拼圖、聚類,最後到對比學習、SimCLR 與 CLIP。Discussion 11 練位置編碼、RoPE、causal mask 與 KV cache。
最後三講把前面學的東西用在兩個前線。Lec 25 講蛋白質:AlphaFold2 解了「序列→結構」,但工程上真正卡的是「哪條序列有我要的功能」,而設計等於在 20^L 的離散空間裡當模型的對手;講義把條件生成 p(x|y) 收斂成三條統計上正確的路,最後都回到 Bayes rule。Lec 26 是線上 guest lecture,沒有公開教材。Lec 27 先定義 agent(LLM 在迴圈裡用工具、自己決定下一步),再說「資料被環境取代」:環境 = Docker + 任務 + verifier,拿來做 SFT、RL(RLVR、GRPO)或不動權重的 GEPA。期末自評用 Fall 2025 與 Spring 2025 期末考加解答,Spring 2026 期末沒有公開。
Deep Cogito 完成 $43M Series A,由 TQ Ventures 領投,Benchmark、Nexus Venture Partners、Zscaler 等跟投,累計融資超過 $56M。這輪錢押的不是下一個前沿模型,而是「後訓練」本身能不能變成一門獨立、可對外銷售的生意。
2026 年三個非大廠團隊用不同的 RL 後訓練路線做出 benchmark 黑馬:Ornith 讓模型自己出題自己改進(GRPO self-improvement loop),Nous Research 用 DataForge 合成資料 + Atropos 執行獎勵 RL,MiniMax 在 20 萬個真實環境裡大規模 RL。三條路各有強項,但共同證明了一件事:後訓練 RL 比預訓練規模更重要。
第 8 講解釋預訓練模型如何經 instruction tuning、偏好資料與 RLHF 變成助理,再以 DPO 直接從勝負配對學習;每一步都把人的判斷轉成訓練訊號,也把偏差帶進模型。
第十五講把 post-training 拆成 imitation 與 optimization:SFT 從 instruction-response data 抽出預訓練已有能力,RLHF 用 pairwise feedback 跨過人類示範與偏好之間的落差;PPO 與 DPO 都逃不掉資料偏差、reward overoptimization 和 mode collapse。
08–12 組教材把 base model 變成可互動系統:預訓練決定基礎能力,post-training 改變行為,generation 與 evaluation 決定輸出如何被使用與判讀。