蘋果發現模型蒸餾Scaling Law!教師模型並非越強越好

基爾西 發自 凹非寺

量子位 | 公眾號 QbitAI

大模型蒸餾也有Scaling Law了!

蘋果最新研究,發現了蒸餾過程中學生模型和教師模型能力之間的冪律關係。

值得關注的是,蒸餾過程當中的教師模型,並不是越強越好

他們發現,學生模型的損失隨教師模型損失降低整體呈下降趨勢,但如果教師模型能力過強,學生模型性能反而會惡化

並且存在一個學生模型相對教師模型學習能力的轉折點,在其兩側分別呈現出了不同的冪律關係。

基於一系列發現,作者還針對模型蒸餾過程中的計算資源分配給出建議,幫助根據學生模型的規模、可用資源等因素選擇效果更好的分配方式。

大模型蒸餾的Scaling Law

通過對不同參數量、蒸餾數據量以及不同能力的學生模型(以監督訓練時的損失衡量)和教師模型進行實驗和數據擬合,作者發現蒸餾時的Scaling Law。

整體來看,學生模型的交叉熵損失LS由教師模型的交叉熵損失LT和學生模型的模仿能力決定

而學生模型的模仿能力由三部分相乘得到,分別與教師模型損失、教師學生模型之間的能力比值(帶波浪線的LS表示通過監督方式訓練的學生模型損失)和數據規模NS、蒸餾數據量DS相關。

至於公式中的c0、c1、d1、f1、α′、β′和γ′,則都是需要根據實驗結果擬合的參數(均為正數)

也就是說,如果參數量和蒸餾數據量固定,對於同一個學生模型而言,影響因素就剩下教師模型了。

直觀上看,學生模型損失LS總體上隨著教師模型損失LT的降低而降低。

但當教師模型能力遠超學生模型時,繼續提升教師性能的邊際效用遞減,學生模型性能可能反而變差

式中的d1就是其中的轉折點,在其兩側分別服從不同形式的冪律——

  • 當比值小於d1時,LS主要取決於自身規模NS和數據量DS

  • 比值大於d1時,LS主要取決於LT

而當學生模型參數量NS和蒸餾數據量DS同時趨於無窮大時,知識蒸餾能讓學生模型性能最終逼近教師模型

蒸餾計算資源怎麼分

基於以上發現,作者在論文中針對不同的蒸餾情況,給出了高效的計算資源分配建議。

其中主要是資源在教師模型訓練、教師模型推理和學生模型訓練之間的分配,除了可用資源量之外,主要影響因素是學生模型的大小

  • 當總預算較小(≲10^21 FLOPs)時,大部分資源應分配給教師模型的訓練;

  • 當預算較大時(≳10^25 FLOPs),資源應在三個部分間平均分配;

  • 對於規模較小的學生模型(≲3B參數),大部分資源應分配給教師模型;

  • 而對於規模較大的學生模型(≳10B),更多資源應分給學生模型本身的訓練。

另外,如果教師模型需要從頭訓練且只用於蒸餾單個學生模型,直接用所有資源監督訓練學生模型,會比蒸餾的效果更好。

以訓練1.82B參數的學生模型為例,當可用數據量超過1T token時,監督學習的學生模型損失比最理想情況下的知識蒸餾更低(下圖左)

只有當總數據量/計算量低於一個隨學生模型規模增大而增大的閾值,且教師模型已經存在或將被重覆使用多次時,知識蒸餾才更有效(下圖右)

作者簡介

這篇論文的作者主要來自蘋果位於英國劍橋的實驗室。

第一兼通信作者是蘋果ML工程師Dan Busbridge,在校期間讀的是物理,擁有理論粒子物理學博士學位。

但從第一份工作開始,Dan的工作就和計算機相關,先是在一家英國公司擔任數據科學家,2016年開始研究機器學習,2020年加入蘋果。

第二位作者是實習生Amitis Shidani,正在牛津大學讀博,專業是統計與機器學習。

第三位Floris Weers,來自龐若鳴在AIML中領導的基礎模型團隊。

還有Jason Ramapuram和Etai Littwin,都是2017年就加入蘋果的資深工程師。

資歷最老的是Russ Webb,是蘋果的高級ML研究經理,早在2010年就已經加入蘋果團隊。

蘋果在劍橋的實驗室成立時,就是由Russ出任研究主管。

整體上研究是由Dan來負責,各作者所負責的具體工作,在附錄中也有介紹。

論文地址:

https://arxiv.org/abs/2502.08606