Scaling Law或將終結?哈佛MIT預警:低精度量化已無路可走,重磅研究掀翻AI圈

新智元報道

編輯:桃子 LRS

【新智元導讀】哈佛斯坦福MIT等機構首次提出「精度感知」scaling law,揭示了精度、參數規模、數據量之間的統一關係。數據量增加,模型對量化精度要求隨之提高,這預示着AI領域低精度加速的時代即將結束!

就連「量化」也不管用,scaling law真的要終結了嗎?

一提scaling law,人們重點關注的是參數規模、數據量等因素,卻忽視了「精度」這一關鍵變量。

哈佛斯坦福MIT等機構研究人員竟發現,低精度訓練會降低模型的「有效參數量」!

對此,他們提出了「精度感知(precision-aware)」scaling law。

論文地址:https://arxiv.org/pdf/2411.04330

對於推理過程來說,訓練數據越多,量化帶來的性能損失越大。

就訓練來說,「精度感知」scaling law能夠預測不同部分採用不同精度的模型的損失。在某些情況下,用低精度訓練LLM可能更有效率。

論文中,作者統一了訓練後和預訓練量化的scaling law,建立了一個完整的理論框架。

這個單一函數形式可以預測在不同精度下進行訓練和推理時的性能降級。

基於465次以上的預訓練實驗,在最大1.7B參數,訓練數據量達到26B token的模型上驗證了最新的預測。

艾倫研究所科學家Tim Dettmers對此評價道,這是很長時間以來,最重要的一篇論文。它以強有力的證據表明我們正在接近「量化」的極限。

「論文直接指出:訓練所需的token越多,所需的精度就越高,這對整個領域和GPU的未來都有廣泛的影響」。

就連AI大牛Karpathy也轉發了這個帖子。

圖中可以看到,對於20Btoken訓練,8B模型在16位精度下更有效,70B模型,8位仍然可行,但效率已經開始降低。注:8B模型(圓形)、70B模型(三角形)、405B模型(星形)

OpenAI研究員Clive Chan表示,擁抱scaling law,看看最先進的量化方案(mxfp,Pw≠Pkv≠Pa等)如何推進前沿將會很有趣。另外,我個人認爲,值得花費一半的計算預算來進行一次大規模運行,以驗證這個擬合是否適用於大模型。

可以說,AI領域的大多數進展,都來自計算能力的提升,這主要依賴於低精度加速(從32位到16位再到8位)。

但這種趨勢現在正接近尾聲。

加上物理限制,這造就了scale終結的「完美風暴」。

LLM正接近「量化」scale極限

毋庸置疑,scale早已成爲業界公認的深度學習核心驅動力。

2020年OpenAI團隊,以及2022年DeepMind團隊在scaling law的論文中,研究了模型/數據集大小之間的權衡,以平衡性能和計算。

然而,模型訓練和推理時使用的精度,是影響成本和性能的重要「第三因素」。

深度學習正在向低精度發展:當前的前沿模型(如Llama-3)使用BF16訓練,並且普遍努力將預訓練範式轉向FP8。

下一代硬件將支持FP4,而僅權重量化的進展已導致大規模二進制和三進制訓練。

這些範式能走多遠?

具體來說,論文作者提出了以下問題:

其實,研究精度scaling具有挑戰性,因爲scaling law的研究通常旨在放棄細節性的實現細節,追求普遍的函數形式,而量化研究通常相反,專注於細節:如何進行量化,使用什麼類型,應用於模型的哪些部分。

爲了實現這一點,研究人員考慮了各種合理的函數形式,並選擇了一個將量化實施細節與損失scaling「分離」的形式,由此能夠在許多實際情況下預測損失scaling。

總的來說,作者研究了在訓練期間和之後,隨着數據和參數的變化,精度對損失的影響如何擴展。

研究發現了,在後訓練量化的影響:量化導致的性能降級,隨數據量增加而增加。對於固定模型,超過某個點後繼續訓練可能有害,這種影響在模型後期量化時特別明顯。

針對預訓練精度的最優選擇,計算最優的預訓練精度,通常獨立於計算預算,但當模型大小受限時,這種獨立性不再成立。在這種情況下,最優精度隨計算量緩慢增長。

對於N個參數的語言模型,在D個token上進行訓練,訓練精度爲P_train ,訓練後權重精度爲 P_post ,最終研究人員找到了一個統一的scaling law:

其中,A、B、E、α、β是正擬合常數,δ_PTQ是指推理前訓練後量化引起的損失退化

Tim Dettmers在長文中表示,英偉達Blackwell將通過硬件層面實現的塊級量化來提供出色的8位計算能力。這將使8位訓練變得像從FP16切換到BF16一樣簡單。

然而,從這篇論文可以看出,未來還需要超過8位的精度來訓練許多模型。

相較於其他模型,運行Llama 405B進行推理是一個巨大的挑戰。但論文表明,中等參數規模模型(如70B)也難以在低精度下高效訓練。

從Dettmers的個人經驗(很多失敗的研究)來看,你無法欺騙效率。

如果量化失敗,那麼稀疏化也會失敗,其他效率提升機制也是如此。如果這是真的,我們現在已接近最優解。在這種情況下,他只看到三條前進的道路...

(1) scaling數據中心:這還能繼續scaling約2年。

(2) 動態scaling:轉向更小的專業化模型或更大/更小的模型。

(3) 知識蒸餾:蒸餾的行爲與其他技術不同,可能具有不同的特性。

所有這些意味着範式將很快從「scaling」轉向「如何利用現有資源」。Dettmers認爲「如何幫助人們通過AI提高生產力」這種思維方式是最好的前進方向。這種思維方式更關注流程和人,而不是技術本身。

訓練後量化Scaling Law

最簡單,也是最常見的量化技術就是將現成的模型進行訓練後量化處理(post-train quantize)。

研究人員首先使用BF16格式訓練的模型,並採用GPTQ技術來進行訓練後的量化處理,結果發現訓練後的量化在數據擴展性方面表現不佳。

模型在訓練後量化以及與訓練結束時相比,出現了性能退化。

可以發現,隨着訓練數據量的增加,所有尺寸模型的性能退化δPTQ都在增加;但對於固定的數據集,更大尺寸的模型性能退化更小。

上述公式中,CT、γD、γN、γpost是正的擬合常數;當token與參數的比例D/N足夠大,或者量化後的精度Ppost足夠低時,模型在預訓練時間延長後,量化帶來的損失可能會增加,

還可以觀察到,當降低量化精度時,δPTQ呈指數增長。

從直覺上來說,如果在更多數據上訓練,模型會將更多信息壓縮到權重中,即量化權重的擾動對損失的影響更大。

發現1:如果想將模型進行訓練後量化,存在某一個預訓練數據量,如果超過這個值,再添加額外的數據會對推理時的性能產生負面影響。

量化訓練Scaling Law

研究人員探索瞭如何在訓練階段調整模型處理數據的精度,包括模型的權重、激活值和KV緩存,測試了3位到12位的不同精度設置,並與BF16高精度基準進行比較。

量化訓練

研究人員在保持激活值(Pa)和KV緩存(Pkv)的精度固定在較高水平的情況下,考察了權重精度(Pw)與參數量(N)之間的權衡,其中設定D = 13B個token,並在N和Pw的不同組合上進行了網格掃描。

等損失輪廓圖顯示,一個「參數量較少但權重精度較高」的模型可以達到與「參數量較多但權重精度較低」的模型相同的損失。

此外,提高權重的位精度在低位精度時收益較大,但在較高精度時(每個權重6-7位)會趨於飽和。

根據經驗趨勢,研究人員總結了權重精度和參數之間的最佳權衡模型:

其中γw是一個擬合常數,用於衡量模型權重的敏感度;A、B、E、α、β是Chinchilla規模法則中的擬合正數常數。

低精度訓練

研究人員想要測試,在低精度訓練中,對模型的權重、激活值和注意力進行量化的影響是否相互疊加,即不同組件的量化效果可能會相互作用,產生更復雜的影響。

通過對比「邊際擬合常數」模型和「聯合擬合常數」模型的預測能力,來測試這種獨立性是否大致成立。

結果顯示,這兩種擬合常數的方法具有大致相同的預測能力,即獨立性假設是合理的。

發現2:在訓練期間對權重、激活值和KV緩存進行量化的效果,可以被建模爲獨立且相乘的,因此損失函數可以表示爲:

研究人員對常數γw、γa、γkv進行擬合,如果三個精度都設置爲相同的值P,與預訓練相同,可以簡化爲下式子,其中γ̄是三個參數的平均值。

對預訓練的影響

當模型以精度P進行訓練時,意味着權重、激活值和KV緩存的精度都等於P,即 Pw = Pa = Pkv = P,計算成本與P成正比;

研究人員在16位精度下進行了實驗,並使用成本模型C = 6ND FLOPs,考慮到計算與精度之間的線性關係,將模型進一步推廣泛化:當P = 16時,簡化爲Chinchilla成本函數。

可以注意到,無論實驗的規模如何,函數形式的含義都是正確的,但預測的數值取決於擬合的常數,其中常數通常是基於小規模、整型實驗擬合的。

1、如果必須在低精度下訓練,先增加參數量再增加數據

在低精度訓練時,有效的參數量會大大減少,因此增加參數量可以更有效地利用有限的計算資源,因爲數據量相對於有效參數來說已經過剩了。

2、計算最優的預訓練精度通常與計算預算無關

在沒有對參數N、數據D和精度P的限制,只有固定計算預算的情況下進行預訓練,研究人員的目標是聯合最小化損失函數L(N, D, P),其中C與NDP成正比,並最終得到了一個關於最優精度P*(C)的隱式方程。

結果發現,當在整數類型的量化運行中擬合擴展法則時,P*大約是7位,也意味着在BF16中訓練模型的實際操作可能是次優的,並且向低精度訓練的競爭需要在低於4位之前停止,可能會迫使模型尺寸不成比例地(超過4倍)增大,從而保持住損失。

3、如果模型尺寸受限,計算最優的預訓練精度可以增加

研究人員在探討如何在有限的計算資源下,針對不同大小的智能體進行訓練時,並發現了一個有趣的現象:

不同尺寸的模型並不一定需要在相同的數值精度下訓練,實際上,最優的數值精度會隨着計算資源的增加而增加,而且這種增加與計算資源的對數成正比。

也就意味着,如果保持模型尺寸不變,只調整數據量和數值精度,那麼可以根據數據量和智能體大小的比例來調整最優的數值精度,能夠更有效地利用有限的計算資源,通過減少數據量與有效參數數量的比例,使智能體的訓練效果更接近理想的狀態。

發現3:當N(模型大小)、D(數據量)和P(精度)一起優化時,計算最優的預訓練精度與計算資源無關。16位精度包含了許多不必要的位,而4位精度則需要不成比例地增加模型尺寸以保持損失值。

擬合結果表明,7到8位是計算最優的精度。相比之下,當N預先固定,例如在相似數據上訓練一系列模型時,P*(C)與C的對數成正比,也表明,對於被顯著過訓的模型,訓練時使用更高的精度可能是計算上最優的選擇。

統一精度Scaling Law

研究人員將之前提出的兩個擴展法則合併成統一的函數形式,可以預測訓練和訓練後量化的影響,包括兩者之間的相互作用。

研究人員發現,在預測δPTQ時有兩種競爭效應,但總體而言,以較低精度訓練的模型對訓練後量化更爲健壯,即遭受的退化較小。

直觀上,以低精度訓練Pw、Pa或Pkv會迫使模型學習對「量化噪聲」有魯棒性的權重,因此在PTQ下的退化較小。

然而,以低精度訓練的模型的有效參數數量Neff減少,導致token量與參數量的比值增加,會導致退化更多,也可以稱之爲「過訓效應」。

修改δPTQ以考慮訓練精度

假設訓練精度嚴格大於推理精度,如果相等則退化爲零,研究人員先探索了僅在訓練期間以權重精度Pw變化時的退化表現。

可以觀察到,如果訓練和推理時精度之間有差距,退化會非常迅速地增加到指數大值,可以將擬合的初始函數形式修改爲:

並可以擴展到包含注意力機制的精度效應:

可解釋的統一函數形式

研究人員考慮僅以低精度訓練權重,並將Cw = 1作爲示例,以便簡化上式,可以反映出由於低精度訓練權重而降低的有效參數量:

該公式能夠清晰地反映了模型對PTQ噪聲的魯棒化程度,與在類似噪聲下的訓練程度相匹配。

發現4(統一擴展法則):將預訓練期間的低精度效應建模爲獨立且相乘的噪聲累積,幷包括訓練後量化退化,可以預測具有N個參數的語言模型,在D個token上訓練,以訓練精度Pw、Pa、Pkv,最終達到權重精度Ppost時的損失爲:

侷限性

論文作者指出,當前研究還存在幾個限制:

在實驗過程中,使用了固定的模型架構和設置,但在實踐中,經常會專門進行架構調整以適應低精度訓練。

此外,作者還在相對較小的語言模型(最大約250M參數)上擬合了scaling law,未能覆蓋超大規模模型情況。

下一步,研究人員將在更大規模模型上繼續研究這一效果。

論文作者

本篇論文核心貢獻作者是Tanishq Kumar和Zachary Ankner。

Tanishq Kumar

Tanishq是哈佛大學數學專業的大四學生,研究機器學習理論和計算神經科學。他最感興趣的是將理論工具應用於深度學習中鮮爲人知的經驗主義謎題。

Zachary Ankner

Zachary Ankner是麻省理工學院的三年級本科生,目前學習計算機科學和數學。他的研究旨在通過對簡單建模變化的深入實證調查來改進LLM。

參考資料:

https://the-decoder.com/scaling-laws-for-precision-ai-researcher-sees-perfect-storm-for-the-end-of-scale/

https://x.com/Tim_Dettmers/status/1856338240099221674

https://arxiv.org/pdf/2411.04330