什麼是INT8

8位元的有號整數(−128〜127)。在AI推論中,將權重或激活值乘上縮放係數轉換(量化)為INT8,可大幅減少計算與記憶體,並以整數的小型電路高速處理。

日文名稱: INT8

「INT8」出現在3領域的5道練習題中(電腦算術, AI硬體與軟體堆疊, GPU程式設計等)。

這個名詞所屬的領域: 電腦算術

練習INT8的題目

在AI推論中,將權重從FP32轉換(量化)為INT8的主要優點為下列何者?

  1. A計算精度必定比FP32更高
  2. B資料量變為4分之1,能更快速且省電地計算
  3. C即使不重新訓練,模型的效能也必定提升
查看答案與解析

正確答案:B. 資料量變為4分之1,能更快速且省電地計算

將32位元的權重改為8位元,記憶體使用量與讀取量會變為4分之1,對於記憶體頻寬受限的推論有很大的效果。此外,8位元整數的乘法器遠比浮點數乘法器小且省電,因此在相同的面積與功耗下能進行更多運算。代價是可表示的值被限制為256種,因而產生誤差,精度可能略微下降。精度並不會提升,效能也不一定會提升。

將值域為 −6.35~6.35 的資料,量化為以0為中心的對稱INT8(−127~127)。若比例(scale)定為「最大絕對值 ÷ 127」,則1.0會以哪個整數表示?

  1. A1
  2. B127
  3. C20
查看答案與解析

正確答案:C. 20

比例為 6.35 ÷ 127 = 0.05,整數的1相當於實數的0.05。要將實數的值轉為整數,須除以比例後捨入至最接近的整數,因此 1.0 ÷ 0.05 = 20。還原時則是 20 × 0.05 = 1.0。1是把實數的值直接當作整數的錯誤,127則是對應於最大值6.35的整數。若範圍內的離群值很大,比例會變得粗糙而使精度下降,因此最大值的決定方式(校準)很重要。

解析中的「INT8」

出現「INT8」的題目(5題)

  1. 在AI推論中,將權重從FP32轉換(量化)為INT8的主要優點為下列何者?
  2. 將值域為 −6.35~6.35 的資料,量化為以0為中心的對稱INT8(−127~127)。若比例(scale)定為「最大絕對值 ÷ 127」,則1.0會以哪個整數表示?
  3. 在將啟動值量化為INT8的訓練後量化中,所進行的「校準(calibration)」之目的,下列何者正確?
  4. 關於近年GPU所搭載的張量核心(Tensor Core,矩陣運算單元)的特徵,下列何者正確?
  5. 關於AI加速器效能所標示的「○○ TOPS」這個數值,應注意的地方下列何者正確?

相關名詞

訓練後量化(Post-training quantization) GPU 張量核心(Tensor core) FP8 TOPS(每秒兆次運算) 布斯演算法(Booth's algorithm) 先行進位加法器 有效位數損失(Catastrophic cancellation) 有效數(Significand) 定點數

前往名詞解釋列表