高效與邊緣人工智慧
4 位元(INT4)量化
把每個權重以 4 位元而非 16 位元儲存,可將模型的權重記憶體縮減到約四分之一。一個七百億參數的模型在 FP16 下約需 140 GB,改用 4 位元後約只需 35 GB——小到單張高階加速器即可容納,較小的模型甚至能放進筆電或手機。
實務上的 INT4 採用分組仿射量化:權重沿輸入維度切成多個群組(常為 64 或 128 個一組),每組各自共用一個縮放因子與零點,這樣少數離群群組就不會毀掉整個張量。常見變體包括均勻的 INT4,以及非均勻的 NF4 編碼——其量化級距的位置是為了貼合常態分布的權重而設計。由於詞元生成受記憶體頻寬限制,讀取 4 位元權重也能加速解碼,而不只是省下儲存空間。
4 位元大致是目前的甜蜜點,純權重量化的大型語言模型品質仍與 FP16 相近。要把權重壓到 2 或 3 位元、或同時量化激活值,通常需要本領域其他的激活感知或訓練期方法;再往下,品質就會急遽下滑。
4 位元權重不等於 4 位元運算:矩陣乘法通常仍在每組即時反量化後,以 FP16/BF16 進行。
又称
另见