衡阳派盒市场营销有限公司

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

揭示大模型剪枝技術的原理與發展

AI科技大本營 ? 來源:AI科技大本營 ? 2024-11-19 16:25 ? 次閱讀

當你聽到「剪枝」二字,或許會聯想到園丁修整枝葉的情景。而在 AI 大模型領域,這個詞有著特殊的含義 —— 它是一種通過“精簡”來提升大模型效率的關鍵技術。隨著 GPT、LLaMA 等大模型規模的持續膨脹,如何在保持性能的同時降低資源消耗,已成為亟待解決的難題。本文將揭示大模型剪枝技術的原理與發展,帶你一次性讀懂剪枝。

隨著人工智能的快速發展,大模型以其卓越的性能在眾多領域中占據了重要地位。然而,大模型驚人的參數規模也帶來了一系列挑戰,如高昂的訓練成本、巨大的存儲需求和推理時的計算負擔。為了解決這些問題,大模型剪枝技術應運而生,成為壓縮大模型的關鍵手段。本文將簡要介紹大模型剪枝技術的背景及原理、代表性方法和研究進展。

背景及原理

當今大模型的“身軀”越來越龐大,對資源的需求也日益增加。如 LLaMA 3.1,且不說其訓練算力高達 24000塊 H100,訓練數據量高達 15T tokens(Qwen 2.5 在 18T tokens 的數據集上進行了預訓練,成為目前訓練數據最多的開源大模型),單看表 1 和表 2 中 LLaMA 3.1 在推理和微調時的內存需求,對普通用戶而言就是難以承受之重。這些龐大的需求不僅對硬件資源提出了極高的要求,也限制了模型的可擴展性和實用性。大模型剪枝技術通過減少模型中的參數數量,旨在降低這些需求,同時盡量保持模型的性能。

5a0fcf86-9dbb-11ef-93f3-92fbcf53809c.png

表 1 LLaMA 3.1 推理內存需求(不包括 KV 緩存)

5a319562-9dbb-11ef-93f3-92fbcf53809c.png

表 2 LLaMA 3.1 微調內存需求

剪枝“流派”的開山鼻祖是圖靈獎得主、深度學習“三巨頭”之一 Yann LeCun,他在 1989 年 NeurIPS 會議上發表的《Optimal Brain Damage》[1]是第一篇剪枝工作。后來剪枝“流派”逐漸開枝散葉,如今可主要分為兩大類:非結構化剪枝和結構化剪枝。非結構化剪枝通過移除單個權重或神經元得到稀疏權重矩陣,這種方法易于實現且性能指標較高,但需要專門的硬件或軟件支持來加速模型;結構化剪枝通過去除基于特定規則的連接來實現,如層級剪枝、塊級剪枝等,這種方法不需要專門的軟硬件支持,但算法更為復雜。

兩類剪枝方法在大模型上都有很多的嘗試和應用,但考慮到通用性,我們主要關注結構化剪枝,本文的第二部分也將主要介紹 LLM 結構化剪枝的經典文章 LLM-Pruner。

下面談一談剪枝的理論基礎。首先,所謂的理論基礎只是暫時的,在一個高速發展的學科中,很難確保今天的理論不會被明天的實驗推翻。在傳統上,人們一直認為剪枝的基礎是 DNN 的過參數化,即深度神經網絡參數比擬合訓練數據所需參數更多,可以剪去一部分以降低網絡復雜度而盡量不影響其性能。 在 2019 年,有學者提出了彩票假設(ICLR 2019 best paper)[2]:一個隨機初始化的神經網絡里包括一個子網絡,當該子網絡被單獨訓練時,能在最多相同迭代次數后達到原始網絡訓練后的性能——就好比一堆彩票中存在一個中獎子集,只要買了這個子集就能獲得最大收益。 隨后,又有學者在《What’sHiddenin a Randomly Weighted Neural Network?》中提出了“近似加強版”彩票假設(CVPR 2020)[3]:在一個隨機權重的足夠過參數化的神經網絡中,存在一個子網絡,無需訓練,其性能與相同參數量訓練過的網絡相當。 再隨后,又有學者聲稱自己證明了這個“近似加強版”的彩票假設,并在標題里宣稱 Pruning is all you need(ICML 2020)[4]。也就是說,如圖 1 所示,以后不需要訓練了,我們只用找一個足夠大的網絡,剪啊剪啊就能得到一個性能很好的子網絡。這個說法如果成立當然是極好的,因為基于梯度的優化算法訓練時間長,且是次優的,但問題在于缺乏有效的純剪枝算法,所以目前剪枝的基本流程還是:訓練、剪枝、微調。另外,作者是用二值小網絡+推廣證明的,太過理想化,而且沒有考慮非線性的情況。近年來,雖然彩票假設及其衍生理論在一些研究領域取得了進展,例如圖中獎彩票(KDD 2023)[5]和對偶彩票假設(ICLR 2022)[6],但在大模型領域,我們尚未觀察到具有顯著影響力的研究工作。

5a3a0e54-9dbb-11ef-93f3-92fbcf53809c.png

圖 1 LLaMA 3.1 微調內存需求

代表性方法:LLM-Pruner

本節將以首個針對大模型的結構化剪枝框架——LLM-Pruner(NeurIPS 2023)[7]為例,介紹大模型剪枝的基本流程。該框架特點為任務無關的壓縮、數據需求量少、快速和全自動操作,主要包括以下三個步驟:(1)分組階段

本階段的主要工作是根據依賴性準則,將 LLM 中互相依賴的神經元劃分為一組。依賴性準則為:若 i 是 j 的唯一前驅,則 j 依賴于 i;若 j 是 i 的唯一后繼,則 i 依賴于 j。在具體操作中,需要分別將網絡中每個神經元作為初始節點,依賴關系沿方向傳導,傳導過程中遍歷的神經元為一組,一組需同時剪枝。以圖 2 中 Group Type B(即 MHA,多頭注意力)為例,從 Head 1 開始傳導,Head 1 是上面兩個虛線圈神經元的唯一前驅,是下面六個虛線圈神經元的唯一后繼,它們都依賴于 Head 1,故被劃分為一組。

5a5620b2-9dbb-11ef-93f3-92fbcf53809c.png

圖 2 LLaMA 中耦合結構的簡化示例 (2)評估階段

本階段的主要工作是根據重要性準則評估每個組對模型整體性能的貢獻,貢獻小的組將被修剪。常見的重要性準則有:L1 范數(向量中各元素絕對值之和)、L2 范數(向量中各元素平方和的開平方)、損失函數的 Taylor 展開一階項、損失函數的 Taylor 展開二階項等。LLM-Pruner 采用損失函數的 Taylor 展開來計算重要性,并提出了兩條計算組重要性的路徑:權重向量級別和單個參數級別。

權重向量級別的重要性公式如下所示, 代表每個神經元的權重向量,H 是 Hessian 矩陣, 表示 next-token prediction loss。一般來說由于模型在訓練數據集上已經收斂,即 , 所以一階項通常為 0 。然而,由于 LLM-Pruner 所用數據集 D 并不是原始訓練數據,故 。同時,由于 Hessian 矩陣的計算復雜度過高, 所以只計算了一階項。

5a709046-9dbb-11ef-93f3-92fbcf53809c.png

單個參數級別的重要性公式如下所示, 內的每個參數都被獨立地評估其重要性,其中 Hessian 矩陣用 Fisher 信息矩陣進行了近似。在 LLM-Pruner 的源碼中,這兩個公式被如圖 3 所示的代碼片段表示。

5a7a4cd0-9dbb-11ef-93f3-92fbcf53809c.png

5a7f26b0-9dbb-11ef-93f3-92fbcf53809c.png

圖 3 評估重要性的源碼

最后,通過對每組內權重向量或參數的重要性進行累加/累乘/取最大值/取最后一層值,就得到了每組的重要性,再按剪枝率剪去重要性低的組即可。

(3)微調階段

本階段的主要工作是使用LoRA微調模型中每個可學習的參數矩陣W,以減輕剪枝帶來的性能損失。LoRA的公式為W+?W=W+BA,其具體步驟如圖4所示:

① 在模型的特定層中用 Wd×k+ΔWd×k 替換原有的權重矩陣 Wd×k,并把矩陣 ?Wd×k 分解成降維矩陣 Ad×r 和升維矩陣 Br×k,r << min(d, k)。

② 將 A 隨機高斯初始化,B 置為 0,凍結預訓練模型的參數 W,只訓練矩陣 A 和矩陣 B。

③ 訓練完成后,將 B 矩陣與 A 矩陣相乘再與矩陣 W 相加,作為微調后的模型參數。

5a8d861a-9dbb-11ef-93f3-92fbcf53809c.png

圖 4LoRA基本步驟

根據表 3 的實驗結果,剪枝 20% 后,模型的性能為原模型的 89.8%,經過 LoRA 微調后,性能可提升至原模型的 94.97%。在大多數數據集上,剪枝后的 5.4B LLaMA 甚至優于 ChatGLM-6B,所以如果需要一個具有定制尺寸的更小的模型,理論上用 LLM-Pruner 剪枝一個比再訓練一個成本更低效果更好。

然而,根據表 4 的數據顯示,剪枝 50% 后模型表現并不理想,LoRA 微調后綜合指標也僅為原模型 77.44%,性能下降幅度較大。如何進行高剪枝率的大模型結構化剪枝,仍是一個具有挑戰性的問題。

5a9b6564-9dbb-11ef-93f3-92fbcf53809c.png

表 3LLaMA-7B 剪枝 20% 前后性能對比

5ad3c454-9dbb-11ef-93f3-92fbcf53809c.png

表 4LLaMA-7B 剪枝 50% 前后性能對比

研究進展

大模型剪枝技術已經成為近兩年的研究熱點,無論是在工業界還是學術界,都有許多研究人員投身于這一領域——這一點從表 5 和表 6 中可以明顯看出,而表格中列出的論文只是眾多大模型剪枝研究工作中的一小部分。除此之外,還有學者提出了介于結構化剪枝和非結構化剪枝之間的半結構化剪枝,如 Nvidia 的 N:M 稀疏化,就是每 M 個連續元素留下 N 個非零元素,但與前兩者相比目前相關探索較少。隨著研究的不斷深入和技術的持續進步,我們有理由相信,剪枝將繼續在大模型領域扮演重要的角色,并推動大模型技術的創新和發展。

5af5ef98-9dbb-11ef-93f3-92fbcf53809c.png

表5大模型非結構化剪枝

5b128d24-9dbb-11ef-93f3-92fbcf53809c.png

表6大模型結構化剪枝

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 人工智能
    +關注

    關注

    1796

    文章

    47681

    瀏覽量

    240298
  • 大模型
    +關注

    關注

    2

    文章

    2550

    瀏覽量

    3169

原文標題:一文讀懂剪枝(Pruner):大模型也需要“減減肥”?

文章出處:【微信號:AI科技大本營,微信公眾號:AI科技大本營】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    【「基于大模型的RAG應用開發與優化」閱讀體驗】+大模型微調技術解讀

    今天學習<基于大模型的RAG應用開發與優化>這本書。大模型微調是深度學習領域中的一項關鍵技術,它指的是在已經預訓練好的大型深度學習模型基礎上,使用新的、特定任務相關的數據
    發表于 01-14 16:51

    【「大模型啟示錄」閱讀體驗】對大模型更深入的認知

    內容讓我對大模型技術發展有了更全面的認識。我意識到,大模型不僅僅是一些算法和代碼的堆砌,它們背后有著深刻的科技變革和產業競爭。 書中對大模型
    發表于 12-20 15:46

    AI模型部署邊緣設備的奇妙之旅:如何實現手寫數字識別

    。這些技術旨在減少模型的大小、降低計算復雜度,并提高推理速度,同時盡量保持或最小化對模型準確性的負面影響。以下是三種常見的模型優化技術
    發表于 12-06 17:20

    車載大模型分析揭示:存儲帶寬對性能影響遠超算力

    車載大模型的定義尚無,傳統大模型即LLM的參數一般在70億至2000億之間,而早期的CNN模型參數通常不到1000萬,CNN模型目前大多做骨干網使用,參數飛速增加。特斯拉使用META的
    的頭像 發表于 11-09 10:36 ?683次閱讀
    車載大<b class='flag-5'>模型</b>分析<b class='flag-5'>揭示</b>:存儲帶寬對性能影響遠超算力

    未來AI大模型發展趨勢

    未來AI大模型發展趨勢將呈現多元化和深入化的特點,以下是對其發展趨勢的分析: 一、技術驅動與創新 算法與架構優化 : 隨著Transformer架構的廣泛應用,AI大
    的頭像 發表于 10-23 15:06 ?853次閱讀

    AI大模型的性能優化方法

    (學生模型)來模仿大型模型(教師模型)的輸出。學生模型通過學習教師模型的“軟標簽”(即概率分布信息),從而獲得與教師
    的頭像 發表于 10-23 15:01 ?1022次閱讀

    利用阿秒脈沖揭示光電效應新信息

    研究示意圖 來自美國能源部斯坦福國家加速器(SLAC)實驗室的科學家,借助阿秒脈沖揭示了光電效應的新信息:光電發射延遲時間長達700阿秒,遠超此前預期。最新研究挑戰了現有理論模型,有助更深入揭示電子
    的頭像 發表于 09-26 10:00 ?257次閱讀
    利用阿秒脈沖<b class='flag-5'>揭示</b>光電效應新信息

    AI大模型發展歷程和應用前景

    隨著人工智能技術的飛速發展,AI大模型逐漸成為研究與應用領域的熱點。AI大模型,顧名思義,是指具有巨大參數量的深度學習模型,這些
    的頭像 發表于 07-03 18:20 ?1403次閱讀

    模型技術及趨勢總結

    本篇文章旨在希望大家對大模型的本質、技術發展趨勢有簡單的了解。由于近期大模型技術發展很快,這里對大模型
    的頭像 發表于 06-21 17:38 ?729次閱讀
    大<b class='flag-5'>模型</b><b class='flag-5'>技術</b>及趨勢總結

    【大語言模型:原理與工程實踐】大語言模型的應用

    的創造力進行結合,從而創造出更加豐富多樣的內容。隨著技術的不斷發展,自動提示生成技術有望逐漸成熟。這將使大語言模型變得更加自主,能夠自行構建和改進提示詞以達到理想的結果。這將極大地提高
    發表于 05-07 17:21

    【大語言模型:原理與工程實踐】大語言模型的基礎技術

    全面剖析大語言模型的核心技術與基礎知識。首先,概述自然語言的基本表示,這是理解大語言模型技術的前提。接著,詳細介紹自然語言處理預訓練的經典結構Transformer,以及其工作原理,
    發表于 05-05 12:17

    【大語言模型:原理與工程實踐】核心技術綜述

    中應用,需要考慮到性能、可擴展性和安全性等因素。 大語言模型正在快速發展,新技術不斷涌現。未來的研究可能集中在提高模型效率、理解和可解釋性以及確保
    發表于 05-05 10:56

    【大語言模型:原理與工程實踐】揭開大語言模型的面紗

    化能力和適應性。在自然語言處理任務中,大語言模型展現出卓越的語言理解和生成能力。此外,大語言模型還能在創新和探索中發揮作用,推動科學和技術發展。總之,大語言
    發表于 05-04 23:55

    【大語言模型:原理與工程實踐】探索《大語言模型原理與工程實踐》

    的未來發展方向進行了展望,包括跨領域、跨模態和自動提示生成能力方向,為讀者提供了對未來技術發展的深刻見解。《大語言模型原理與工程實踐》是一本內容豐富、深入淺出的技術書籍。它不僅為讀者提
    發表于 04-30 15:35

    張宏江深度解析:大模型技術發展的八大觀察點

    在大模型發展史上,Scaling Law(規模律)發揮了核心作用,它是推動模型性能持續提升的主要動力。Scaling Law揭示了這樣一個現象:較小的語言
    發表于 03-14 10:41 ?273次閱讀
    張宏江深度解析:大<b class='flag-5'>模型</b><b class='flag-5'>技術發展</b>的八大觀察點
    上市百家乐评论| 赌百家乐可以赢钱| 娱乐百家乐官网下载| 百家乐官网网上赌局| 百家乐官网大小是什么| 大发888开户注册平台| 百家乐技巧开户| 百家乐园鼎丰娱乐城| 百家乐游戏平台排名| 四方百家乐官网的玩法技巧和规则| 娱乐城百家乐官网技巧| 土默特左旗| 丰禾线上娱乐| 娱乐城注册送钱| 大发888m摩卡游戏 | 百家乐官网投注信用最好的 | 百家乐官网下注技术| 昭通市| 百家乐麻将筹码币镭射贴膜| 百家乐娱乐真人娱乐| 百家乐游戏机论坛| 视频百家乐破解| 百家乐投注限额| 新濠峰百家乐官网的玩法技巧和规则 | 姚记百家乐官网的玩法技巧和规则| 百家乐官网布| 百家乐官网21点桌| 百家乐官网前四手下注之观点| 视频百家乐官网代理| 德州百家乐官网赌博规则| 百家乐官网真人娱乐城| 百家乐官网沙| A8百家乐官网娱乐网| 百家乐官网庄闲必胜规| 游戏机百家乐官网下载| 百家乐官网庄闲统计数| 澳门百家乐官网有赢钱的吗| 百家乐官网二游戏机| 什么是百家乐官网平注法| 百家乐官网赌博在线娱乐| 中国百家乐官网软件|