偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

英偉達玩轉(zhuǎn)剪枝、蒸餾:把Llama 3.1 8B參數(shù)減半,性能同尺寸更強

人工智能 新聞
最近,英偉達研究表明,結(jié)構(gòu)化權(quán)重剪枝與知識蒸餾相結(jié)合,可以從初始較大的模型中逐步獲得較小的語言模型。

上個月,Meta 發(fā)布了 Llama 3.1 系列模型,其中包括 Meta 迄今為止最大的 405B 模型,以及兩個較小的模型,參數(shù)量分別為 700 億和 80 億。

Llama 3.1 被認為是引領(lǐng)了開源新時代。然而,新一代的模型雖然性能強大,但部署時仍需要大量計算資源。

因此,業(yè)界出現(xiàn)了另一種趨勢,即開發(fā)小型語言模型 (SLM),這種模型在許多語言任務(wù)中表現(xiàn)足夠出色,部署起來也非常便宜。

最近,英偉達研究表明,結(jié)構(gòu)化權(quán)重剪枝與知識蒸餾相結(jié)合,可以從初始較大的模型中逐步獲得較小的語言模型。

圖片

圖靈獎得主、Meta 首席 AI 科學(xué)家 Yann LeCun 也點贊轉(zhuǎn)帖了該研究。

經(jīng)過剪枝和蒸餾,英偉達研究團隊將 Llama 3.1 8B 提煉為 Llama-3.1-Minitron 4B 開源了出來。這是英偉達在 Llama 3.1 開源系列中的第一個作品。

Llama-3.1-Minitron 4B 的表現(xiàn)優(yōu)于類似大小的最先進的開源模型,包括 Minitron 4B、Phi-2 2.7B、Gemma2 2.6B 和 Qwen2-1.5B。

圖片

這項研究的相關(guān)論文早在上個月已經(jīng)放出了。

圖片


  • 論文鏈接:https://www.arxiv.org/pdf/2407.14679
  • 論文標題:Compact Language Models via Pruning and Knowledge Distillation

剪枝和蒸餾

剪枝使模型變得更小、更精簡,可以通過刪除層(深度剪枝)或刪除神經(jīng)元和注意力頭以及嵌入通道(寬度剪枝)來實現(xiàn)。剪枝通常伴隨著一定程度的再訓(xùn)練,以恢復(fù)準確率。

模型蒸餾是一種將知識從大型復(fù)雜模型(通常稱為教師模型)遷移到較小、較簡單的學(xué)生模型的技術(shù)。目標是創(chuàng)建一個更高效的模型,該模型保留了原始較大模型的大部分預(yù)測能力,同時運行速度更快且資源消耗更少。

蒸餾方式主要包括兩種:SDG 微調(diào)與經(jīng)典知識蒸餾,這兩種蒸餾方式互補。本文主要關(guān)注經(jīng)典知識蒸餾方法。

英偉達采用將剪枝與經(jīng)典知識蒸餾相結(jié)合的方式來構(gòu)造大模型,下圖展示了單個模型的剪枝和蒸餾過程(上)以及模型剪枝和蒸餾的鏈條(下)。具體過程如下:

1. 英偉達從 15B 模型開始,評估每個組件(層、神經(jīng)元、頭和嵌入通道)的重要性,然后對模型進行排序和剪枝,使其達到目標大?。?B 模型。

2. 接著使用模型蒸餾進行了輕度再訓(xùn)練,原始模型作為老師,剪枝后的模型作為學(xué)生。

3. 訓(xùn)練結(jié)束后,以小模型(8B)為起點,剪枝和蒸餾為更小的 4B 模型。

圖片

從 15B 模型進行剪枝與蒸餾的過程。

需要注意的點是,在對模型剪枝之前,需要先了解模型的哪部分是重要的。英偉達提出了一種基于激活的純重要性評估策略,該策略可以同時計算所有相關(guān)維度(深度、神經(jīng)元、頭和嵌入通道)的信息,使用一個包含 1024 個樣本的小型校準數(shù)據(jù)集,并且只需要前向傳播。這種方法相比依賴梯度信息并需要反向傳播的策略更加簡單且具有成本效益。 

在剪枝過程中,你可以針對給定軸或軸組合在剪枝和重要性估計之間進行迭代交替。實證研究顯示,使用單次重要性估計就足夠了,迭代估計不會帶來額外的好處。

利用經(jīng)典知識蒸餾進行重新訓(xùn)練

下圖 2 展示了蒸餾過程,其中 N 層學(xué)生模型(剪枝后的模型)是從 M 層教師模型中(原始未剪枝模型)蒸餾而來。學(xué)生模型通過最小化嵌入輸出損失、logit 損失以及映射到學(xué)生塊 S 和教師塊 T 的 Transformer 編碼器特定損失組合來學(xué)習(xí)。

圖片

圖 2:蒸餾訓(xùn)練損失。

剪枝和蒸餾最佳實踐

英偉達基于緊湊語言模型中剪枝和知識蒸餾的廣泛消融研究,將自己的學(xué)習(xí)成果總結(jié)為以下幾種結(jié)構(gòu)化壓縮最佳實踐。

一是調(diào)整大小。

  • 要訓(xùn)練一組 LLM,首先訓(xùn)練最大的一個,然后迭代地剪枝和蒸餾以獲得較小的 LLM。
  • 如果使用多階段訓(xùn)練策略來訓(xùn)練最大的模型,最好剪枝并對訓(xùn)練最后階段獲得的模型進行重新訓(xùn)練。
  • 對最接近目標大小的可用源模型進行剪枝。

二是剪枝。

  • 優(yōu)先考慮寬度剪枝而不是深度剪枝,這對于 15B 參數(shù)規(guī)模以下的模型效果很好。
  • 使用單樣本(single-shot)重要性估計,因為迭代重要性估計沒有任何好處。

三是重新訓(xùn)練。

  • 僅使用蒸餾損失進行重新訓(xùn)練,而不是常規(guī)訓(xùn)練。
  • 當(dāng)深度明顯減少時,使用 logit、中間狀態(tài)和嵌入蒸餾。
  • 當(dāng)深度沒有明顯減少時,使用 logit-only 蒸餾。

Llama-3.1-Minitron:將最佳實踐付諸應(yīng)用

Meta 最近推出了功能強大的 Llama 3.1 開源模型系列,在許多基準測試中可與閉源模型相媲美。Llama 3.1 的參數(shù)范圍從巨大的 405B 到 70B、8B。

憑借 Nemotron 蒸餾的經(jīng)驗,英偉達著手將 Llama 3.1 8B 模型蒸餾為更小、更高效的 4B 模型,采取以下措施:

  • 教師微調(diào)
  • Depth-only 剪枝
  • Width-only 剪枝
  • 準確率基準
  • 性能基準

教師微調(diào)

為了糾正模型訓(xùn)練所基于的原始數(shù)據(jù)集的分布偏差,英偉達首先在他們的數(shù)據(jù)集上(94B token)對未剪枝的 8B 模型進行了微調(diào)。實驗表明,如果不糾正分布偏差,教師模型在蒸餾時會為數(shù)據(jù)集提供次優(yōu)指導(dǎo)。

Depth-only 剪枝

為了從 8B 降到 4B,英偉達剪枝了 16 層(50%)。他們首先通過從模型中刪除每個層或連續(xù)子層組來評估它們的重要性,并觀察下游任務(wù)中 LM 損失的增加或準確率的降低。

下圖 5 顯示了刪除 1、2、8 或 16 層后驗證集上的 LM 損失值。例如,第 16 層的紅色圖表示如果刪除前 16 層,則出現(xiàn) LM 損失。第 17 層表示如果保留第一層并刪除第 2 至第 17 層,也出現(xiàn) LM 損失。英偉達觀察到:開始和結(jié)束的層是最重要的。

圖片

圖 5:depth-only 剪枝中層的重要性。

然而,英偉達觀察到,這種 LM 損失不一定與下游性能直接相關(guān)。

下圖 6 顯示了每個剪枝模型的 Winogrande 準確率,它表明最好刪除第 16 到第 31 層,其中第 31 層是倒數(shù)第二層,剪枝模型的 5-shot 準確率明顯高于隨機準確率 (0.5)。英偉達采納了這一見解,刪除了第 16 到第 31 層。

圖片

圖 6:當(dāng)刪除 16 層時,在 Winogrande 任務(wù)上的準確率。

Width-only 剪枝

英偉達沿寬度軸剪枝了嵌入(隱藏)和 MLP 中間維,以壓縮 Llama 3.1 8B。具體來說,他們使用前面描述的基于激活的策略來計算每個注意頭、嵌入通道和 MLP 隱藏維度的重要性分數(shù)。

在重要性估計之后,英偉達選擇

  • 將 MLP 中間維從 14336 剪枝到 9216。
  • 將隱藏大小從 4096 剪枝到 3072。
  • 重新訓(xùn)練注意頭數(shù)量和層數(shù)。

值得一提的是,在單樣本剪枝之后,寬度剪枝的 LM 損失高于深度剪枝。然而,經(jīng)過短暫的重新訓(xùn)練后,趨勢發(fā)生了逆轉(zhuǎn)。

準確率基準

英偉達使用以下參數(shù)對模型進行蒸餾

  • 峰值學(xué)習(xí)率 = 1e-4
  • 最小學(xué)習(xí)率 = 1e-5
  • 40 步線性預(yù)熱
  • 余弦衰減計劃
  • 全局批量大小 = 1152

下表 1 顯示了 Llama-3.1-Minitron 4B 模型變體(寬度剪枝和深度剪枝)與原始 Llama 3.1 8B 模型、其他類似大小的模型在跨多個領(lǐng)域的基準測試中的性能比較??傮w而言,英偉達再次證實了寬度剪枝策略相較于遵循最佳實踐的深度剪枝的有效性。

圖片

表 1:Minitron 4B base 模型相較于類似規(guī)模 base 模型的準確率比較。

為了驗證蒸餾后的模型是否可以成為強大的指令模型,英偉達使用 NeMo-Aligner 對 Llama-3.1-Minitron 4B 模型進行了微調(diào)。

他們使用了 Nemotron-4 340B 的訓(xùn)練數(shù)據(jù),在 IFEval、MT-Bench、ChatRAG-Bench 和 Berkeley Function Calling Leaderboard (BFCL) 上進行了評估,以測試指令遵循、角色扮演、RAG 和函數(shù)調(diào)用功能。最后確認 Llama-3.1-Minitron 4B 模型可以成為可靠的指令模型,其表現(xiàn)優(yōu)于其他基線 SLM。

圖片

表 2:對齊 Minitron 4B base 模型與類似規(guī)模的對齊模型的準確率比較。

性能基準

英偉達利用 NVIDIA TensorRT-LLM(一種用于優(yōu)化 LLM 推理的開源工具包)優(yōu)化了 Llama 3.1 8B 和 Llama-3.1-Minitron 4B 模型。

下兩張圖顯示了不同模型在不同用例下以 FP8 和 FP16 精度每秒的吞吐量請求,表示為 8B 模型的 batch size 為 32 的輸入序列長度 / 輸出序列長度 (ISL/OSL) 組合以及 4B 模型的 batch size 為 64 的輸入序列長度 / 輸出序列長度 (ISL/OSL) 組合,這要歸功于在一塊英偉達 H100 80GB GPU 上,較小的權(quán)重允許較大的 batch size。

Llama-3.1-Minitron-4B-Depth-Base 變體是最快的,平均吞吐量約為 Llama 3.1 8B 的 2.7 倍,而 Llama-3.1-Minitron-4B-Width-Base 變體的平均吞吐量約為 Llama 3.1 8B 的 1.8 倍。與 BF16 相比,在 FP8 中部署還可使這三種型號的性能提高約 1.3 倍。

圖片

圖 8:組合:Llama 3.1 8B 為 BS=32,Llama-3.1-Minitron 4B 型號為 BS=64。1x H100 80GB GPU。

結(jié)論

剪枝和經(jīng)典知識提煉是一種非常經(jīng)濟高效的方法,可以逐步獲得更小尺寸的 LLM,與在所有領(lǐng)域從頭開始訓(xùn)練相比,可實現(xiàn)更高的準確性。與合成數(shù)據(jù)式微調(diào)或從頭開始預(yù)訓(xùn)練相比,這是一種更有效且數(shù)據(jù)效率更高的方法。

Llama-3.1-Minitron 4B 是英偉達首次嘗試使用最先進的開源 Llama 3.1 系列完成的探索。要在 NVIDIA NeMo 中使用 Llama-3.1 的 SDG 微調(diào),可參閱 GitHub 上的 /sdg-law-title-generation 部分。

責(zé)任編輯:張燕妮 來源: 機器之心
相關(guān)推薦

2025-04-23 15:25:27

語言模型Eagle 2.5英偉達

2025-02-17 12:30:00

2024-07-22 07:50:00

模型英偉達

2024-07-02 01:09:02

2024-07-29 07:46:00

英偉達模型

2024-12-19 07:10:00

2024-08-15 15:45:00

AI訓(xùn)練

2025-03-25 12:49:25

2024-04-19 10:32:08

2021-12-06 09:35:38

英偉達人工智能軟件

2025-05-27 15:19:52

GPUMetaGPT-4o

2024-07-29 13:38:06

2024-07-23 09:20:35

2024-05-27 09:16:37

2024-11-25 08:10:00

2024-04-19 08:01:01

Llama 3 8BMeta

2024-04-30 08:28:44

開源大模型Llama

2024-10-17 18:52:41

2024-06-17 08:55:00

2024-09-13 09:14:32

點贊
收藏

51CTO技術(shù)棧公眾號