作者:張俊林@知乎
Deepseek R1和Kimi K1.5同一天公布技術(shù)報告,介紹了RL+LLM的做法,方法簡潔有效,讀完技術(shù)報告收獲很大,且兩者效果基本追平OpenAI O1,下一步就是趕超O3了,方法已經(jīng)走通,趕超應(yīng)該只是時間問題。
R1和K1.5的方法其實是類似的,且都沒有采取MCST+PRM的技術(shù)路線,報告發(fā)布后涌現(xiàn)出一些聲音,意思是MCST是不可行的,我覺得這個結(jié)論下得有點草率,而且為時過早。就比如攀登珠穆朗瑪峰,可能有不同的路徑,條條小路通封頂,不能說A路線能通頂,由此得出結(jié)論B路就不行,這里貌似沒有必然的邏輯關(guān)系。
如果綜合下目前相關(guān)研究進展,除了R1和K1.5,微軟的rStar-Math也是個非常值得關(guān)注的技術(shù)方案,采取MCST+PRM路線,我認為它已經(jīng)把樹搜索如何做類o1模型的路趟通了,若綜合R1、K1.5和rStar-Math一起分析,再深入思考下,應(yīng)該能得出很多有意思的判斷。比如,R1和K1.5以及MCST方法之間有什么特殊的關(guān)聯(lián)嗎?我認為三者之間有著密切的關(guān)聯(lián)。本文會介紹這三者的主要思路,以及相互之間的聯(lián)系。
正文有點長,這里提煉出一些要點:
Kimi K1.5的做法是DeepSeek R1的特例,基于這個路線,我們可以推導(dǎo)出更通用的方法;
由K1.5和R1,可得到如下推論:存在大量題目,由模型給出的推理軌跡COT數(shù)據(jù)中包含中間步驟錯誤,但是這影響不大,用這種數(shù)據(jù)仍然能訓(xùn)練出強大的類o1模型;
進一步的推論:大模型比人類更適合學(xué)習(xí)復(fù)雜推理的過程,對于大模型來說就是把高概率的邏輯片段建立起遷移聯(lián)系,一環(huán)套一環(huán)玩接力游戲就行,而人腦其實是不擅長學(xué)習(xí)長鏈條的知識推導(dǎo)的;
Deepseek R1和Kimi K1.5采用的方法是MCST方法的特例,如果兩者有效,一定可以推導(dǎo)出對應(yīng)的更通用的有效MCST樹搜索版本;
All You Need is High Quality Logic Trajectory Data;
得益于Deepseek開源出的眾多R1版本模型,我們可以低成本快速復(fù)制出邏輯推理能力更強大的模型;
正文開始。
Kimi K1.5和Deepseek R1的做法及聯(lián)系
如果看過兩者的技術(shù)報告,會發(fā)現(xiàn)這兩者做法非常相似, K1.5基本上可以看成R1做法的特例情況。而且我在讀完后引發(fā)了一些疑問,并在自我解釋這個疑問的過程中引發(fā)出一些有意思的推論。
Kimi K1.5的技術(shù)方案
Kimi K1.5的兩階段過程
在選定某個基座模型后,Kimi K1.5分為兩個階段,第一階段找到一批 <問題,答案> 數(shù)據(jù),通過某個能力較強的模型,來產(chǎn)生問題對應(yīng)的推理軌跡COT數(shù)據(jù)(代表模型深度思考的過程)和模型推導(dǎo)出的答案,根據(jù)模型產(chǎn)生的答案是否與標(biāo)準(zhǔn)答案相同,可以過濾掉錯誤的中間推理過程,保留那些模型產(chǎn)生答案和標(biāo)準(zhǔn)答案相同的推理軌跡COT,再加上一些規(guī)則判斷或人工校準(zhǔn),盡量減少中間推理步驟錯誤,由此產(chǎn)生一批推理軌跡COT數(shù)據(jù),訓(xùn)練數(shù)據(jù)此時形成 <問題,推理軌跡cot,答案> 的形式,然后用這些數(shù)據(jù)SFT調(diào)整下模型參數(shù)。這個階段的主要目的一個是讓大模型能夠產(chǎn)生初步的深度思考能力,一個是輸出格式滿足我們希望的形式,通過調(diào)整模型參數(shù)讓這種能力內(nèi)化到模型里。
K1.5與R1的RL階段策略
第二個階段則采用強化學(xué)習(xí)(RL)進一步優(yōu)化模型的復(fù)雜邏輯推理能力(R1和K1.5的RL階段做法非常接近,這里一起說了)。這個過程其實和傳統(tǒng)的RLHF基本類似,只是RL策略里去掉了不太好調(diào)試的RM模型。具體而言(參考上圖),在經(jīng)過SFT后的模型Model-SFT基礎(chǔ)上,比如我們現(xiàn)在拿到一個問題以及對應(yīng)的標(biāo)準(zhǔn)答案數(shù)據(jù) <問題,標(biāo)準(zhǔn)答案> ,此時讓Model-SFT自己產(chǎn)生K條完整的推理軌跡COT,以及對應(yīng)的答案。ORM(結(jié)果回報模型)根據(jù)某條推理軌跡產(chǎn)生的答案是否和問題的標(biāo)準(zhǔn)答案相同給出Reward,符合標(biāo)準(zhǔn)答案給出正向高回報,不符合標(biāo)準(zhǔn)答案則負向低回報(上圖左部)。
同一個問題,K個推理軌跡,K個答案,產(chǎn)生高低不同的K個回報。我們可以認為得到高回報的推理軌跡質(zhì)量高,于是,我們希望根據(jù)目前得到的這些數(shù)據(jù),來調(diào)整下模型參數(shù),讓模型以后傾向輸出那些高回報的推理軌跡COT作為思考過程,而別產(chǎn)生那些低回報的推理軌跡COT,這是強化學(xué)習(xí)希望達到的目標(biāo)。Deepseek R1和Kimi K1.5的具體RL策略展示在上圖右側(cè),兩者核心思想高度一致:一個問題產(chǎn)生K個推理軌跡,以K個推理軌跡獲得Reward的均值作為比較基準(zhǔn), 鼓勵模型產(chǎn)生高于均值Reward的軌跡,抑制模型產(chǎn)生低于均值Reward的軌跡。通過上述策略修正模型參數(shù),即可達成我們希望RL達成的目標(biāo),讓Model-SFT產(chǎn)生質(zhì)量越來越高的推理軌跡COT。
如果對大模型Post-Training比較熟悉的同學(xué)可以看出來,Kimi K1.5這種做法和標(biāo)準(zhǔn)的Post-Training流程基本是一樣的,主要區(qū)別在于:傳統(tǒng)的大模型SFT階段是用人寫的標(biāo)準(zhǔn)答案,而此時換成了用模型產(chǎn)生并人工校準(zhǔn)的推理軌跡COT及答案;而RLHF階段做法則基本一致。
Deepseek R1的做法
Deepseek R1的兩階段過程
Deepseek R1的訓(xùn)練過程看著稍微復(fù)雜一些,但是若你仔細分析就會發(fā)現(xiàn),Kimi K1.5其實可以看作Deepseek R1的一個特例。如上圖所示,Deepseek R1訓(xùn)練可以劃分成兩個大的階段,第一個階段(Phrase 1)基本就是上述Kimi K1.5的做法,此處不贅述,這里的基座是Deepseek V3 Base,也就是預(yù)訓(xùn)練版本模型。區(qū)別在后面,對于Kimi來說完成第一個階段就是最后的模型了,而對于Deepseek R1來說,階段一只是個輔助過程,經(jīng)過階段一RL訓(xùn)練穩(wěn)定后的模型Model RL-1,其主要目的是用來產(chǎn)生比第一次SFT階段更高質(zhì)量的推理軌跡COT數(shù)據(jù),產(chǎn)生完新的數(shù)據(jù)就被拋棄了,我們要新產(chǎn)生的數(shù)據(jù)但是不要之前的舊模型。
然后,用Model RL-1產(chǎn)生的新COT數(shù)據(jù),再加入Deepseek V3在Post-training階段的數(shù)據(jù)(非邏輯推理類的數(shù)據(jù),加入是為防止模型經(jīng)過邏輯推理數(shù)據(jù)調(diào)整參數(shù)后產(chǎn)生的再難遺忘,導(dǎo)致其它非邏輯推理類任務(wù)效果變差,這是標(biāo)準(zhǔn)做法),進入第二階段(Phrase 2),其過程和Phrase 1是一樣的,內(nèi)部也分為SFT和RL兩個階段,主要不同在于SFT用的數(shù)據(jù)集合換掉了,僅此而已。
但是這里需要注意一點,也是我認為訓(xùn)練邏輯推理模型過程中值得關(guān)注的技巧:第二階段的基座模型是最開始選擇的基座模型Deepseek V3 Base,而不是經(jīng)過階段一強化過的Model RL-1。這個很重要,道理也好理解,我們可以認為Phrase 1里SFT階段的邏輯軌跡COT數(shù)據(jù)質(zhì)量不夠高,盡管經(jīng)過RL有所增強,但比起Model RL-1產(chǎn)生的邏輯推理數(shù)據(jù)來說仍有所不如,所以可以把Model RL-1反向看成被低質(zhì)量數(shù)據(jù)污染的模型,與其如此,不如直接用更好的數(shù)據(jù)在干凈的Base模型上調(diào)整,這樣效果應(yīng)該更好。微軟的MSCT思路模型rStar-Math里也反復(fù)采用了這一技巧,進行了四輪迭代,每次迭代都產(chǎn)生更好的訓(xùn)練數(shù)據(jù),但策略模型的基座都是剛開始的干凈Base模型,可見這一手段是很重要的訓(xùn)練邏輯推理模型的技巧。
Deepseek R1 Zero訓(xùn)練過程
談完R1我們再來看R1 Zero,對比上面R1 Zero的訓(xùn)練過程圖和Kimi K1.5的訓(xùn)練過程圖,可以看出,R1 Zero的RL步驟和R1是完全一樣的,最主要區(qū)別是沒有用采集好的推理軌跡COT數(shù)據(jù)來通過SFT啟動模型。但是,Zero也不是憑空進行RL的,你可以認為是用Pormpt工程的方式替代了SFT階段,當(dāng)基座模型能力足夠強,寫一個Prompt模版,要求它啟動深度思考模式且輸出滿足我們期望的格式,這個強能力基座肯定可以辦到。類似思路,可以參考OpenAI剛推出O1的時候的復(fù)刻模型Thinking Claude( [https://github.com/richards199999/Thinking-Claude](https://github.com/richards199999/Thinking-Claude) ),就是在Claude 3.5基座基礎(chǔ)上,通過寫Prompt模版的方式,來讓Claude看上去像o1那樣產(chǎn)生推理軌跡COT和答案,如果Thinking Claude再加上RL階段去調(diào)整模型參數(shù),我們就能獲得R1 Zero。
由R1和K1.5可推導(dǎo)出的更通用的方法
前文有述,我們可以把K1.5看成是R1的一個特例,通過思考兩者的關(guān)系,其實在R1的兩個階段基礎(chǔ)上,我們可以進一步推廣,形成更通用的一種多階段訓(xùn)練類o1模型的思路。請參照上文提到的R1訓(xùn)練過程圖,那里R1只進行了一次Phrase 1,而我們完全可以多次重復(fù)R1的Phrase 1階段,在最后一個階段使用R1的Phrase 2,如此這般,就能形成更通用的多階段做法。比如我們設(shè)計4個階段,第一階段類似R1的Phrase 1,得到Model RL-1,使用它產(chǎn)生更高質(zhì)量的推理軌跡COT數(shù)據(jù),然后用這些數(shù)據(jù)對干凈的Base模型進行SFT,開啟Phrase 2,得到Model RL-2,由Model RL-2產(chǎn)生質(zhì)量更進一步的推理軌跡COT數(shù)據(jù),如此重復(fù)幾次,最后一個階段采用R1的Phrase 2策略,補充標(biāo)準(zhǔn)Post-Training階段訓(xùn)練數(shù)據(jù),防止對通用能力的災(zāi)難遺忘問題。
而且,在后續(xù)的階段里,可以逐步增加難題占比,采用類似“課程學(xué)習(xí)”的思想:先從簡單問題學(xué)起,逐步增加問題難度。在K1.5和rStar-Math都有提到,而且也都通過實驗證明了逐步增加問題難度的有效性,所以這也是一個重要技巧。R1雖然沒有提,但我猜也應(yīng)遵循了這個思想,R1 Zero在RL階段隨著訓(xùn)練往后進行,輸出Token數(shù)逐步增加,也可以推出越往后的訓(xùn)練階段,難題數(shù)量越多的趨勢。
由R1和K1.5訓(xùn)練方法引出的疑問及推論
在制作推理軌跡COT訓(xùn)練數(shù)據(jù)時,我之前認為對于復(fù)雜問題對應(yīng)的推理軌跡COT來說,我們希望盡量減少中間步驟的錯誤,最好是得到推理軌跡COT中每個推理步驟都完全正確,且最終答案也正確的訓(xùn)練數(shù)據(jù),這樣的數(shù)據(jù)才是好的訓(xùn)練數(shù)據(jù),經(jīng)過這種訓(xùn)練數(shù)據(jù)訓(xùn)練出的邏輯推理模型才能解決好高難度問題。但若根據(jù)Deepseek R1和Kimi K1.5的做法反推,我能得到的推論是:推理軌跡COT中間推理步驟是否錯誤這事好像不重要,存在相當(dāng)多中間步驟錯誤的訓(xùn)練數(shù)據(jù),也一樣能訓(xùn)練出強大的推理模型。我看完幾篇論文綜合信息推出這個結(jié)論后,剛開始覺得有點不可思議,但貌似事實確乎如此。
from: The Lessons of Developing Process Reward Models in Mathematical Reasoning
我剛看完R1相關(guān)論文的疑問來自于:R1也好,K1.5也好,在制作SFT數(shù)據(jù)以及RL階段產(chǎn)生推理軌跡COT數(shù)據(jù)時,是通過模型生成完整的推理軌跡COT,然后比較模型產(chǎn)生的最終答案和標(biāo)準(zhǔn)答案,根據(jù)兩者是否相同篩選一下,去掉模型答案和標(biāo)準(zhǔn)答案不一致的數(shù)據(jù),或者這種情況給個低Reward。
但是,很明顯通過這種方法產(chǎn)生的推理軌跡COT中,存在很多中間步驟的錯誤,證據(jù)來自阿里關(guān)于PRM改進模型的論文(參考:The Lessons of Developing Process Reward Models in Mathematical Reasoning),可以參考上圖,這個圖說的意思是:通過Qwen2.5 Math對問題給出推理軌跡COT以及對應(yīng)的答案,他們手工檢查了一下,存在大量結(jié)果正確但是推理軌跡COT中包含錯誤中間步驟的數(shù)據(jù),比如上圖Omni-MATH數(shù)據(jù),經(jīng)檢查發(fā)現(xiàn)有43%的數(shù)據(jù)推理軌跡COT中有錯誤中間步驟但是最終給出答案是正確的。而且很明顯,越是困難的問題集合中,使用模型給出的推理軌跡COT中,包含錯誤中間步驟的比例會越高。
這意味著,R1和K1.5制作訓(xùn)練數(shù)據(jù)過程中,盡管經(jīng)過和標(biāo)準(zhǔn)答案進行對比進行了篩選,但其產(chǎn)生的推理軌跡COT中,仍然有相當(dāng)比例的數(shù)據(jù)存在中間步驟錯誤,而且越是困難的題目包含錯誤數(shù)據(jù)的比例越高(K1.5講到了一些控制這個問題的辦法,比如把選擇題這種類型去掉,因為容易猜中答案但是推理過程是錯的,但是在這里不適用,比如Omni-MATH是數(shù)值類型的答案,非選擇類型,這個問題依然很嚴重)。但明顯R1的做法又是有效的,所以綜合兩者,我得出上面的推論:存在大量題目,由模型給出的推理軌跡COT數(shù)據(jù)中包含中間步驟錯誤,但是這影響不大,用這種數(shù)據(jù)仍然能訓(xùn)練出強大的類o1模型。
如果在此基礎(chǔ)上進一步深入思考,能得出更多更有趣的推論。比如,我們假設(shè)一種極端情形:模型給出的推理軌跡COT所有中間推理步驟都是錯的,那么毫無疑問,用這種訓(xùn)練數(shù)據(jù)不太可能訓(xùn)練出好的類o1模型。結(jié)合第一個推論,就是說推理軌跡中存在中間步驟錯誤也沒事,那么事實的真相很可能是這樣的:某個推理軌跡COT的中間步驟存在錯誤是OK的,但是錯誤的中間步驟在總推理步驟的占比不能太高,應(yīng)該是越低越好。就是說,我們不用介意某個推理軌跡COT中是否包含錯誤中間步驟,但是要考慮錯誤中間步驟的占比情況。所謂高質(zhì)量的推理軌跡COT數(shù)據(jù),應(yīng)該是錯誤中間步驟占比低的數(shù)據(jù)。比如說,我們有10個問題,模型對于每個問題給出一個包含10個步驟的推理軌跡COT,即使是10個軌跡每個都包含錯誤中間步驟也沒事,但是,如果10*10共100個推理步驟中,有50個中間步驟是錯誤的,那么相比只有10個中間步驟是錯誤的推理軌跡數(shù)據(jù),10個中間步驟錯的就是高質(zhì)量的推理軌跡數(shù)據(jù)。
而前面提到多階段的類o1訓(xùn)練過程,后一階段之所以能進一步提高推理軌跡COT數(shù)據(jù)的質(zhì)量,其核心含義應(yīng)該是:越往后階段的模型Model RL-i,由其產(chǎn)生的推理軌跡COT訓(xùn)練數(shù)據(jù)中包含的錯誤中間步驟比例,要比Model RL-i-1模型產(chǎn)生的錯誤數(shù)據(jù)占比來得要低。由此體現(xiàn)出訓(xùn)練數(shù)據(jù)質(zhì)量越來越高的含義。當(dāng)然,這也只是一個推論。
如果在此基礎(chǔ)上再進一步思考,還能得出更有趣的推論。這說明大模型從推理軌跡訓(xùn)練數(shù)據(jù)中學(xué)到的是片段間的邏輯關(guān)系,而不是整體推理鏈條的正確性。就是說學(xué)到的是由步驟i可以推導(dǎo)出步驟i+1,這種細粒度的推理片段和關(guān)聯(lián),這是大模型邏輯推理學(xué)習(xí)的基本單元。所以很長的推理軌跡中出現(xiàn)一些錯誤的步驟,只要它總體占比不高,那么這并不影響模型對邏輯基本單元間建立聯(lián)系的學(xué)習(xí)。這也是個推論,我猜很可能是成立的,這也可以解釋目前我們看到的現(xiàn)象,就是最強大模型比如o3,在邏輯推理能力方面已經(jīng)超過了99%的普通人。這說明就復(fù)雜推理這個能力來說,可能我們傳統(tǒng)的理解有點問題,大模型比人類更適合學(xué)習(xí)復(fù)雜推理的過程,對于大模型來說就是把高概率的邏輯片段建立起遷移聯(lián)系,一環(huán)套一環(huán)玩接力游戲就行,而人腦其實是不擅長學(xué)習(xí)長鏈條的推導(dǎo)知識的。
可行的MCST做法rStar-Math技術(shù)方案
rStar-Math架構(gòu)及效果
rStar-Math已算是眾多復(fù)刻類o1模型里把MCST路線走通的典范,而且僅使用了相當(dāng)有限的機器資源達成的(4×40GB A100 GPUs),所以樹搜索技術(shù)方案也不存在說因為太消耗資源一般人做不了的問題。上圖展示了其架構(gòu)、做法及效果,可以看出即使是1.5B和7B的模型,效果提升都非常大,如果換成更大規(guī)模的模型,各種評測指標(biāo)肯定還能大幅提升,無疑rStar-Math已經(jīng)驗證了MCST路線是可行的。
具體方案這里不展開了,建議仔細閱讀下論文。之前確實很多嘗試MCST的方案不算成功,這說明不是技術(shù)路線的問題,而是魔鬼在細節(jié),某個細節(jié)沒做對就很容易導(dǎo)致整體技術(shù)全面失敗。我覺得rStar-Math相比之前很多MCST方案做得好的主要有兩點:第一個是訓(xùn)練分成了4個階段,采取類似課程學(xué)習(xí)的思想,越往后迭代增加更多比例的難題,目前看這一點也是復(fù)刻類o1模型成功的重要技巧之一;
第二是綜合出一個更好的PRM策略。MCST很難做成功的最大阻礙是PRM不太好做,大家一般會模仿AlphaGo,到了某個推理中間步驟S,然后從S出發(fā)rollout出多條之后的推理軌跡,直到產(chǎn)生最終答案,然后看下從S出發(fā)的多個后續(xù)軌跡中,有多少導(dǎo)向了正確的最終答案,導(dǎo)向越多正確最終答案的則Reward越高。這種做法從思想上來看是非常合理的,但是問題在于:其實從S出發(fā)導(dǎo)向最終正確答案的rollout軌跡里,很多都包含中間推理過程的錯誤,導(dǎo)致如此評估出的Reward不準(zhǔn)確(這個結(jié)論請參考前面提到的阿里改進PRM的工作)。
Reward是指導(dǎo)MCST搜索方向的重要信號,Reward不準(zhǔn)自然導(dǎo)致搜出來的推理空間軌跡質(zhì)量就不夠高。rStar-Math在這里綜合了三個策略:一個是把推理軌跡改成代碼的形式,這樣可以通過程序驗證篩掉不靠譜的路徑,等于用代碼驗證的方式對搜索空間進行了剪枝,干掉了大量肯定錯誤的中間節(jié)點;另外一個提出了Process Preference Model (PPM),這個類似DPO的思路,引入正負例一起評估,評估的對象其實是從問題根結(jié)點出發(fā),到S步驟之前所有推理步驟的質(zhì)量;再一個是傳統(tǒng)的從S出發(fā)多次Rollout,這個評價的是從S步驟往后走導(dǎo)向正確答案的概率。三者結(jié)合就能篩選出高質(zhì)量的推理軌跡路徑了,克服了只靠Rollout評估不準(zhǔn)的問題。
PRM應(yīng)該是限制MCST方法的關(guān)鍵,但是目前看這個問題基本得到了解決,核心思想是不能只靠經(jīng)典的rollout來評估結(jié)果作為PRM,要結(jié)合其它因素一起。比如阿里改進PRM的策略除了Rollout,還引入其它大模型作為判斷者(LLM as a dudge),兩者評判一致才算數(shù),且極大增強了PRM判斷的準(zhǔn)確性。如果后續(xù)做MCST方案,建議可以直接用阿里發(fā)布的新型PRM或者參考rStar-math的思路,相信效果提升會比較明顯。MCST方案的核心是提高PRM的準(zhǔn)確性,隨著改進方案的逐步提出,MCST方案的效果也會越來越好。
Deepseek R1和Kimi K1.5采用的方法是MCST方法的特例
在復(fù)刻類o1模型的賽道里,怎樣的算法是好的算法呢?我覺得評判標(biāo)準(zhǔn)是:找到高質(zhì)量推理軌跡COT數(shù)據(jù)的效率,效率越高的算法越好。比如說前面提到一般我們需要對模型SFT+RL跑多個階段,爭取做到后一階段產(chǎn)生的推理軌跡COT數(shù)據(jù)質(zhì)量比前一階段的更好些。假設(shè)有兩個方法A和B,若方法A迭代兩輪獲得的推理軌跡COT數(shù)據(jù)質(zhì)量相當(dāng)于方法B迭代4輪獲得的數(shù)據(jù)質(zhì)量,我們就可以說方法A是個效率更高的方法,也是更好的方法。
MCST從機制上講應(yīng)該是效率非常高的算法,它等價于在巨大的可能推理軌跡COT組合空間里,通過PRM的指導(dǎo)和搜索策略盡快找到質(zhì)量最高的路徑,所以原則上第一輪迭代就能找到高質(zhì)量的推理軌跡COT數(shù)據(jù),肯定比隨機產(chǎn)生的推理軌跡效率要高。而Deepseek R1和Kimi K1.5的做法則是給定某個問題,使用大模型產(chǎn)生一個答案正確的推理軌跡COT,直接使用這個COT,這等價于在樹搜索空間里隨機采樣了一條最終答案正確的推理軌跡路徑,如果PRM靠譜,推理軌跡COT的質(zhì)量肯定不如MCST方法選出的數(shù)據(jù)質(zhì)量高,所以很明顯MCST是種效率更高的方法。我覺得,可以這么看這個問題:Kimi K1.5方法可看作Deepseek R1的特例,而Deepseek R1的做法本質(zhì)上是MCST做法的特例(隨機選擇路徑VS. 搜索高質(zhì)量路徑)。阻礙MCST的主要是不準(zhǔn)的PRM,但如上所述,這個問題基本得到了解決,而且我相信未來會有更好的PRM技術(shù)方案出來進一步大幅提升MCST的效果。
MCST++運行機制示意圖
既然是特例,若R1和K1.5方法有效,那么一定能推導(dǎo)出更通用的樹搜索版本。我在這里推導(dǎo)一下,為后文指稱方便,給推導(dǎo)出的模型隨便起個名字比如叫“MCST++”。
如上圖所示,MCST++本質(zhì)上是對rStar-math這種有效MCST方法的改進,改進思路是引入R1里面的RL階段,或者把它看成rStar-math和R1的結(jié)合版本也可以。
比如我們可以類似rStar-Math的做法,把訓(xùn)練過程分為符合課程學(xué)習(xí)原則,邏輯題目由易到難的4個階段。rStar-Math每輪是通過策略網(wǎng)絡(luò)(Policy Model)在樹搜索過程中,針對某個中間節(jié)點S,擴展出m個子推理步驟內(nèi)容擴展樹結(jié)構(gòu),再結(jié)合PRM找到更好的路徑,兩者結(jié)合來搜索高質(zhì)量的推理軌跡。在形成樹結(jié)構(gòu)后,找到一批高質(zhì)量軌跡數(shù)據(jù),用來調(diào)整Base模型,來作為下一輪MCST搜索的新的策略網(wǎng)絡(luò),此時策略網(wǎng)絡(luò)經(jīng)過訓(xùn)練,提出的子推理步驟質(zhì)量會更高。PRM也會跟著更新,尋找好的節(jié)點也越來越準(zhǔn)。這樣形成通過自我迭代越來越好的效果。
rStar-math每一輪只通過從MCST樹中找到更高質(zhì)量的推理軌跡COT數(shù)據(jù)來SFT base模型,以改進策略網(wǎng)絡(luò)的效果,并沒有類似R1的RL過程。很明顯,此時,我們可以把R1的RL過程引入策略網(wǎng)絡(luò),在策略網(wǎng)絡(luò)進行SFT后,疊加類似R1 的RL階段,通過強化學(xué)習(xí)進一步提升策略網(wǎng)絡(luò)的能力。在下一輪啟動時,用經(jīng)過SFT+RL兩個子階段強化過的模型作為新的策略網(wǎng)絡(luò),形成了策略網(wǎng)絡(luò)的自我進化(PRM也可以跟著進化,策略類似rStar-Math,此處不展開談了)。
這是從rStar-math角度看的,如果從R1角度來看,參考上面提到的“由R1和K1.5可推導(dǎo)出的更通用的方法”部分,其實改動的部分是把SFT階段使用的推理軌跡COT數(shù)據(jù)來源,從由大模型隨機生成推理軌跡COT,換成了MSCT樹搜索的方式來獲得SFT階段的訓(xùn)練數(shù)據(jù),RL部分是一樣的。所以,本質(zhì)上MCST++是融合了R1方法和rStar-Math的基于樹搜索的模式,如果R1的RL階段是有效的,而且如果“MCST樹搜索相比隨機采樣能獲得更高質(zhì)量的數(shù)據(jù)”成立,那么必然就是一種有效的基于MSCT的樹方法。所以這是為何前文說如果R1方法有效,一定可以推導(dǎo)出有效的MCST方法的原因。而且很明顯,這種多階段的方案是一種流程上更通用的方法。
All You Need is High Quality Logic Trajectory Data
目前看,對于打造更好的o1模型來說,最重要的是如何獲得更多高質(zhì)量的推理軌跡COT數(shù)據(jù)。這包括如何獲得更多的 <問題,答案> 數(shù)據(jù),尤其是有難度的問題。拿到 <問題,答案> 數(shù)據(jù)后,如何獲得質(zhì)量越來越高的中間推理軌跡COT數(shù)據(jù),這里的質(zhì)量很可能是根據(jù)錯誤中間步驟占比來衡量的,由此得到高質(zhì)量的 <問題,推理軌跡cot,答案> 數(shù)據(jù)。這里的推理軌跡COT,可以是人工產(chǎn)生的,可以是大模型自己生成的,也可以是從其它模型蒸餾來得。獲得方法貌似也不重要,重要的是質(zhì)量是否越來越好,在此前提下,再考慮成本是否足夠低。
從做推理軌跡COT數(shù)據(jù)的若干種方法來說,貌似大家對蒸餾都有發(fā)自種內(nèi)心的回避感,都怕自己被人說用的是蒸餾數(shù)據(jù),貌似自己用蒸餾來的數(shù)據(jù)就會被人瞧不起。我覺得這里有誤區(qū),數(shù)據(jù)質(zhì)量好最重要,怎么得來的其實關(guān)系不大。那你說R1是蒸餾嗎?其實本質(zhì)上也是蒸餾(階段一給階段二蒸餾數(shù)據(jù)),無非是用自己的模型來蒸餾而已。蒸餾的本質(zhì)含義是由模型來做數(shù)據(jù)而不是靠人,體現(xiàn)了數(shù)據(jù)制作自動化的思想,差別無非用的這個模型來自于自己的、還是開源或者閉源模型而已,這是符合制作高等AI所有環(huán)節(jié)盡量自動化的發(fā)展趨勢的。
低成本快速增強大模型邏輯推理能力的方法
首先,找到大量 <問題,答案> 數(shù)據(jù),包括STEM、代碼、數(shù)學(xué)、邏輯等方面題目集合;
第二,對問題進行改寫,從問題側(cè)來擴充 <問題,答案> 數(shù)據(jù)的數(shù)量;
第三,引入開源的類o1模型,比如Deepseek發(fā)布的各種R1開源模型,
第四,使用R1模型制作推理軌跡數(shù)據(jù),并標(biāo)注出問題的難易程度:可以通過對問題使用R1模型多次Rollout生成推理步驟軌跡,比如一個問題生成8個推理軌跡,根據(jù)最終正確答案是否正確進行過濾,過濾掉最終答案錯誤的例子;形成 <問題,推理軌跡cot,答案> 數(shù)據(jù)集合。
第五,(此步驟可選非必需,但可能比較重要)找到一個好的PRM模型,比如阿里開源的PRM模型,對某個推理軌跡COT整體質(zhì)量進行評估,比如回答某個問題的推理軌跡由10個推理步驟構(gòu)成,根據(jù)每個推理步驟PRM得分的平均分,得出整個推理軌跡的得分,得分低者意味著軌跡中包含錯誤推理步驟比較多,說明整體質(zhì)量低,把整體質(zhì)量低的 <問題,推理軌跡cot,答案> 數(shù)據(jù)過濾掉,只用剩下的高質(zhì)量推理軌跡數(shù)據(jù)。這一步等于提升推理步驟整體正確率,等價于提升訓(xùn)練數(shù)據(jù)質(zhì)量。
第六,使用剩下的高質(zhì)量正例對基座模型進行SFT,數(shù)據(jù)使用順序采取課程學(xué)習(xí)思路,由簡單題目到難題,或者逐步增加難題比例,由此得到最強邏輯推理模型
第七,如果你想讓自己的技術(shù)方案看著更有技術(shù)含量一些,可以引入部分負例(最終答案錯誤的推理軌跡COT數(shù)據(jù)),結(jié)合正例做個DPO,我感覺是這步驟可選非必需。
這本質(zhì)上是種數(shù)據(jù)蒸餾方法,好處是成本極低、實現(xiàn)起來速度快,能很快制作當(dāng)前最強邏輯推理模型,如果都這么做,那誰更強取決于三個因素:誰有更多的題目,尤其是難題;類o1模型給出的推理軌跡質(zhì)量,質(zhì)量高者勝出;PRM模型的準(zhǔn)確性,更準(zhǔn)確者勝。
但是這個方法的缺點是缺乏自我進化機制,上面三個因素基本共同決定了能達到的效果天花板,缺乏通過模型不斷迭代增強能力的機制。要想引入自我提升的模式,可參考上文提到的R1、K1.5或者MCST++的思路。
蛇年大吉 福運綿長
Happy New Year
特別聲明:以上內(nèi)容(如有圖片或視頻亦包括在內(nèi))為自媒體平臺“網(wǎng)易號”用戶上傳并發(fā)布,本平臺僅提供信息存儲服務(wù)。
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.