SmoothQuant

SmoothQuant是一種針對大型語言模型的訓練後量化方法,由麻省理工學院和英偉達的研究人員於2022年聯合提出。其核心思想是通過數學上等效的逐通道縮放變換,將量化難度從包含異常值的激活遷移到相對容易量化的權重上,從而實現對模型權重和激活的同時8比特整數量化。

該方法是一種無需重新訓練即可保持模型精度的通用方案,能有效降低大型語言模型的存儲和計算開銷。SmoothQuant已被集成到NVIDIA TensorRT-LLM、Hugging Face、Intel Neural Compressor等多個推理平台中。實驗表明,使用該技術量化後的模型在保持高精度的同時,可實現約1.56倍的推理加速,並將記憶體占用減半。

基本介紹

  • 外文名:SmoothQuant
研發背景,技術原理,技術原理與特性,套用與效果,團隊與影響,

研發背景

SmoothQuant是由麻省理工學院和英偉達的研究人員聯合提出的一項量化算法,其核心論文發表於2022年。該算法旨在解決大型語言模型量化過程中,由於激活值中存在異常值而導致的激活量化困難這一核心挑戰。SmoothQuant是一種通用的訓練後量化方案,無需對模型進行重新訓練或微調即可保持模型精度。SmoothQuant的核心目標是在保持模型精度的同時,實現8位權重與8位激活的量化,從而降低模型的存儲和計算成本,提升推理效率。

技術原理

SmoothQuant的核心思想是通過數學上等效的變換,將量化難度從激活值遷移到相對容易量化的權重上。SmoothQuant引入平滑因子s對激活值進行按通道平滑處理,以抑制異常值的影響,同時為了保持數學等價性,對權重進行反向調整。
SmoothQuant通過超參數α控制量化難度在激活和權重之間的分配比例,例如對於OPT和BLOOM模型,α=0.5是一個平衡的選擇。平滑因子s_j的計算公式為s_j = (max(|X_j|)^α) / (max(|W_j|)^(1-α)),其中j表示通道,X_j為激活值,W_j為權重。
經過上述平滑和權重調整後,SmoothQuant實現對權重和激活均進行8比特INT8量化,即W8A8量化。

技術原理與特性

SmoothQuant是一種高效、精確的訓練後量化方法,其方法在於通過數學等價變換將量化難度從激活值轉移到權重上,從而實現對大型語言模型的8比特權重與8比特激活量化。該方法在保持模型精度的同時,提升了推理效率並降低了記憶體需求。
SmoothQuant能夠對超過100B參數的大型語言模型進行W8A8量化,保持與原始FP16模型相近的精度。其O1和O2量化級別可保持浮點精度。
作為一種無需額外訓練的後訓練量化方法,SmoothQuant量化後的模型能夠利用INT8或FP8計算單元,實驗表明可實現1.56倍的推理加速並將模型記憶體占用減半。
SmoothQuant通過引入超參數α(遷移強度)來平衡激活與權重的量化難度,以適應不同模型結構的量化需求。該方法具有通用性,可套用於Transformer架構中計算密集型運算元的量化。
SmoothQuant的設計與標準INT8 GEMM核心兼容。它已被集成到PyTorch、FasterTransformer及Hugging Face生態系統等深度學習框架和推理引擎中。
基於其壓縮和精度保持特性,SmoothQuant適用於資源受限的邊緣設備上的大模型部署。通過降低模型的存儲和計算成本,為模型部署提供了解決方案。

套用與效果

SmoothQuant能夠對所有LLM的各種層中權重和激活量化到INT8,包括OPT-175B、BLOOM-176B和GLM-130B。
實測可實現最高1.56倍的推理加速,並將GPU記憶體占用降低至約一半,例如在NVIDIA A100 GPU上對OPT-30B模型當序列長度為256時獲得了1.51倍的速度提升。
該技術已被集成到多種主流推理框架和平台中以提升部署效率,例如NVIDIA TensorRT-LLM、PyTorch、FasterTransformer和百度智慧型雲千帆大模型平台等。
基於SmoothQuant的核心思想,業界還衍生出多種變體或組合量化方法,例如專注於僅權重量化的SmoothQuant+以及結合了SmoothQuant平滑處理與GPTQ權重量化的SmoothQuant-GPTQ等。

團隊與影響

SmoothQuant由麻省理工學院和英偉達的研究人員聯合提出,主要提出者為MIT EECS的博士生肖光烜,本科畢業於清華大學,導師為MIT副教授Song Han,研究方向為高效深度學習,曾提出深度壓縮技術。相關論文《SmoothQuant: Accurate and Efficient Post-Training Quantization for Large Language Models》於2022年在arXiv發布。
SmoothQuant已被集成到NVIDIA TensorRT-LLM、HuggingFace、Intel Neural Compressor、FasterTransformer及PyTorch等平台中,被視為解決大模型激活值量化難題的有效方案之一,推動了大型語言模型在資源受限環境下的部署;實驗顯示可實現高達1.56倍的推理加速,並將記憶體占用減半,同時保持模型精度。

相關詞條

熱門詞條

聯絡我們