DeepSeek并非完美,訓(xùn)練過(guò)程存在“深度詛咒”
高性能大模型在訓(xùn)練的過(guò)程中通常需要數(shù)千個(gè)GPU,耗費(fèi)數(shù)月甚至更長(zhǎng)時(shí)間才能完成一次訓(xùn)練。這種巨大的資源投入使得模型的每一層都必須高效訓(xùn)練,才能確保算力資源最大化利用。
但大連理工、西湖大學(xué)、牛津大學(xué)等研究人員對(duì)DeepSeek、Qwen、Llama和Mistral研究發(fā)現(xiàn),這些模型的深層在訓(xùn)練過(guò)程中表現(xiàn)并不好,甚至可以被完全剪枝而不會(huì)影響模型性能。
例如,研究人員對(duì)DeepSeek-7B模型進(jìn)行了逐層剪枝,以評(píng)估每一層對(duì)模型整體性能的貢獻(xiàn)。結(jié)果顯示,移除模型的深層對(duì)性能的影響微乎其微,而移除淺層性能會(huì)明顯下降。這表明DeepSeek模型的深層在訓(xùn)練過(guò)程中未能有效學(xué)習(xí)到有用的特征,而淺層則承擔(dān)了大部分的特征提取任務(wù)。
這種現(xiàn)象稱(chēng)為“深度詛咒”(Curse of Depth),同時(shí)研究人員也提出了一種有效的解決方法——LayerNorm Scaling(層歸一化縮放)。
深度詛咒介紹
“深度詛咒”現(xiàn)象的根源在于Pre-LN的特性。Pre-LN是一種在Transformer架構(gòu)模型中廣泛使用的歸一化技術(shù),它在每一層的輸入上進(jìn)行歸一化,而不是在輸出上。這種歸一化方式雖然能夠穩(wěn)定模型的訓(xùn)練過(guò)程,但也帶來(lái)了一個(gè)嚴(yán)重的問(wèn)題,隨著模型深度的增加,Pre-LN的輸出方差會(huì)呈指數(shù)級(jí)增長(zhǎng)。
這種方差的爆炸性增長(zhǎng)導(dǎo)致深層的Transformer塊的導(dǎo)數(shù)接近于單位矩陣,使得這些層在訓(xùn)練過(guò)程中幾乎不貢獻(xiàn)任何有效的信息。換句話說(shuō),深層在訓(xùn)練過(guò)程中變成了單位映射,無(wú)法學(xué)習(xí)到有用的特征。
“深度詛咒”的存在對(duì)大語(yǔ)言模型的訓(xùn)練和優(yōu)化帶來(lái)了嚴(yán)重的挑戰(zhàn)。首先,深層的訓(xùn)練不足導(dǎo)致了資源的浪費(fèi)。在訓(xùn)練大語(yǔ)言模型時(shí),通常需要大量的計(jì)算資源和時(shí)間。由于深層未能有效學(xué)習(xí)到有用的特征,算力資源在很大程度上被浪費(fèi)了。
深層的無(wú)效性限制了模型性能的進(jìn)一步提升。盡管淺層能夠承擔(dān)大部分的特征提取任務(wù),但深層的無(wú)效性使得模型無(wú)法充分利用其深度優(yōu)勢(shì)。
此外,“深度詛咒”還對(duì)模型的可擴(kuò)展性帶來(lái)了難題。隨著模型規(guī)模的增加,深層的無(wú)效性愈發(fā)突出,這使得模型的訓(xùn)練和優(yōu)化變得更加困難。例如,在訓(xùn)練超大型模型時(shí),深層的訓(xùn)練不足可能導(dǎo)致模型的收斂速度變慢,甚至無(wú)法收斂。
解決方法——LayerNorm Scaling
LayerNorm Scaling 的核心思想是對(duì)Pre-LN輸出方差的精準(zhǔn)控制。在一個(gè)多層的 Transformer 模型中,每一層的層歸一化輸出都會(huì)被乘以一個(gè)特定的縮放因子。這個(gè)縮放因子與當(dāng)前層的深度密切相關(guān),是層深度平方根的倒數(shù)。
為大家舉個(gè)簡(jiǎn)單易懂的例子,大模型就像一座高樓,每一層都是其中的一層樓,而 LayerNorm Scaling 就是給每一層樓的 “能量輸出” 進(jìn)行了精細(xì)調(diào)節(jié)。
對(duì)于較低的樓層(淺層),縮放因子相對(duì)較大,這意味著它們的輸出被調(diào)整的幅度較小,能夠保持相對(duì)較強(qiáng)的 “能量”;對(duì)于較高的樓層(深層),縮放因子較小,這樣就有效地降低了深層輸出的“能量強(qiáng)度”,避免了方差的過(guò)度積累。
通過(guò)這種方式,整個(gè)模型的輸出方差得到了有效控制,不會(huì)再出現(xiàn)深層方差爆炸的情況。(整個(gè)計(jì)算過(guò)程比較復(fù)雜,有興趣的小伙伴可以直接看論文)
從模型訓(xùn)練的視角來(lái)看,在傳統(tǒng)的 Pre-LN 模型訓(xùn)練中,由于深層方差的不斷增大,梯度在反向傳播過(guò)程中會(huì)受到很大干擾。深層的梯度信息變得不穩(wěn)定,這就像在傳遞接力棒時(shí),接力棒在后面幾棒的傳遞過(guò)程中總是掉落,導(dǎo)致信息傳遞不暢。
使得深層在訓(xùn)練時(shí)難以學(xué)習(xí)到有效的特征,模型的整體訓(xùn)練效果大打折扣。而 LayerNorm Scaling通過(guò)控制方差,穩(wěn)定了梯度流。
在反向傳播過(guò)程中,梯度能夠更加順暢地從模型的輸出層傳遞到輸入層,每一層都能接收到準(zhǔn)確而穩(wěn)定的梯度信號(hào),從而能夠更有效地進(jìn)行參數(shù)更新和學(xué)習(xí)。
實(shí)驗(yàn)結(jié)果
為了驗(yàn)證LayerNorm Scaling的有效性,研究人員在不同規(guī)模的模型上進(jìn)行了廣泛的實(shí)驗(yàn)。實(shí)驗(yàn)涵蓋了從1.3億參數(shù)到10億參數(shù)的模型。
實(shí)驗(yàn)結(jié)果顯示,LayerNorm Scaling在預(yù)訓(xùn)練階段顯著提升了模型性能,與傳統(tǒng)的Pre-LN相比,降低了困惑度,并減少了訓(xùn)練所需的token數(shù)量。
例如,在LLaMA-130M模型上,LayerNorm Scaling將困惑度從26.73降低到25.76,而在10億參數(shù)的LLaMA-1B模型上,困惑度從17.02降低到15.71。這些結(jié)果表明,LayerNorm Scaling不僅能夠有效控制深層的方差增長(zhǎng),還能夠顯著提升模型的訓(xùn)練效率和性能。
研究人員對(duì)LayerNorm Scaling在監(jiān)督微調(diào)階段的表現(xiàn)進(jìn)行了評(píng)估。實(shí)驗(yàn)結(jié)果顯示,LayerNorm Scaling在多個(gè)下游任務(wù)上均優(yōu)于其他歸一化技術(shù)。
例如,在LLaMA-250M模型上,LayerNorm Scaling在ARC-e任務(wù)上的性能提升了3.56%,在所有任務(wù)上的平均性能提升了1.80%。這表明,LayerNorm Scaling不僅在預(yù)訓(xùn)練階段表現(xiàn)出色,在微調(diào)階段也能夠顯著提升模型的性能。
此外,研究人員將DeepSeek-7B模型的歸一化方法從傳統(tǒng)的Pre-LN替換為L(zhǎng)ayerNorm Scaling。在整個(gè)訓(xùn)練過(guò)程中,深層塊的學(xué)習(xí)能力得到了顯著提升,能夠積極地參與到模型的學(xué)習(xí)過(guò)程中,為模型的性能提升貢獻(xiàn)力量。困惑度下降的幅度更為明顯,下降速度也更穩(wěn)定。
論文地址:https://arxiv.org/abs/2502.05795