將R1的思路引入多模態大模型的RL訓練配方-Skywork-R1V3 原創
來看一個實驗比較扎實的工作,Skywork-R1V3將R1的思路引入多模態大模型,提出:直接將RL技術從僅文本的大語言模型轉移到VLMs是不夠的,需要開發VLM特定的RL配方。下面來看看如何在VLM中引入COT的RL,供參考。
數據情況
1、冷啟動微調數據
構建了一個包含約2萬個實例的冷啟動數據集,這些實例來自2024年之前的中國高中數學實踐問題。數據集涵蓋物理、化學、生物和數學四個主要學科(分布如下)。通過Skywork-R1V2模型生成每個問題的逐步思考過程,并使用拒絕采樣策略篩選出最終答案與真實答案匹配的高質量實例。得到了大約12000個高質量的帶有推理鏈的樣本。
2、RL微調數據
K12難度多模態數學數據15000個樣本,全部是多項選擇題和填空題,每個實例由一個問題q和其對應的答案a組成,不包含顯式的推理步驟。
3、連接器模塊的調優數據
從20個不同領域中選擇了10000個樣本,用于在強化學習階段之后對連接器模塊進行專門的調優,以確保模型在不同領域中的知識和推理能力得到平衡和增強。
三個訓練階段的數據分布情況
后訓練方法
1、獎勵函數設計
Skywork-R1V3的獎勵函數由兩部分組成:
- 格式獎勵:和dpsk那樣,回答模板遵循結構 “< think >...< think >...”格式
- 準確性獎勵:RL過程的主要目標,
準確性獎勵優化目標
2、冷啟動微調
冷啟動微調階段的目標是通過使用早期版本的Skywork-R1V2模型生成的樣本,初始化模型的推理能力。在這個階段,模型被訓練以采用“先思考后回答”的方式,這種能力是從LLM的預訓練階段繼承而來的。
3、強化學習微調
用PPO和GRPO算法來優化模型的推理策略,
- PPO:通過限制策略更新的幅度來確保訓練的穩定性,優化目標是最大化期望獎勵。
- GRPO:針對稀疏的二進制獎勵(0或1),通過組內歸一化來估計優勢函數,從而提供更豐富的學習信號。(關于GPRO這里不再贅述,可參考《???DeepSeek采用的GRPO算法數學原理及算法過程淺析??》)
實現細節上,使用VERL框架進行訓練,逐步增加上下文和輸出長度,并使用特定的超參數設置(如學習率、批量大小等)來優化訓練過程。
4、連接器模塊微調
作用是跨模態對齊,僅調整連接器參數,可以有效重新平衡模型的知識分布,而不影響其推理能力。訓練過程中使用特定的超參數設置(如學習率、批量大小等),并通過早停策略避免過擬合。
消融研究
對不同組件進行消融研究
模塊消融
從上圖可以看到:視覺編碼器是否激活對模型性能的影響不大,連接器模塊被凍結或移除,模型會迅速失去推理能力,獎勵曲線急劇下降。
引入課程學習策略,通過從簡單到困難的問題逐步訓練模型。實驗結果顯示,這種基于難度的課程學習策略并未提高模型的泛化能力。相反,模型在切換到更難的問題后,雖然在復雜任務上的表現有所提升,但在統一評估集上的表現卻出現了偏差,尤其是在中等難度問題上的性能下降。這表明,模型在復雜任務上學到的特殊策略可能與中等難度任務的核心推理路徑相沖突,從而削弱了整體泛化能力。
實驗評測
參考文獻:Skywork-R1V3 Technical Report,https://github.com/SkyworkAI/Skywork-R1V/blob/main/Skywork_R1V3.pdfrepo:https://github.com/SkyworkAI/Skywork-R1V
本文轉載自???大模型自然語言處理????? 作者:余俊暉
