成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

50s完成7B模型量化,4bit達(dá)到新SOTA,大模型低比特量化有新招了 | NeurIPS 2024 Oral

人工智能 新聞
DuQuant通過兩種正交變換,利用activation激活值的先驗(yàn)知識(shí)達(dá)到了比QuaRot中Hadamard旋轉(zhuǎn)更好的量化效果。

消除激活值(outliers),大語言模型低比特量化有新招了——

自動(dòng)化所、清華、港城大團(tuán)隊(duì)最近有一篇論文入選了NeurIPS 2024(Oral Presentation),他們針對(duì)LLM權(quán)重激活量化提出了兩種正交變換,有效降低了outliers現(xiàn)象,達(dá)到了4-bit的新SOTA。

圖片

簡單理解,在大語言模型(LLM)中,有一些中間層輸出的數(shù)值(激活值 Activation)會(huì)變得非常大,它們被稱為“outliers(離群值)”,這些 outliers給模型量化帶來了挑戰(zhàn)。

補(bǔ)充一下,量化可以將模型中的數(shù)值從浮點(diǎn)數(shù)轉(zhuǎn)換為整數(shù),以減少模型的大小和計(jì)算需求。

而一旦在量化過程中存在大量outliers,會(huì)導(dǎo)致量化后的模型性能下降。

明白了這層道理, 我們再來看他們團(tuán)隊(duì)的一項(xiàng)名為DuQuant的新研究。

首先, 他們發(fā)現(xiàn)在LLM的前饋網(wǎng)絡(luò) (FFN) 模塊中的down_proj層, 存在明顯的Massive Outliers(非常大的激活值)。

這種outliers不同于以往發(fā)現(xiàn)的Normal Outliers,表現(xiàn)為大于絕對(duì)值幾百的異常值并局限于個(gè)別的tokens中——

它們導(dǎo)致現(xiàn)有的量化算法(如SmoothQuant和OmniQuant)在將模型的權(quán)重和激活值量化為4位二進(jìn)制數(shù)時(shí)表現(xiàn)不佳。

對(duì)此,團(tuán)隊(duì)提出了一種新的量化方法,叫做DuQuant

DuQuant通過學(xué)習(xí)旋轉(zhuǎn)和置換變換矩陣,在Activation矩陣內(nèi)部將outliers轉(zhuǎn)移到其他通道,最終得到平滑的激活矩陣,從而大幅降低了量化難度。

實(shí)驗(yàn)顯示,使用DuQuant方法,在4位權(quán)重和激活量化的設(shè)置下,模型達(dá)到了SOTA。

同時(shí),DuQuant的訓(xùn)練非??焖伲梢栽?strong>50s內(nèi)完成7B模型的量化過程,即插即用。

背景

在每個(gè)Transformer塊的常見模塊中,多頭自注意力(MSA)和前饋網(wǎng)絡(luò)(FFN)基本上都由線性層組成,將其表示為:

圖片

其中圖片是激活輸入,圖片表示權(quán)重矩陣。

模型量化通過將浮點(diǎn)數(shù)(FP16, BF16)表示的模型權(quán)重或激活值轉(zhuǎn)換為低位的浮點(diǎn)數(shù)或整數(shù)來減少內(nèi)存占用,權(quán)重激活量化可以通過使用低比特乘法的算子進(jìn)一步加快模型推理的速度。

該工作重點(diǎn)關(guān)注低比特整型量化,目標(biāo)是獲得更好的硬件支持。

具體來說, ??位量化過程將FP16張量??映射為低位整數(shù)???? :

圖片

符號(hào)? · ?表示最接近的舍入操作, ?是量化步長, ??表示零點(diǎn)。

遵循主流量化方法,作者對(duì)激活??采用逐token量化,對(duì)權(quán)重??采用逐通道量化,這意味著為??的每個(gè)token分配不同的步長( ??? ? ???x1),為??的每個(gè)輸出通道分配不同的步長圖片

動(dòng)機(jī)(Motivation)

據(jù)作者介紹,他們首次在實(shí)驗(yàn)中發(fā)現(xiàn),LLM FFN模塊中的down_proj layer存在明顯的Massive Outliers(非常大的激活值),表現(xiàn)為絕對(duì)值大于幾百的異常值并局限于個(gè)別的token中。

PS:先前工作發(fā)現(xiàn)Massive Outliers存在于每個(gè)transformer block的輸出中,DuQuant的作者進(jìn)一步將其定位在FFN模塊中。

圖片論文:https://link.zhihu.com/?target=https%3A//eric-mingjie.github.io/massive-activations/index.html

這些Massive Outliers造成SmoothQuant和OmniQuant等算法在4bit WA量化中表現(xiàn)較差。

圖片△圖1:Massive outliers顯著加大了低比特權(quán)重激活量化的難度

圖1(a)(b)對(duì)比了普遍常見的Normal Outliers,和在FFN中出現(xiàn)的Massive Outliers。

SmoothQuant通過將激活值除以每通道平滑因子并將其乘回權(quán)重矩陣,嘗試將量化難度從激活值轉(zhuǎn)移到權(quán)重。

具體來說,SmoothQuant使用逐通道的平滑對(duì)角矩陣,記為?? ,將原始線性層重新表達(dá)為:??=?? · ??=(?? ·??)(??-1 · ??),對(duì)角矩陣??中的元素???? 的計(jì)算方式為:

圖片

其中α是一個(gè)超參數(shù),表示遷移強(qiáng)度。

然而,作者觀察到在輸入端進(jìn)行這種轉(zhuǎn)移可能會(huì)導(dǎo)致權(quán)重矩陣也出現(xiàn)明顯的難以量化的outliers(如圖1(d)所示),這一問題的根源在于Massive Outliers使平滑因子???? 變得異常大。

此外,極大的outliers還可能導(dǎo)致基于優(yōu)化的方法出現(xiàn)梯度爆炸的問題,所以基于梯度優(yōu)化的OmniQuant和AffineQuant等工作會(huì)直接跳過down_proj layer,直接退化為SmoothQuant的處理方式。

這些preliminary experiments都表明需要一種更新更好的方式處理兩種outliers,特別是平滑掉down_proj輸入側(cè)的Massive Outliers

方法

DuQuant提出通過學(xué)習(xí)旋轉(zhuǎn)和置換變換矩陣,在Activation矩陣內(nèi)部將outliers轉(zhuǎn)移到其他通道,最終得到平滑的激活矩陣,從而大幅度降低了量化難度。

(a) 逐步展示了DuQuant算法對(duì)Normal outlier的處理過程,(b) DuQuant顯著降低了Massive outlier,(c)一個(gè)Tony Example說明DuQuant有效降低了激活矩陣的量化難度。

圖片△圖2:DuQuant算法說明

簡單來說,DuQuant算法包含三個(gè)步驟:

1)旋轉(zhuǎn)矩陣的構(gòu)造有效利用了特定outlier channel的位置索引,作者使用了分塊對(duì)角的旋轉(zhuǎn)矩陣,在每個(gè)block內(nèi)部通過貪心算法將outlier平攤到其他的channels中。

2)由于block size的限制,可能導(dǎo)致某些block在旋轉(zhuǎn)之后組內(nèi)的平均值大于其他blocks,因此作者進(jìn)一步使用通道置換技術(shù)重新分配activation channel,使用zigzag順序排列使各組均值的方差大幅減小。

3) 進(jìn)一步執(zhí)行一次旋轉(zhuǎn)變換達(dá)到更均勻的activation分布,從而大幅降低了量化難度。

旋轉(zhuǎn)矩陣:作者希望應(yīng)用旋轉(zhuǎn)矩陣??進(jìn)行行或列變換,減輕Normal Outliers和Massive Outliers的影響。

由于Massive Outliers通常隨機(jī)分布在激活空間中,直接找到能夠通過單次旋轉(zhuǎn)變換減輕outliers的最優(yōu)旋轉(zhuǎn)矩陣??是具有挑戰(zhàn)性的。

為了解決這一問題,作者采用帶有先驗(yàn)知識(shí)的貪心搜索方法來計(jì)算旋轉(zhuǎn)矩陣圖片,從而近似理想的旋轉(zhuǎn)矩陣??。

具體來說,圖片的計(jì)算包括以下步驟:

1、識(shí)別outliers主要集中的特征維度 ,即:圖片,其中, ??????表示??中第??行和第??列的元素。

2、基于搜索到的維度,構(gòu)建旋轉(zhuǎn)矩陣如下:

圖片

圖片是用于交換激活值的第1列和第d(1) 列的交換矩陣,表示一個(gè)正交初始化的旋轉(zhuǎn)矩陣,其第一行均勻分布。

這樣做的目的是通過圖片變換后減輕第1列中的outliers。

為了進(jìn)一步增加隨機(jī)性,保留減輕outliers后的第1列,并通過與隨機(jī)正交矩陣??相乘,隨機(jī)旋轉(zhuǎn)其他列。

3、設(shè)N為貪心搜索的步數(shù),則近似的旋轉(zhuǎn)矩陣圖片,其中圖片。每個(gè)???? 根據(jù)公式(2)和識(shí)別到的特征維度d(??) 構(gòu)建。

通過這種構(gòu)建方式,可以確保近似的最優(yōu)旋轉(zhuǎn)矩陣圖片能夠有效減輕具有較大幅度的outliers,而不僅僅是使用隨機(jī)選擇的正交旋轉(zhuǎn)矩陣。

然而,直接構(gòu)建整個(gè)旋轉(zhuǎn)矩陣非常耗時(shí),并且會(huì)導(dǎo)致大量的內(nèi)存開銷。

為了實(shí)現(xiàn)快速矩陣乘法,參考Training Transformer with 4ibts ,作者選擇以分塊的方式近似旋轉(zhuǎn)矩陣圖片

圖片

其中,圖片表示第??個(gè)塊的方陣,該矩陣按照上述三步構(gòu)建。塊的數(shù)量K通過K=C??n/2n計(jì)算得出。

通道置換矩陣:盡管采用了塊對(duì)角旋轉(zhuǎn)矩陣圖片來提高時(shí)間和存儲(chǔ)效率,但其專注于局部信息的特性帶來了進(jìn)一步減少outliers的潛在限制。

由于在每個(gè)小塊內(nèi)進(jìn)行的旋轉(zhuǎn)變換無法整合跨不同塊的信息,一個(gè)塊中可能有相對(duì)較大的outliers,而另一個(gè)塊中則有較小的outliers,導(dǎo)致不同塊之間存在較高的方差。

因此,作者提出利用通道置換矩陣平衡不同blocks之間outliers的幅度。

具體來說,在每個(gè)小塊中,將維度d??中最大的outlier記為O??。

同時(shí), Mb??表示第??個(gè)塊中所有O??的平均值,其中??=1,2,……,K ,各個(gè)塊之間激活幅度的方差可以表示為:

圖片

作者引入了之字形置換矩陣P 。

具體來說,通過生成一個(gè)之字形序列,首先將激活值最高的通道分配給第一個(gè)塊,接著,將激活值次高的通道按遞減順序分配到后續(xù)的塊,直到第K個(gè)塊。

在到達(dá)最后一個(gè)塊后,順序反轉(zhuǎn),從下一個(gè)激活值最高的通道開始,按遞增順序分配。

這個(gè)往復(fù)模式貫穿所有塊,確保沒有單個(gè)塊持續(xù)接收最高或最低激活值的通道。

通過使用之字形置換,DuQuant實(shí)現(xiàn)了不同塊之間outliers的均衡分布,從而能夠使用額外的旋轉(zhuǎn)變換進(jìn)一步平滑outliers,如圖2所示。

需要注意的是

1、通道置換其實(shí)是非常重要的一步,也很簡單快速(對(duì)于推理效率的影響很小,可見后面實(shí)驗(yàn)部分),既可以避免像SpinQuant那樣復(fù)雜的訓(xùn)練流程,也比QuaRot的Hadamard旋轉(zhuǎn)性能表現(xiàn)更好。

2、旋轉(zhuǎn)矩陣和置換變換矩陣都是正交矩陣,保證了????輸出的不變性,作者還通過嚴(yán)謹(jǐn)?shù)睦碚撏茖?dǎo)了證明了兩種變換有效降低了量化誤差,具體證明可以閱讀Paper里面的Appendix。

實(shí)驗(yàn)

在4-bit setting下達(dá)到了SOTA的效果,DuQuant驗(yàn)證了LLaMA、Vicuna、Mistral系列模型,在PPL、QA、MMLU和MT-Bench等任務(wù)上都明顯提升了量化模型的性能。

此外作者還在LongBench評(píng)測了量化模型長文本生成的能力,DuQuant同樣大幅超過了baselines。

圖片△DuQuant在LLaMA3-8B的低比特量化中顯著超過了基線方法

上面是DuQuant在LLaMA3模型的量化效果,更多的模型和task上的表現(xiàn)可以參見論文。

硬件測速也證明了DuQuant在pre-filing階段可以達(dá)到2.08倍的加速比,在decoding階段有效降低了3.50倍內(nèi)存開銷。

圖片

同時(shí)如右圖所示,DuQuant相比INT4推理帶來額外的10%左右速度開銷,微高于QuaRot,但帶來更多性能提升。

圖片

此外,DuQuant與使用Hadamard旋轉(zhuǎn)矩陣的QuaRot主要有以下兩點(diǎn)不同

1、DuQuant構(gòu)造的旋轉(zhuǎn)矩陣?yán)昧讼闰?yàn)知識(shí)(具體的outlier channel索引),因此它可以比QuaRot更好地平滑激活空間,如下圖展示了DuQuant單次旋轉(zhuǎn)和Hadamard旋轉(zhuǎn)對(duì)LLaMA2-7B Attention Key_proj輸入的變換效果。

2、QuaRot依賴于耗時(shí)的GPTQ算法來提升性能,而作者引入的通道置換矩陣可以幫助DuQuant在極短時(shí)間內(nèi)進(jìn)一步平衡outliers的分布,兩種正交變換可以同時(shí)平滑權(quán)重矩陣的空間,降低權(quán)重矩陣的量化難度,從而取得更好效果。

圖片
小結(jié)一下,DuQuant通過兩種正交變換,利用activation激活值的先驗(yàn)知識(shí)達(dá)到了比QuaRot中Hadamard旋轉(zhuǎn)更好的量化效果。

該工作獲得了審稿人一致的高度評(píng)價(jià),并最終被選為Oral Presentation,錄取率0.4%。

更多細(xì)節(jié)歡迎查閱原論文。

項(xiàng)目主頁:https://duquant.github.io/
論文:https://arxiv.org/abs/2406.01721
代碼:https://github.com/Hsu1023/DuQuant

責(zé)任編輯:張燕妮 來源: 量子位
相關(guān)推薦

2024-04-02 09:17:50

AI數(shù)據(jù)開源

2025-06-03 08:49:00

2024-11-11 11:05:00

大語言模型系統(tǒng)

2023-04-10 10:32:00

模型排序

2025-04-30 09:16:00

2024-05-09 08:33:33

2025-01-17 09:20:00

2024-06-03 10:43:34

2024-02-04 08:00:00

Zephyr 7B大語言模型算法

2025-05-26 09:41:26

2024-11-29 14:00:00

模型訓(xùn)練

2025-04-16 02:30:00

2023-11-17 14:37:56

2024-03-25 08:00:00

2025-04-23 12:11:40

2024-06-04 14:09:00

2024-08-19 02:35:00

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

2024-06-11 14:30:18

2024-09-13 16:47:06

模型量化AI

2024-04-26 06:46:27

量化剪枝模型
點(diǎn)贊
收藏

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

主站蜘蛛池模板: 国产精品一区在线 | 久热国产在线 | 91社区在线观看播放 | 中文字幕成人av | 日本精品一区 | 国外成人在线视频 | 亚洲综合二区 | 国内精品在线视频 | 欧美久久精品一级黑人c片 91免费在线视频 | 亚州春色 | 午夜大片 | 欧美激情视频一区二区三区免费 | 午夜影晥| 天天色综 | 一区二区在线免费观看 | 免费午夜剧场 | 在线视频一区二区 | 一区二区久久 | 亚洲精品成人网 | 久久久久国产精品 | 九七午夜剧场福利写真 | 亚洲一页 | 一级片av | 国产一区二区三区免费观看视频 | 国产精品一区二区三区四区 | 在线一区 | 国产精品一区二区av | 亚洲图片视频一区 | 免费人成激情视频在线观看冫 | 日本中文字幕一区 | 久久精品国产99国产 | 中文字幕在线一区二区三区 | 免费成人在线网站 | 不卡的av在线 | 成人亚洲性情网站www在线观看 | 91一区二区三区 | 红桃视频一区二区三区免费 | 黄视频国产| 毛片大全| 色黄视频在线 | 国产成人免费视频网站高清观看视频 |