電腦算術

bfloat16主要被用於AI訓練的理由為下列何者?

  1. A因為指數部分與FP32相同為8位元,可表示的數值範圍廣
  2. B因為尾數部分比FP32長,精度高
  3. C因為可以用整數運算來計算
查看答案與解析

正確答案:A. 因為指數部分與FP32相同為8位元,可表示的數值範圍廣

bfloat16是由符號1位元、指數部分8位元、尾數部分7位元構成的16位元格式。由於指數部分與FP32相同,可表示的範圍幾乎一樣,即使是訓練中梯度這類非常小或非常大的值,也不易發生溢位或下溢,從FP32模型轉換過來也很簡單。精度雖然較低,但訓練對些許誤差有一定的容忍度,因此不易成為問題,並且能將資料量與運算單元的面積減半。尾數部分比FP32短,而且是以浮點數而非整數的運算來計算。

  • A. 正確。因為指數部分與FP32相同,範圍廣。
  • B. 尾數部分是比FP32的23位元更短的7位元。
  • C. 是以浮點數而非整數的運算來計算。
練習這個領域 前往領域頁面

電腦算術的其他題目

  1. 以FP16(半精度:符號1・指數部分5・尾數10位元)訓練類神經網路時容易發生問題,而以將損失值放大數倍後再計算的方法(損失縮放,loss scaling)來因應的是下列何者?
  2. FP16(符號1・指數部分5位元(偏移值15)・尾數10位元)所能表示的最大有限值是多少?
  3. 關於FP8的兩種格式E4M3(指數部分4・尾數3位元)與E5M2(指數部分5・尾數2位元)的使用區分,下列何者是一般作法?
  4. 在AI推論中,將權重從FP32轉換(量化)為INT8的主要優點為下列何者?
  5. 將值域為 −6.35~6.35 的資料,量化為以0為中心的對稱INT8(−127~127)。若比例(scale)定為「最大絕對值 ÷ 127」,則1.0會以哪個整數表示?