密集模型的推理能力也能和 DeepSeek-R1 掰手腕了?
華為利用純昇騰集群訓練出的盤古 Ultra,在數學競賽、編程等推理任務當中,和 R1 打得有來有回。
關鍵是模型參數量只有 135B,整個訓練過程零英偉達含量,而且沒有出現損失尖峰。
通過改進的模型架構和系統優化策略,盤古 Ultra 擁有優異的性能表現和 52% 以上的算力利用率。
并且有網友表示,訓練過程中沒有出現損失尖峰這一特征,似乎此前從未實現。
作為一個參數量 135B 密集模型,盤古 Ultra 達到了同尺度密集模型的最優表現,甚至可以與 DeepSeek-R1 等參數量更大的 MoE 模型競爭。
在預訓練階段模型的評測中,盤古 Ultra 在絕大部分英文基準任務和全部中文任務上取得了最佳性能,優于 Llama 405B、DeepSeek-V3 等 baseline 模型。
尤其在 MMLU、TriviaQA、GSM8K 等具有挑戰性的數據集上,盤古 Ultra 展現出了卓越的語言理解和推理能力。
經過指令調優后,盤古 Ultra 的性能進一步提升,尤其在 AIME 2024、MATH-500 等數學推理任務和 LiveCodeBench 等編程競賽題上達到了 SOTA 水平。
綜合來看,盤古 Ultra 超越了包括 GPT-4o、Mistral-Large 2 等強大模型,與 DeepSeek-R1 等 MoE 模型競爭激烈。
同時,盤古 Ultra 在 Arena Hard、MMLU-pro 等涵蓋通用語言理解和推理的評測中也表現優異。
那么,為了實現這樣的效果,盤古 Ultra 采用了哪些關鍵技術呢?
“三明治”層歸一化架構如前文所述,盤古 Ultra 是一款 135B 參數量的密集模型,使用了 94 層的網絡結構。
盤古 Ultra 采用了分組查詢注意力(GQA)機制,包含 96 個查詢頭(query head)和 8 個鍵值頭(key-value head)。
為了解決訓練超深網絡面臨的不穩定性和收斂困難等問題,盤古 Ultra 在模型架構上做出了兩個關鍵改進 —— 深度縮放的 Sandwich-Norm 層歸一化和 TinyInit 參數初始化策略。
傳統的 Transformer 通常使用 Pre-LN 層歸一化,但在深度模型中,Pre-LN 容易導致每個子層輸出尺度的波動,引發訓練不穩定。
盤古 Ultra 使用的 Sandwich-Norm 層歸一化,則是在殘差連接前對每個子層的輸出做歸一化,并根據網絡深度對初始化值進行縮放,從而有效消除了訓練過程中的 loss 尖峰,使訓練過程更加平穩。
用更容易理解的話說,傳統方法僅在每個子層的輸入進行歸一化,但這種方法針對輸出也進行了歸一化,形成了 Pre-Norm + 子層 + Post-Norm 的“三明治”結構。
但是,僅僅使用 Sandwich-Norm 還不足以完全消除深度模型訓練中的不穩定性 —— 隨著網絡層數的增加,每一層的輸出尺度仍然可能出現累積性的漂移。
為此,盤古 Ultra 在 Sandwich-Norm 的基礎上,進一步引入了深度縮放機制,對 Post-Norm 中的放縮參數 γ 進行了深度相關的初始化。
至于整個模型的初始化,傳統的初始化通常采用的 Xavier 初始化方法僅考慮模型寬度,而盤古 Ultra 采用的 TinyInit 同時依據模型深度和寬度來縮放初始化權重的標準差。
這種初始化方式有助于在前向傳播和反向傳播過程中,維持各層梯度的方差在一個合理的范圍內,避免了梯度消失或爆炸問題,使得訓練過程更加穩定,同時也加速了收斂。
實驗表明,TinyInit 在深度模型訓練中取得了更好的收斂速度和下游任務性能;同時針對 embedding 層,保持權重的標準差接近 1 也能提升訓練穩定性。
另外,盤古團隊也針對 Tokenizer 進行了優化,通過在通用中英文、代碼、數學等不同領域分別進行詞頻統計,再合并去重,最終得到了一個兼顧領域覆蓋和編碼效率的 153376 個 token 的平衡詞表。
盤古 Ultra 的整個訓練流程主要分為三個階段 —— 預訓練、長上下文擴展和指令調優。
其中預訓練又可以分為三個子階段:
通用階段:側重建立語言理解和知識儲備,使用了大量中英文通用語料,覆蓋網頁、書籍、百科等多個來源;
推理階段:引入更多高質量的數學和代碼數據,以增強模型的推理能力。同時還使用 instruction 數據來幫助模型學習執行任務;
退火階段:幫助模型鞏固知識和推理能力,并強化指令遵循能力。大量使用問答對和人類反饋數據。
研究者們采用了基于規則和模型的數據清洗方法,并設計了 curriculum learning 策略,讓模型循序漸進地學習不同難度的樣本。
預訓練中使用了 AdamW 優化器,并動態調整超參數。
預訓練后,模型在最長 128K 的長上下文數據上進一步訓練,通過擴大 RoPE 的基頻來實現長序列建模,以增強處理長文檔的能力。
最后的指令調優階則段使用監督微調(SFT)和強化學習(RL)來使模型更好地適應下游任務,學會執行指令并與人類偏好對齊。
訓練設施方面,盤古 Ultra 使用了一個由 8192 個昇騰 AI 處理器組成的大規模計算集群。
集群中每個節點包含 8 個 NPU,通過華為高速緩存一致性互聯 HCCS 以全互聯的拓撲結構連接,每個 NPU 配備 64GB 內存,節點間則通過 200Gbps 的 RoCE(RDMA over Converged Ethernet)網絡互聯。
為了實現盤古 Ultra 的高效訓練,研究團隊還采用了一套系統的并行策略和優化技術。
在并行策略的選擇上,盤古 Ultra 綜合考慮了模型的規模、數據的特性以及硬件的拓撲,最終采用了數據并行、張量并行、序列并行和流水線并行等多種并行方式的組合:
128 路數據并行,將訓練數據分片到不同設備,保證了數據吞吐;
8 路張量并行,利用設備內部高帶寬切分層內張量,實現高效通信;
序列并行用于處理超長序列以降低顯存壓力;
8 段流水線并行,將不同層分布到不同設備,形成高效的計算流水線。
在并行策略的基礎上,盤古 Ultra 還從多個角度對訓練系統進行了深度優化。
一方面,通過使用 ZeRO(Zero Redundancy Optimizer)分布式優化器,將模型狀態分片到不同設備,大幅降低了單個設備的內存占用,在提高數據并行度的同時,確保了每個設備的內存負擔在可接受范圍內。
另一方面,研究者們通過各種通信和計算優化技術,最小化了通信開銷,提升了計算效率:
通過算子融合(Kernel Fusion)將多個小算子合并,減少了內存訪問和 kernel 啟動;
通過通信計算重疊(Communication-Computation Overlapping)實現通信和計算的深度交織,隱藏通信延遲;
MC^2(Merged Computation & Communication)和 BOA(Batch Optimization Accelerator)分別對張量并行和規范化層的通信進行了專門優化……
在算法、工程、數據各個層面的精細優化下,盤古 Ultra 實現了 52% 以上的算力利用率。
技術報告:
https://github.com/pangu-tech/pangu-ultra/blob/main/pangu-ultra-report.pdf
本文來自微信公眾號:量子位(ID:QbitAI),作者:克雷西,原標題《英偉達含量為零!華為密集模型性能比肩 DeepSeek-R1,純昇騰集群訓練》
本文鏈接:http://www.tebozhan.com/showinfo-45-12311-0.html英偉達含量為零:華為密集模型盤古 Ultra 性能比肩 DeepSeek-R1,純昇騰集群訓練
聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。郵件:2376512515@qq.com
上一篇: 我國首批人形機器人系列國家標準正式立項,涉環境感知、運動控制等技術要求
下一篇: 迅雷功能插件升級:一鍵完成大模型批量下載