新智元報道
編輯:KingHZ 海貍
【新智元導讀】LLM非要按順序寫代碼?蘋果聯手港大發布DiffuCoder,用擴散模型+強化學習策略,直接性能飆升4.4%。 自回歸,真的要落幕了嗎?
文本擴散模型這次要起飛了?
5月,在I/O 2025大會上,谷歌推出了Gemini Diffusion,主打速度快:采樣速度輕松可達每秒1000個token。
本該光芒四射、萬眾矚目的Gemini Diffusion卻被Veo 3等搶了風頭。
但很快就有網友發現,他用的動圖,其實是來自國內的研究——Dream 7B。
也正是這個團隊的成員,最近聯合蘋果放出了新的大招。
通過與港大相關團隊合作,蘋果用1300億有效token訓出了自己的擴散大語言模型(Diffusion Large Language Model,dLLM)——7B參數的DiffCoder。
論文鏈接:https://arxiv.org/abs/2506.20639
項目鏈接:https://github.com/apple/ml-diffucoder
另外值得一提的是,作者除蘋果的Navdeep Jaitly外都是華人。
Diffusion的確不一樣
dLLM具備全局規劃與迭代優化能力,尤其適合代碼生成。
但缺乏dLLM訓練方法與推理策略。
為揭開dLLM解碼機理,蘋果聯合港大開源了新模型——DiffuCoder。
與GPT等自回歸比較,這次發現dLLM確實不一樣:
dLLM可自主調節生成過程的因果性,無需半自回歸(semi-AR)解碼;
提高采樣溫度不僅拓寬了token的選擇氛圍,還改變了生成順序,進一步增強了多樣性。
這種雙重多樣性為強化學習提供了更豐富的搜索空間。
針對RL訓練中的對數似然估計方差問題,他們還創新性提出的耦合梯度獎勵策略優化(coupled-GRPO)方法,通過構建互補掩碼噪聲對提升訓練效率。
實驗表明:
在EvalPlus基準上實現+4.4%的性能提升
有效降低解碼過程對AR偏置的依賴(見圖1c)
這次研究不僅深化了對dLLM生成機制的理解,更建立了首個專為擴散模型設計的原生RL訓練框架。
圖1:(a)DiffuCoder-Instruct模型在采樣溫度1.2時的解碼過程實例;(b)代碼生成基準測試結果對比;(c)當解碼步數減半時,采用耦合-GRPO訓練的DiffuCoder-Instruct性能下降幅度顯著小于原始指令微調模型
這次工作重點探究3大問題:
生成模式差異:與AR模型相比,dLLM的生成機制有何本質區別?
模態建模特性:在代碼與數學等不同數據模態的建模中,dLLM表現出哪些差異化特征?
多樣性潛力:dLLM的生成多樣性邊界如何界定?相應的訓練后策略應如何針對性設計?
他們還提出了全新的指標:自回歸度得分(autoregressiveness score,AR-ness),用于量化dLLM在生成過程中是否呈現出「因果式」的順序偏好。
關鍵發現如下:
dLLM仍存在一定的「從左至右」偏好。這是由文本天然的線性結構所決定的。但與自回歸(AR)模型不同的是,dLLM具備打破這一約束的能力!
代碼任務比數學任務更能激發「去順序化」的生成方式。實驗顯示,在預訓練階段,dLLM在處理代碼任務時表現出更低的「全局自回歸度」,這說明代碼更適合并行生成。
采樣溫度不僅影響生成內容,還會改變生成順序!與AR模型不同,dLLM中調整temperature參數會同時影響token選擇和token生成的位置順序,生成過程更加靈活。
更多驚喜性發現詳見原論文,研究人員揭示了dLLM結構中的多個「非因果化」潛力點,值得深入探索。
此外,研究人員還提出了后訓練方法——Coupled-GRPO,專為DiffuCoder設計。
保持采樣效率的同時,耦合機制進一步提升了模型性能。
擴散模型,正在重構寫代碼的方式。
性能表現:DiffuCoder vs. 主流代碼大模型
在多項基準測試上,研究人員評估了DiffuCoder的表現(見表1)。
這些測試以Python為主,涵蓋從基礎完成到復雜指令生成的多種任務。
結果亮點:
經過130B代碼token的訓練(Stage 1+2),DiffuCoder在多個指標上已與Qwen2.5-Coder、OpenCoder相當;
在pass@1任務上,Coupled-GRPO后訓練策略展現出顯著優勢。
然而,在指令微調階段,所有dLLM模型的增益仍顯疲弱,說明后續還需加強dLLM在理解/執行復雜自然語言任務上的能力。
表1:7B/8B規模語言模型代碼生成能力基準測試
核心洞察:三大重點
dLLM的生成方式與自回歸模型有何不同?
在標準的自回歸解碼中,無論是局部還是全局自回歸性都為1(即100%自回歸)。
但如圖3所示,dLLM的生成順序更加靈活:許多token并不是依序從最左側的Mask位置或下一個token開始恢復的。
這表明與傳統的自回歸模型相比,dLLM并不總是按順序解碼。
不過,它們的局部和全局AR-ness都顯著接近1,說明文本本身具有一定的順序結構。
在DiffuCoder中,研究者認為模型可以自主決定在生成時采用多強的因果結構。
圖3:左圖:不同模型與數據模態下的局部與全局自回歸特性比較。右圖:(a)dLLM首次前向解碼過程中各位置的置信度評分;(b)局部自回歸性@k:指在k=1(即下一token預測)時,新解掩token與其前k個連續預測token構成嚴格遞增序列的解碼步驟占比;全局自回歸性@k:模型在所有剩余被掩token中選擇解掩最靠前k個位置的解碼步驟占比。
數據模態如何影響生成策略?
從圖3可以看出,盡管數學題和代碼的局部AR-ness程度不同,但穩定的趨勢是:代碼生成的全局AR-ness平均值更低,波動更大。
這說明模型在生成代碼時,往往優先預測后面的token,而將前面被Mask的token延后填充。
這可能是因為:
數學文本本質上是按順序構建的,通常要求從左到右推理;
代碼則具有更強的結構性,模型更傾向于像程序員一樣在不同位置之間跳躍進行規劃。
在訓練過程中,AR-ness有何變化?
在訓練早期(圖4中的階段1),當模型看到650億個token時,AR-ness已經相對較低。但當訓練規模擴大到7000億token時,AR-ness提高了,然而整體性能卻下降了。
這可能與預訓練數據質量有關,因此選擇650億token的模型作為后續訓練的基礎。
圖4:不同訓練階段的自回歸特性漂移情況。左圖:適配預訓練階段與中期訓練階段;右圖:指令微調與強化學習后訓練階段。
在后續階段(階段2的中期訓練與階段3的指令微調)中,模型在第一輪訓練后表現出明顯的因果偏置。但隨著訓練繼續,雖然任務表現不斷提升,AR-ness卻逐漸下降。
這表明模型開始學習并利用非順序性的依賴結構。
在經過GRPO訓練后,模型的全局AR-ness進一步下降,但生成步驟減半的情況下,性能下降幅度卻較小(見圖1(c))。
當dLLM進行條件生成時,擴散過程從完全被Mask的補全文本開始,并嘗試逐步恢復全部內容。
在第一步中,研究者記錄了每個恢復出來的token的置信度(見圖3(a))。
研究者觀察到,這些置信度的分布呈現出「L」形。他們把這種現象稱為「熵匯集」(Entropy Sink)。這種現象可能源于文本的結構本身。
這種「熵偏置」可能與注意力機制中的「注意力匯」現象,但其本質仍有待進一步研究。
由于這個偏向鄰近位置的現象存在,dLLM仍然表現出一定程度的自回歸性。
dLLM的生成多樣性邊界如何界定?
已有研究表明,在接受強化學習(RL)訓練后,自回歸LLM推理路徑的多樣性受到基礎模型的pass@k抽樣能力的限制。
因此,研究者采用pass@k準確率指標,來衡量擴散式大語言模型(dLLMs)在生成樣本時的多樣性表現。
如圖5右和圖6所示,無論是DiffuCoder的基礎模型,還是經過指令微調的版本,當溫度設置較低時,雖然能獲得較高的pass@1準確率,但pass@k幾乎沒有提升,說明生成結果高度集中,缺乏多樣性。
當把溫度提高到適中范圍,模型的pass@k明顯上升,說明具備生成多種正確答案的潛力。
此外,如圖5左和圖1(a)所示,溫度越高,模型的自回歸性(AR-ness)越低,意味著生成的token順序更加隨機。
這一行為與自回歸模型截然不同:
在AR模型中,溫度僅影響每一步選擇哪個token;
在dLLMs中,溫度不僅會影響token的選擇,還會改變其生成的順序。
構建強化學習基座
DiffuCoder的多階段訓練流程
之前,擴散模型缺乏強化學習潛力。
這次,團隊遵循下文中的范式,多階段大規模訓練了DiffuCoder。
論文鏈接:https://arxiv.org/abs/2410.17891
整體流程如圖2所示,分為四個階段:
圖2:DiffuCoder訓練階段的流程及耦合-GRPO算法的示意圖。
預訓練階段以Qwen-2.5-Coder作為基礎模型,使用「適配式預訓練方法」進行持續訓練。
中間訓練階段作為穩定模型參數的「退火期」,總體token量仍為65B,使用了16Btoken的退火代碼數據。
指令微調階段為了提升模型理解和執行復雜自然語言指令的能力,采用了OpenCoder提供的436K大小的SFT樣本。
論文鏈接:https://arxiv.org/abs/2411.04905
不過,不像Qwen2.5-Coder用了SFT之后有非常顯著的增益,Diffusion模型微調之后性能提升非常有限。這說明當前dLLM在指令對齊能力上仍有差距。
后訓練階段引入自研的Coupled-GRPO算法,這是團隊為dLLM量身打造的強化學習機制,進一步提升DiffuCoder的單次準確率
Coupled-GRPO是為dLLM量身打造的強化學習機制。
常規做法只在「被掩碼的token位置上」計算對數概率。
若是采樣次數有限,這種方法容易受到訓練信號稀疏和方差過大的困擾。
Coupled-GRPO算法拋棄了這種做法。
全新的Coupled-GRPO則在兩個「互補的掩碼視角」下,評估每個token的概率,從而高效獲取完整訓練信號。
具體來說,Coupled-GRPO采用對稱時間步+互補掩碼雙路徑前向傳播,計算開銷增長不大,同時采樣效率翻倍。
這招打破了「只能在掩碼位置學」的老規矩,讓每個token都「上場發光」,堪稱擴散范式的一次策略級進化。
作者介紹
Sansa Gong
Sansa Gong在香港大學攻讀博士學位,導師是Lingpeng Kong。本科和碩士均畢業于上海交通大學。
她的研究興趣包括擴散語言模型和長上下文語言模型。
此前,她在上海AI實驗室的Shark-NLP團隊擔任自然語言處理研究員,并曾經從事姿態估計、面部識別、層次文本分類和推薦系統的工作。
參考資料:
https://arxiv.org/abs/2506.20639
https://github.com/apple/ml-diffucoder
特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.