0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

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

3天內(nèi)不再提示

理解LLM中的模型量化

穎脈Imgtec ? 2024-10-25 11:26 ? 次閱讀

作者:Shaoni Mukherjee

編譯:ronghuaiyang,來源:AI公園

導(dǎo)讀

在本文中,我們將探討一種廣泛采用的技術(shù),用于減小大型語言模型(LLM)的大小和計算需求,以便將這些模型部署到邊緣設(shè)備上。這項技術(shù)稱為模型量化。它使得人工智能模型能夠在資源受限的設(shè)備上高效部署。

在當(dāng)今世界,人工智能和機器學(xué)習(xí)的應(yīng)用已成為解決實際問題不可或缺的一部分。大型語言模型或視覺模型因其卓越的表現(xiàn)和實用性而備受關(guān)注。如果這些模型運行在云端或大型設(shè)備上,并不會造成太大問題。然而,它們的大小和計算需求在將這些模型部署到邊緣設(shè)備或用于實時應(yīng)用時構(gòu)成了重大挑戰(zhàn)。
邊緣設(shè)備,如我們所說的智能手表或Fitbits,擁有有限的資源,而量化是一個將大型模型轉(zhuǎn)換為可以輕松部署到小型設(shè)備上的過程。隨著人工智能技術(shù)的進步,模型復(fù)雜度呈指數(shù)增長。將這些復(fù)雜的模型容納在智能手機、物聯(lián)網(wǎng)設(shè)備和邊緣服務(wù)器等小型設(shè)備上是一項重大挑戰(zhàn)。然而,量化是一種減少機器學(xué)習(xí)模型大小和計算需求的技術(shù),同時不會顯著犧牲其性能。量化已被證明在提高大型語言模型的內(nèi)存和計算效率方面非常有用,從而使這些強大的模型更加實用和易于日常使用。

db66d89a-9280-11ef-b5cd-92fbcf53809c.png

模型量化涉及將神經(jīng)網(wǎng)絡(luò)參數(shù)(如權(quán)重和激活)從高精度(例如32位浮點數(shù))表示轉(zhuǎn)換為較低精度(例如8位整數(shù))格式。這種精度的降低可以帶來顯著的好處,包括減少內(nèi)存使用、加快推理時間和降低能耗。


什么是模型量化?模型量化的益處

模型量化是一種減少模型參數(shù)精度的技術(shù),從而降低了存儲每個參數(shù)所需的位數(shù)。例如,考慮一個32位精度的參數(shù)值7.892345678,它可以被近似為8位精度下的整數(shù)8。這一過程顯著減小了模型的大小,使得模型能夠在內(nèi)存有限的設(shè)備上更快地執(zhí)行。

除了減少內(nèi)存使用和提高計算效率外,量化還可以降低能耗,這對于電池供電的設(shè)備尤為重要。通過降低模型參數(shù)的精度,量化還能加快推理速度,因為它減少了存儲和訪問這些參數(shù)所需的內(nèi)存。

模型量化有多種類型,包括均勻量化和非均勻量化,以及訓(xùn)練后的量化和量化感知訓(xùn)練。每種方法都有其自身的模型大小、速度和準(zhǔn)確性之間的權(quán)衡,這使得量化成為在廣泛的硬件平臺上部署高效AI模型的一個靈活且必不可少的工具。


不同的模型量化技術(shù)

模型量化涉及各種技術(shù)來減少模型參數(shù)的大小,同時保持性能。

以下是幾種常見的技術(shù):

1. 訓(xùn)練后的量化

訓(xùn)練后的量化(PTQ)是在模型完全訓(xùn)練之后應(yīng)用的。PTQ可能會降低模型的準(zhǔn)確性,因為在模型被壓縮時,原始浮點值中的一些詳細信息可能會丟失。

  • 準(zhǔn)確性損失:當(dāng)PTQ壓縮模型時,可能會丟失一些重要的細節(jié),這會降低模型的準(zhǔn)確性。
  • 平衡:為了在使模型更小和保持高準(zhǔn)確性之間找到合適的平衡,需要仔細調(diào)優(yōu)和評估。這對于那些準(zhǔn)確性至關(guān)重要的應(yīng)用尤其重要。

簡而言之,PTQ可以使模型變得更小,但也可能降低其準(zhǔn)確性,因此需要謹慎校準(zhǔn)以維持性能。

這是一種簡單且廣泛使用的方法,包括幾種子方法:

  • 靜態(tài)量化:將模型的權(quán)重和激活轉(zhuǎn)換為較低精度。使用校準(zhǔn)數(shù)據(jù)來確定激活值的范圍,這有助于適當(dāng)?shù)乜s放它們。
  • 動態(tài)量化:僅量化權(quán)重,而在推理期間激活保持較高精度。根據(jù)推理時觀察到的范圍動態(tài)量化激活。

2. 量化感知訓(xùn)練

量化感知訓(xùn)練(QAT)將量化集成到訓(xùn)練過程中。模型在前向傳播中模擬量化,使模型能夠?qū)W會適應(yīng)降低的精度。這通常比訓(xùn)練后的量化產(chǎn)生更高的準(zhǔn)確性,因為模型能夠更好地補償量化誤差。QAT在訓(xùn)練過程中增加了額外的步驟來模擬模型被壓縮后的表現(xiàn)。這意味著調(diào)整模型以準(zhǔn)確處理這種模擬。這些額外步驟和調(diào)整使訓(xùn)練過程更具計算要求。它需要更多的時間和計算資源。訓(xùn)練后,模型需要經(jīng)過徹底的測試和微調(diào),以確保不會失去準(zhǔn)確性。這為整個訓(xùn)練過程增加了更多的復(fù)雜性。

3. 均勻量化

在均勻量化中,值范圍被劃分為等間距的間隔。這是最簡單的量化形式,通常應(yīng)用于權(quán)重和激活。

4. 非均勻量化

非均勻量化為不同的區(qū)間分配不同的大小,通常使用諸如對數(shù)或k均值聚類等方法來確定區(qū)間。這種方法對于參數(shù)具有非均勻分布的情況更為有效,可能在關(guān)鍵范圍內(nèi)保留更多信息。

db88d63e-9280-11ef-b5cd-92fbcf53809c.png

均勻量化和非均勻量化

5. 權(quán)重共享

權(quán)重共享涉及將相似的權(quán)重聚類,并在它們之間共享相同的量化值。這種技術(shù)減少了唯一權(quán)重的數(shù)量,從而實現(xiàn)了進一步的壓縮。權(quán)重共享量化是一種通過限制大型神經(jīng)網(wǎng)絡(luò)中唯一權(quán)重的數(shù)量來節(jié)省能量的技術(shù)。

益處:

  • 抗噪性:該方法更好地處理噪聲。
  • 可壓縮性:可以在不犧牲準(zhǔn)確性的情況下縮小網(wǎng)絡(luò)的規(guī)模。

6. 混合量化

混合量化在同一模型中結(jié)合了不同的量化技術(shù)。例如,權(quán)重可以被量化到8位精度,而激活則保持較高的精度,或者不同的層可以根據(jù)它們對量化的敏感性使用不同級別的精度。這種技術(shù)通過將量化應(yīng)用于模型的權(quán)重(模型的參數(shù))和激活(中間輸出)來減小神經(jīng)網(wǎng)絡(luò)的大小并加快速度。

  • 量化兩個部分:它同時壓縮模型的權(quán)重和計算的數(shù)據(jù)激活。這意味著兩者都使用較少的位數(shù)存儲和處理,從而節(jié)省了內(nèi)存并加快了計算速度。
  • 內(nèi)存和速度提升:通過減少模型需要處理的數(shù)據(jù)量,混合量化使得模型更小、更快。
  • 復(fù)雜性:因為它同時影響權(quán)重和激活,所以實施起來可能比僅僅量化其中一個更復(fù)雜。它需要精心調(diào)優(yōu)以確保模型在保持高效的同時仍然保持準(zhǔn)確性。

7. 僅整數(shù)量化

在僅整數(shù)量化中,權(quán)重和激活都被轉(zhuǎn)換為整數(shù)格式,并且所有計算都使用整數(shù)算術(shù)完成。這種技術(shù)對于優(yōu)化整數(shù)操作的硬件加速器特別有用。

8. 按張量和按通道量化

按張量量化:在整個張量(例如,一層中的所有權(quán)重)上應(yīng)用相同的量化尺度。

按通道量化:在一個張量的不同通道上使用不同的尺度。這種方法可以通過允許卷積神經(jīng)網(wǎng)絡(luò)中的量化更細粒度,從而提供更好的準(zhǔn)確性。

9. 自適應(yīng)量化

自適應(yīng)量化方法根據(jù)輸入數(shù)據(jù)分布動態(tài)調(diào)整量化參數(shù)。這些方法通過針對數(shù)據(jù)的具體特征定制量化,有可能達到更高的準(zhǔn)確性。
每種技術(shù)都有其在模型大小、速度和準(zhǔn)確性之間的權(quán)衡。選擇適當(dāng)?shù)牧炕椒ㄈQ于部署環(huán)境的具體要求和約束。


模型量化面臨的挑戰(zhàn)與考慮因素

在AI中實施模型量化涉及到應(yīng)對幾個挑戰(zhàn)和考慮因素。主要的問題之一是準(zhǔn)確性權(quán)衡,因為減少模型數(shù)值數(shù)據(jù)的精度可能會降低其性能,特別是對于需要高精度的任務(wù)。為了管理這一點,采用的技術(shù)包括量化感知訓(xùn)練、混合方法(結(jié)合不同精度級別)以及量化參數(shù)的迭代優(yōu)化,以保持準(zhǔn)確性。此外,不同硬件和軟件平臺之間的兼容性可能存在問題,因為并非所有平臺都支持量化。解決這個問題需要廣泛的跨平臺測試,使用標(biāo)準(zhǔn)化框架(如TensorFlow或PyTorch)以獲得更廣泛的兼容性,有時還需要為特定硬件開發(fā)定制解決方案以確保最佳性能。


實際應(yīng)用案例

模型量化在各種實際應(yīng)用中廣泛使用,其中效率和性能至關(guān)重要。

以下是一些示例:

  1. 移動應(yīng)用:量化模型用于移動應(yīng)用中的任務(wù),如圖像識別、語音識別和增強現(xiàn)實。例如,量化神經(jīng)網(wǎng)絡(luò)可以在智能手機上高效運行,以識別照片中的目標(biāo)或提供實時的語言翻譯,即使在計算資源有限的情況下也是如此。
  2. 自動駕駛汽車:在自動駕駛汽車中,量化模型幫助實時處理傳感器數(shù)據(jù),如識別障礙物、讀取交通標(biāo)志和做出駕駛決策。量化模型的效率使得這些計算可以快速完成,并且功耗較低,這對于自動駕駛汽車的安全性和可靠性至關(guān)重要。
  3. 邊緣設(shè)備:量化對于將AI模型部署到無人機、物聯(lián)網(wǎng)設(shè)備和智能攝像頭等邊緣設(shè)備至關(guān)重要。這些設(shè)備通常具有有限的處理能力和內(nèi)存,因此量化模型使它們能夠高效地執(zhí)行復(fù)雜的任務(wù),如監(jiān)控、異常檢測環(huán)境監(jiān)測。
  4. 醫(yī)療保?。?/strong>在醫(yī)學(xué)影像和診斷中,量化模型用于分析醫(yī)學(xué)掃描和檢測異常,如腫瘤或骨折。這有助于在硬件計算能力有限的情況下提供更快、更準(zhǔn)確的診斷,例如便攜式醫(yī)療設(shè)備。
  5. 語音助手:數(shù)字語音助手如Siri、Alexa和Google Assistant使用量化模型處理語音命令、理解自然語言并提供響應(yīng)。量化使這些模型能夠在家庭設(shè)備上快速高效地運行,確保順暢且響應(yīng)迅速的用戶體驗。
  6. 推薦系統(tǒng):在線平臺如Netflix、Amazon和YouTube使用量化模型提供實時推薦。這些模型處理大量用戶數(shù)據(jù)以建議電影、產(chǎn)品視頻,量化有助于管理計算負載,同時及時提供個性化推薦。

量化提高了AI模型的效率,使它們能夠在資源受限的環(huán)境中部署,而不顯著犧牲性能,從而改善了廣泛應(yīng)用中的用戶體驗。


總結(jié)思考

量化是人工智能和機器學(xué)習(xí)領(lǐng)域的一項關(guān)鍵技術(shù),解決了將大型模型部署到邊緣設(shè)備的挑戰(zhàn)。量化顯著減少了神經(jīng)網(wǎng)絡(luò)的內(nèi)存占用和計算需求,使它們能夠在資源受限的設(shè)備和實時應(yīng)用中部署。正如本文討論的,量化的一些好處包括減少內(nèi)存使用、加快推理時間和降低功耗。技術(shù)如均勻量化和非均勻量化,以及創(chuàng)新方法如權(quán)重共享和混合量化。盡管量化具有優(yōu)勢,但也帶來了挑戰(zhàn),特別是在保持模型準(zhǔn)確性方面。然而,隨著近期的研究和量化方法的發(fā)展,研究人員繼續(xù)致力于解決這些問題,推動低精度計算的可能性邊界。隨著深度學(xué)習(xí)社區(qū)不斷創(chuàng)新發(fā)展,量化將在部署強大且高效的AI模型中扮演關(guān)鍵角色,使先進的AI功能能夠廣泛應(yīng)用于更多的應(yīng)用場景和設(shè)備??傊?,量化不僅僅是技術(shù)優(yōu)化那么簡單——它在AI進步中扮演著至關(guān)重要的角色。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 人工智能
    +關(guān)注

    關(guān)注

    1789

    文章

    46599

    瀏覽量

    236938
  • 語言模型
    +關(guān)注

    關(guān)注

    0

    文章

    498

    瀏覽量

    10236
  • LLM
    LLM
    +關(guān)注

    關(guān)注

    0

    文章

    256

    瀏覽量

    297
收藏 人收藏

    評論

    相關(guān)推薦

    【飛凌嵌入式OK3576-C開發(fā)板體驗】rkllm模型量化構(gòu)建

    .load_huggingface(model = modelpath) if ret != 0: print(\'Load model failed!\') exit(ret) 模型量化構(gòu)建 # Build model ret
    發(fā)表于 08-27 22:50

    LLM模型推理加速的關(guān)鍵技術(shù)

    LLM(大型語言模型)大模型推理加速是當(dāng)前人工智能領(lǐng)域的一個研究熱點,旨在提高模型在處理復(fù)雜任務(wù)時的效率和響應(yīng)速度。以下是對LLM
    的頭像 發(fā)表于 07-24 11:38 ?712次閱讀

    深度學(xué)習(xí)模型量化方法

    深度學(xué)習(xí)模型量化是一種重要的模型量化技術(shù),旨在通過減少網(wǎng)絡(luò)參數(shù)的比特寬度來減小模型大小和加速推理過程,同時盡量保持
    的頭像 發(fā)表于 07-15 11:01 ?432次閱讀
    深度學(xué)習(xí)<b class='flag-5'>模型</b><b class='flag-5'>量化</b>方法

    模型LLM與ChatGPT的技術(shù)原理

    在人工智能領(lǐng)域,大模型(Large Language Model, LLM)和ChatGPT等自然語言處理技術(shù)(Natural Language Processing, NLP)正逐步改變著人類
    的頭像 發(fā)表于 07-10 10:38 ?629次閱讀

    llm模型本地部署有用嗎

    ,將這些模型部署到本地環(huán)境可能會帶來一些挑戰(zhàn)和優(yōu)勢。 1. LLM模型概述 大型語言模型LLM)通常是基于深度學(xué)習(xí)的神經(jīng)網(wǎng)絡(luò)
    的頭像 發(fā)表于 07-09 10:14 ?368次閱讀

    llm模型有哪些格式

    LLM(Large Language Model,大型語言模型)是一種深度學(xué)習(xí)模型,主要用于處理自然語言處理(NLP)任務(wù)。LLM模型的格式
    的頭像 發(fā)表于 07-09 09:59 ?504次閱讀

    LLM模型和LMM模型的區(qū)別

    LLM(線性混合模型)和LMM(線性混合效應(yīng)模型)之間的區(qū)別如下: 定義: LLM(線性混合模型)是一種統(tǒng)計
    的頭像 發(fā)表于 07-09 09:57 ?658次閱讀

    llm模型和chatGPT的區(qū)別

    LLM(Large Language Model)是指大型語言模型,它們是一類使用深度學(xué)習(xí)技術(shù)構(gòu)建的自然語言處理(NLP)模型。LLM模型
    的頭像 發(fā)表于 07-09 09:55 ?821次閱讀

    LLM模型的應(yīng)用領(lǐng)域

    在本文中,我們將深入探討LLM(Large Language Model,大型語言模型)的應(yīng)用領(lǐng)域。LLM是一種基于深度學(xué)習(xí)的人工智能技術(shù),它能夠理解和生成自然語言文本。近年來,隨著計
    的頭像 發(fā)表于 07-09 09:52 ?469次閱讀

    什么是LLMLLM的工作原理和結(jié)構(gòu)

    隨著人工智能技術(shù)的飛速發(fā)展,大型語言模型(Large Language Model,簡稱LLM)逐漸成為自然語言處理(NLP)領(lǐng)域的研究熱點。LLM以其強大的文本生成、理解和推理能力,
    的頭像 發(fā)表于 07-02 11:45 ?6159次閱讀

    使用esp-dl的example量化我的YOLO模型時,提示ValueError: current model is not supported by esp-dl錯誤,為什么?

    使用esp-dl的example量化我的YOLO模型時,提示:ValueError: current model is not supported by esp-dl 錯誤, 請看我的代碼和
    發(fā)表于 06-28 06:47

    大語言模型(LLM)快速理解

    自2022年,ChatGPT發(fā)布之后,大語言模型(LargeLanguageModel),簡稱LLM掀起了一波狂潮。作為學(xué)習(xí)理解LLM的開始,先來整體
    的頭像 發(fā)表于 06-04 08:27 ?857次閱讀
    大語言<b class='flag-5'>模型</b>(<b class='flag-5'>LLM</b>)快速<b class='flag-5'>理解</b>

    2023年大語言模型(LLM)全面調(diào)研:原理、進展、領(lǐng)跑者、挑戰(zhàn)、趨勢

    大型語言模型(LLM)是基于人工智能的先進模型,經(jīng)過訓(xùn)練,它可以密切反映人類自然交流的方式處理和生成人類語言。這些模型利用深度學(xué)習(xí)技術(shù)和大量訓(xùn)練數(shù)據(jù)來全面
    的頭像 發(fā)表于 01-03 16:05 ?997次閱讀
    2023年大語言<b class='flag-5'>模型</b>(<b class='flag-5'>LLM</b>)全面調(diào)研:原理、進展、領(lǐng)跑者、挑戰(zhàn)、趨勢

    一文詳解LLM模型基本架構(gòu)

    LLM 中非常重要的一個概念是 Token,我們輸入給 LLM 和它輸出的都是 Token。Token 在這里可以看做語言的基本單位,中文一般是詞或字(其實字也是詞)。比如:”我們喜歡 Rust
    發(fā)表于 12-25 10:38 ?2962次閱讀
    一文詳解<b class='flag-5'>LLM</b><b class='flag-5'>模型</b>基本架構(gòu)

    低比特量化技術(shù)如何幫助LLM提升性能

    針對大語言模型 (LLM) 在部署過程的性能需求,低比特量化技術(shù)一直是優(yōu)化效果最佳的方案之一,本文將探討低比特量化技術(shù)如何幫助
    的頭像 發(fā)表于 12-08 15:26 ?1066次閱讀
    低比特<b class='flag-5'>量化</b>技術(shù)如何幫助<b class='flag-5'>LLM</b>提升性能