最強大模型 Llama 3.1-405B 架構設計剖析 原創(chuàng)
1、最強大模型 Llama 3.1-405B 簡介
在歷經(jīng)了兩天的提前“泄露風波”后,Llama 3.1 終于正式揭開面紗,由官方對外公布。
新版 Llama 3.1 將其上下文處理能力擴展至 128K,推出了 8B、70B 及 405B 三個不同規(guī)模的版本,再次單槍匹馬地提升了大規(guī)模模型領域的競爭門檻。
對于 AI 大模型領域而言,Llama 3.1 405B 版本具有劃時代的意義,它刷新了開源基礎模型性能的極限。據(jù) Meta 官方透露,該大模型在眾多任務中的表現(xiàn)足以匹敵當前最優(yōu)的閉源模型。

Llama3.1 405B數(shù)據(jù)集評測結果

Llama3.1 405B人工評估
2、Llama 3.1-405B 架構設計剖析
Llama 3.1共開源了8B、70B、405B三種參數(shù)量的模型,其中 405B 除了FP16精度,還有FP8量化版模型,針對8B額外開源了經(jīng)過內(nèi)容安全分類微調的Llama-Guard-3-8B。

架構設計主要看點總結如下:
1. Llama3.1 405B 依然使用 decoder-only 結構的 transformer,沒有使用混合專家。
2. 上下文長度增加到 128K。
3. 在語言模型后訓練階段,405B 通過監(jiān)督微調和直接偏好優(yōu)化等,進一步提升了模型的性能和適應性。監(jiān)督微調使用大量的人工標注數(shù)據(jù)來微調模型,使其能夠更好地遵循人類的指令和偏好;直接偏好優(yōu)化則通過學習人類的偏好來優(yōu)化模型的輸出,使其更加符合人類的期望。
4. 對于小參數(shù)量模型,Meta 使用 405B 模型去提升小參數(shù)量模型的效果。
3、Llama 3.1 預訓練過程剖析
Llama 3.1 的預訓練過程分為三個關鍵階段:1、初始預訓練階段;2、長文本上下文預訓練;3、退火過程??傮w來看,這一流程與現(xiàn)有的一些開源模型訓練方法相似,但技術報告中透露了眾多精細的技術細節(jié)。以下是各階段的詳細描述:
初始預訓練階段:這一階段遵循標準的預訓練流程,訓練初期采用較小的批量大小以保障訓練穩(wěn)定性,隨后逐漸增大批量大小以提高訓練效率,直至達到每批 16M 個token。為了增強模型在多語言和數(shù)學推理方面的能力,特別增加了非英語內(nèi)容和數(shù)學數(shù)據(jù)的比重。
長文本上下文預訓練階段:在預訓練的后半程,使用長文本數(shù)據(jù)進行訓練,以支持高達 128K 個token的上下文窗口。在這一階段,采取了逐步擴展上下文窗口的策略,對于 Llama 3 405B 模型,從最初的 8K token 上下文窗口開始,逐步擴展,最終達到 128K token 的窗口大小。此階段消耗了大約 800B 個token的訓練數(shù)據(jù)。
退火過程:在預訓練的最后 4000 萬個token期間,采取了線性降低學習率至零的策略,同時保持 128K 個token的上下文長度。在這一退火階段,對數(shù)據(jù)混合比例進行了調整,增加了如數(shù)學、代碼、邏輯等高質量數(shù)據(jù)的影響。最終,通過取退火期間多個模型檢查點的平均值,形成了最終的預訓練模型。在訓練后期對高質量數(shù)據(jù)進行上采樣,這一做法在當前也是較為普遍的做法。
4、Llama 3.1 的 Post-Traning 剖析
當前,大型語言模型(LLM)的后訓練主要采用兩種策略,第一種是借鑒自ChatGPT的 SFT+RM+PPO 模式,該模式運用了強化學習,涉及眾多需要調整的超參數(shù),過程較為復雜,不易實現(xiàn);另一種策略是 SFT+DPO 模式,省略了PPO 強化學習部分,簡化了流程,更易于操作。

LLaMA 3.1 在后訓練階段主要采用了 SFT+DPO 模式,并加入了一些獨特的設計。上圖展示了 LLaMA 3.1 整個后訓練流程。起初,使用人工標注數(shù)據(jù)訓練RM 模型,以評估<Prompt, answer>數(shù)據(jù)的質量,隨后利用 RM 進行拒絕采樣。
具體來說,針對一個給定的人工 Prompt,模型生成多個回答,RM 對這些回答進行質量評分,選取評分最高的作為 SFT 數(shù)據(jù),其余則棄用。這樣篩選出的SFT 數(shù)據(jù),結合專門用于提升代碼、數(shù)學、邏輯能力的 SFT 數(shù)據(jù),共同用于微調模型,得到 SFT 模型。
接著,利用人工標注數(shù)據(jù)通過 DPO 模型調整LLM參數(shù),DPO 實質上是一個二分類任務,它從<Prompt,Good Answer,Bad Answer>的三元數(shù)據(jù)中學習,調整模型參數(shù)以促使模型輸出 Good Answer,避免輸出 Bad Answer。這樣就完成了一個后訓練迭代周期。上述過程會多次重復,每次流程相同,不同之處在于,在下一輪拒絕采樣階段生成回答的 LLM 模型,將選擇上一輪流程中產(chǎn)生的若干不同 DPO 模型(具有不同超參數(shù)等)中表現(xiàn)最佳的一個。顯然,隨著迭代的進行,DPO 模型性能不斷提升,因此拒絕采樣中選出的最佳答案質量也逐步提高,進而使得 SFT 模型更加優(yōu)秀,形成了一個正向反饋循環(huán)。可以看出,盡管 RLHF 和 DPO 兩種模式都運用了 RM,但應用場景不同,RLHF 將 RM 評分用于 PPO 強化學習階段,而 LLaMA 3.1 則利用 RM 篩選高質量的 SFT 數(shù)據(jù)。并且,由于拒絕采樣的回答是由 LLM 生成的,這意味著在此過程中大量使用了合成數(shù)據(jù)來訓練 SFT 模型。
5、LLama 3.1 405B 為何不用 MOE 架構?
大模型的 MOE 結構是否能夠提升模型性能?答案并非必然。
早在 ChatGPT 流行之前,研究就已經(jīng)得出結論,從模型性能影響的角度來看,MOE 結構相較于密集型(Dense)模型并不會帶來額外的優(yōu)勢,有時甚至可能存在劣勢。
MOE 架構的主要優(yōu)點在于降低訓練和推理的成本,但這需要以訓練穩(wěn)定性降低和推理時需要更多內(nèi)存來存儲增加的參數(shù)為代價。在用戶數(shù)量龐大、請求頻繁的情況下,推理成本占據(jù)的比重更大,此時 MOE 結構在推理方面更為友好,這也是為什么模型規(guī)模達到一定程度后,其結構會從 Dense 轉向 MOE 的主要原因——這一轉變更多是基于成本和效率的考量,而非性能。
我曾見過一些聲稱MOE結構性能更優(yōu)的說法,但這些觀點缺乏實證支持。Llama 3.1 405B 未采用 MOE 結構,技術報告指出,這是由于考慮到密集型模型在訓練上更為穩(wěn)定,因此選擇了 Dense 結構。與 GPT 4 的 1.8T MOE 模型相比,405B 的 Dense 模型在性能上不相上下,甚至可能更勝一籌(當然,也不排除 GPT 4 可能已經(jīng)是一個經(jīng)過蒸餾的較小模型)。
本文轉載自公眾號玄姐聊AGI 作者:玄姐

















