首頁 科技週邊 人工智慧 英偉達玩轉剪枝、蒸餾:把Llama 3.1 8B參數減半,性能同尺寸更強

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

Aug 16, 2024 pm 04:42 PM
英偉達 工程

小模型崛起了。

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

Llama 3.1 被認為是引領了開源新時代。然而,新一代的模型雖然效能強大,但部署時仍需要大量運算資源。

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

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

英伟达玩转剪枝、蒸馏:把Llama 3.1 8B参数减半,性能同尺寸更强

                     

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

Llama-3.1-Minitron 4B 的表現優於類似大小的最先進的開源模型,包括 Minitron 4B、Phi-2 2.7B、Gemma2 2.6B 和 Qwen2-1.5B。

英伟达玩转剪枝、蒸馏:把Llama 3.1 8B参数减半,性能同尺寸更强

這項研究的相關論文早在上個月就已經放出了。

英伟达玩转剪枝、蒸馏:把Llama 3.1 8B参数减半,性能同尺寸更强
  • 論文連結:https://www.arxiv.org/pdf/2407.14679

  • 論文

    論文標題:Compact Language Models via Pruning and Knowledge Distillation

剪枝和蒸餾

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

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

蒸餾方式主要包括兩種:SDG 微調與經典知識蒸餾,兩種蒸餾方式互補。本文主要關注經典知識蒸餾方法。

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

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

2. 接著使用模型蒸餾進行了輕度再訓練,原始模型作為老師,剪枝後的模型作為學生。

3. 訓練結束後,以小模型(8B)為起點,剪枝和蒸餾為較小的 4B 模型。

英伟达玩转剪枝、蒸馏:把Llama 3.1 8B参数减半,性能同尺寸更强

                       

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

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

利用經典知識蒸餾進行再訓練

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

英伟达玩转剪枝、蒸馏:把Llama 3.1 8B参数减半,性能同尺寸更强

                        

剪枝和蒸餾最佳實踐

英偉達基於緊湊語言模型中剪枝和知識蒸餾的廣泛消融研究,將自己的學習成果總結為以下幾種結構化壓縮最佳實務。

一是調整大小。

  • 要訓練一組 LLM,先訓練最大的一個,然後迭代地剪枝和蒸餾以獲得較小的 LLM。

  • 如果使用多階段訓練策略來訓練最大的模型,最好剪枝並對訓練最後階段獲得的模型進行重新訓練。

  • 對最接近目標大小的可用來源模型進行剪枝。

二是剪枝。

  • 優先考慮寬度剪枝而不是深度剪枝,這對於 15B 參數規模以下的模型效果很好。

  • 使用單一樣本(single-shot)重要性估計,因為迭代重要性估計沒有任何好處。

三是重新訓練。

  • 僅使用蒸餾損失進行重新訓練,而不是常規訓練。

  • 當深度明顯減少時,使用 logit、中間狀態和嵌入蒸餾。

  • 當深度沒有明顯減少時,使用 logit-only 蒸餾。

Llama-3.1-Minitron:將最佳實踐付諸應用

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

憑藉Nemotron 蒸餾的經驗,英偉達著手將Llama 3.1 8B 模型蒸餾為更小、更有效率的4B 模型,採取以下措施:

  • 教師微調

  • 教師微調

    教師微調
  • 教師微調
  • Depth-only 剪枝
  • Width-only 剪枝
  • 準確率基準

準確率基準

效能基準

教師微調

為了修正模型訓練所基於的原始資料集的分佈偏差,英偉達首先在他們的資料集上(94B token)對未剪枝的8B 模型進行了微調。實驗表明,如果不糾正分佈偏差,教師模型在蒸餾時會為數據集提供次優指導。

英伟达玩转剪枝、蒸馏:把Llama 3.1 8B参数减半,性能同尺寸更强Depth-only 剪枝

為了從 8B 降到 4B,英偉達剪枝了 16 層(50%)。他們首先透過從模型中刪除每個層或連續子層組來評估它們的重要性,並觀察下游任務中 LM 損失的增加或準確率的降低。 下圖 5 顯示了刪除 1、2、8 或 16 層後驗證集上的 LM 損失值。例如,第 16 層的紅色圖表示如果刪除前 16 層,則出現 LM 損失。第 17 層表示如果保留第一層並刪除第 2 至第 17 層,也會出現 LM 損失。英偉達觀察到:開始和結束的層是最重要的。

                 英伟达玩转剪枝、蒸馏:把Llama 3.1 8B参数减半,性能同尺寸更强

然而,英偉達觀察到,這種 LM 損失不一定與下游表現直接相關。 下圖6 顯示了每個剪枝模型的Winogrande 準確率,它顯示最好刪除第16 到第31 層,其中第31 層是倒數第二層,剪枝模型的5-shot準確率明顯高於隨機準確率(0.5)。英偉達採納了這項見解,刪除了第 16 到第 31 層。

                        

  • Width-only 剪枝

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

  • 將 MLP 中間維從 14336 剪枝到 9216。

    將隱藏大小從 4096 剪枝到 3072。 重新訓練注意頭數量和層數。

值得一提的是,在單樣本剪枝之後,寬度剪枝的 LM 損失高於深度剪枝。然而,經過短暫的重新訓練後,趨勢發生了逆轉。

準確率基準

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

  • 峰值學習率= 1e-4

  • 最小學習率= 1e-5

  • 40 步線性預熱

  • 餘弦衰減計畫

  • 全域批次大小= 1152

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

英伟达玩转剪枝、蒸馏:把Llama 3.1 8B参数减半,性能同尺寸更强

                        

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

他們使用了Nemotron-4 340B 的訓練數據,在IFEval、MT-Bench、ChatRAG-Bench 和Berkeley Function Calling Leaderboard (BFCL) 上進行了評估,以測試指令遵循、角色扮演、RAG 和函數呼叫功能。最後確認 Llama-3.1-Minitron 4B 模型可以成為可靠的指令模型,其表現優於其他基準 SLM。

英伟达玩转剪枝、蒸馏:把Llama 3.1 8B参数减半,性能同尺寸更强

                       base

效能基準

英偉達利用NVIDIA TensorRT-LLM(一種用於最佳化LLM 推理的開源工具包)優化了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 上,較小的權重允許較大的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 倍。

英伟达玩转剪枝、蒸馏:把Llama 3.1 8B参数减半,性能同尺寸更强
英伟达玩转剪枝、蒸馏:把Llama 3.1 8B参数减半,性能同尺寸更强

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

結論

剪枝和經典知識提煉是一種非常經濟高效的方法,可以逐步獲得更小尺寸的LLM,與在所有領域從頭開始訓練相比,可實現更高的準確性。與合成資料式微調或從頭開始預訓練相比,這是一種更有效且資料效率更高的方法。

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

有關更多信息,請參閱以下資源:

  • https://arxiv.org/abs/2407.14679

  • https://github.com/NVlabs/Minitron
  • https://huggingface.co/nvidia/Llama-3.1-Minitron-4B-Width-Base
  • https://huggingface.co/nvidia/Llama-3.1-Minitron-4B-Depth-Base

參考鏈接:

https://developer.nvidia.com/blog/how-to-prune-and-distill-llama-3-1-8b-to-an-nvidia-llama-3 -1-minitron-4b-model/

以上是英偉達玩轉剪枝、蒸餾:把Llama 3.1 8B參數減半,性能同尺寸更強的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1655
14
CakePHP 教程
1413
52
Laravel 教程
1306
25
PHP教程
1252
29
C# 教程
1226
24
ControlNet作者又出爆款!一張圖生成繪畫全過程,兩天狂攬1.4k Star ControlNet作者又出爆款!一張圖生成繪畫全過程,兩天狂攬1.4k Star Jul 17, 2024 am 01:56 AM

同樣是圖生視頻,PaintsUndo走出了不一樣的路線。 ControlNet作者LvminZhang又開始整活了!這次瞄準繪畫領域。新項目PaintsUndo剛上線不久,就收穫1.4kstar(還在瘋狂漲)。項目地址:https://github.com/lllyasviel/Paints-UNDO透過這個項目,用戶輸入一張靜態圖像,PaintsUndo就能自動幫你生成整個繪畫的全過程視頻,從線稿到成品都有跡可循。繪製過程,線條變化多端甚是神奇,最終視頻結果和原始圖像非常相似:我們再來看一個完整的繪

英偉達對話模式ChatQA進化到2.0版本,上下文長度提到128K 英偉達對話模式ChatQA進化到2.0版本,上下文長度提到128K Jul 26, 2024 am 08:40 AM

開放LLM社群正是百花齊放、競相爭鳴的時代,你能看到Llama-3-70B-Instruct、QWen2-72B-Instruct、Nemotron-4-340B-Instruct、Mixtral-8x22BInstruct-v0.1等許多表現優良的模型。但是,相較於以GPT-4-Turbo為代表的專有大模型,開放模型在許多領域仍有明顯差距。在通用模型之外,也有一些專精關鍵領域的開放模型已被開發出來,例如用於程式設計和數學的DeepSeek-Coder-V2、用於視覺-語言任務的InternVL

登頂開源AI軟體工程師榜首,UIUC無Agent方案輕鬆解決SWE-bench真實程式設計問題 登頂開源AI軟體工程師榜首,UIUC無Agent方案輕鬆解決SWE-bench真實程式設計問題 Jul 17, 2024 pm 10:02 PM

AIxiv專欄是本站發布學術、技術內容的欄位。過去數年,本站AIxiv專欄接收通報了2,000多篇內容,涵蓋全球各大專院校與企業的頂尖實驗室,有效促進了學術交流與傳播。如果您有優秀的工作想要分享,歡迎投稿或聯絡報道。投稿信箱:liyazhou@jiqizhixin.com;zhaoyunfeng@jiqizhixin.com這篇論文的作者皆來自伊利諾大學香檳分校(UIUC)張令明老師團隊,包括:StevenXia,四年級博士生,研究方向是基於AI大模型的自動代碼修復;鄧茵琳,四年級博士生,研究方

OpenAI超級對齊團隊遺作:兩個大模型博弈一番,輸出更好懂了 OpenAI超級對齊團隊遺作:兩個大模型博弈一番,輸出更好懂了 Jul 19, 2024 am 01:29 AM

如果AI模型給的答案一點也看不懂,你敢用嗎?隨著機器學習系統在更重要的領域中得到應用,證明為什麼我們可以信任它們的輸出,並明確何時不應信任它們,變得越來越重要。獲得對複雜系統輸出結果信任的一個可行方法是,要求系統對其輸出產生一種解釋,這種解釋對人類或另一個受信任的系統來說是可讀的,即可以完全理解以至於任何可能的錯誤都可以被發現。例如,為了建立對司法系統的信任,我們要求法院提供清晰易讀的書面意見,解釋並支持其決策。對於大型語言模型來說,我們也可以採用類似的方法。不過,在採用這種方法時,確保語言模型生

arXiv論文可以發「彈幕」了,史丹佛alphaXiv討論平台上線,LeCun按讚 arXiv論文可以發「彈幕」了,史丹佛alphaXiv討論平台上線,LeCun按讚 Aug 01, 2024 pm 05:18 PM

乾杯!當論文討論細緻到詞句,是什麼體驗?最近,史丹佛大學的學生針對arXiv論文創建了一個開放討論論壇——alphaXiv,可以直接在任何arXiv論文之上發布問題和評論。網站連結:https://alphaxiv.org/其實不需要專門訪問這個網站,只需將任何URL中的arXiv更改為alphaXiv就可以直接在alphaXiv論壇上打開相應論文:可以精準定位到論文中的段落、句子:右側討論區,使用者可以發表問題詢問作者論文想法、細節,例如:也可以針對論文內容發表評論,例如:「給出至

黎曼猜想显著突破!陶哲轩强推MIT、牛津新论文,37岁菲尔兹奖得主参与 黎曼猜想显著突破!陶哲轩强推MIT、牛津新论文,37岁菲尔兹奖得主参与 Aug 05, 2024 pm 03:32 PM

最近,被稱為千禧年七大難題之一的黎曼猜想迎來了新突破。黎曼猜想是數學中一個非常重要的未解決問題,與素數分佈的精確性質有關(素數是那些只能被1和自身整除的數字,它們在數論中扮演著基礎性的角色)。在當今的數學文獻中,已有超過一千個數學命題以黎曼猜想(或其推廣形式)的成立為前提。也就是說,黎曼猜想及其推廣形式一旦被證明,這一千多個命題將被確立為定理,對數學領域產生深遠的影響;而如果黎曼猜想被證明是錯誤的,那麼這些命題中的一部分也將隨之失去其有效性。新的突破來自MIT數學教授LarryGuth和牛津大學

首個基於Mamba的MLLM來了!模型權重、訓練程式碼等已全部開源 首個基於Mamba的MLLM來了!模型權重、訓練程式碼等已全部開源 Jul 17, 2024 am 02:46 AM

AIxiv专栏是本站发布学术、技术内容的栏目。过去数年,本站AIxiv专栏接收报道了2000多篇内容,覆盖全球各大高校与企业的顶级实验室,有效促进了学术交流与传播。如果您有优秀的工作想要分享,欢迎投稿或者联系报道。投稿邮箱:liyazhou@jiqizhixin.com;zhaoyunfeng@jiqizhixin.com。引言近年来,多模态大型语言模型(MLLM)在各个领域的应用取得了显著的成功。然而,作为许多下游任务的基础模型,当前的MLLM由众所周知的Transformer网络构成,这种网

公理訓練讓LLM學會因果推理:6700萬參數模型比肩萬億參數級GPT-4 公理訓練讓LLM學會因果推理:6700萬參數模型比肩萬億參數級GPT-4 Jul 17, 2024 am 10:14 AM

把因果鏈展示給LLM,它就能學會公理。 AI已經在幫助數學家和科學家做研究了,例如著名數學家陶哲軒就曾多次分享自己借助GPT等AI工具研究探索的經驗。 AI要在這些領域大戰拳腳,強大可靠的因果推理能力是不可或缺的。本文要介紹的研究發現:在小圖譜的因果傳遞性公理演示上訓練的Transformer模型可以泛化用於大圖譜的傳遞性公理。也就是說,如果讓Transformer學會執行簡單的因果推理,就可能用於更複雜的因果推理。該團隊提出的公理訓練框架是一種基於被動資料來學習因果推理的新範式,只有演示

See all articles