現代大型語言模型架構內部
正規化位置(pre-norm 與 post-norm)
每個 transformer 區塊都在它的注意力與前饋子層外包一條殘差連接,唯一的問題是正規化相對於那條跳接路徑擺在哪裡。post-norm,也就是最初的設計,是在把子層輸出加回殘差之後才正規化。pre-norm,如今的標準,則是在子層之前先正規化輸入,並讓殘差高速公路保持原樣。差別看似微小,卻決定了很深的堆疊究竟能不能訓練起來。
pre-norm 勝出,是因為它保留了一條乾淨、未正規化的路徑從輸入一路直通輸出,於是梯度能流過數十層而不爆炸或消失,即使沒有細膩的學習率暖身,訓練也穩定。post-norm 在成功訓練時能達到略好的最終品質,但在深處很脆弱。一些近期模型會多加正規化,例如在注意力輸出周圍,以兼得兩者的好處;這個位置選擇與改用 RMSNorm 的趨勢天然相伴。
又稱
另見