AI硬體與軟體堆疊

下列何者「不是」訓練所需記憶體遠大於同一模型推論的原因?

  1. A因為訓練時的權重數量會變成推論的好幾倍
  2. B因為反向傳播需要用到順向傳播的中間結果(啟動值),所以必須保存下來
  3. C因為必須持有與權重同樣數量的梯度,以及優化器的狀態
查看答案與解析

正確答案:A. 因為訓練時的權重數量會變成推論的好幾倍

模型的權重數量在訓練與推論時是相同的。然而訓練時,為了在反向傳播中計算梯度,必須在各層保存順向傳播的中間結果,也需要與權重同樣數量的梯度,以及Adam等優化器為每個權重所持有的值(兩個移動平均等)。因此訓練的記憶體是僅需權重的推論的好幾倍,訓練大型模型就需要多顆GPU。

  • A. 正確。權重的數量在訓練與推論時相同。
  • B. 啟動值的保存佔了訓練記憶體的一大部分。
  • C. 梯度與優化器的狀態需要權重數倍的記憶體。
練習這個領域 前往領域頁面

AI硬體與軟體堆疊的其他題目

  1. 以FP32(4位元組)持有權重、梯度與Adam的兩個狀態,來訓練參數量70億(7B)的模型。排除啟動值後,所需記憶體最接近下列何者?
  2. 若以FP16(2位元組)持有參數量70億(7B)的模型權重,權重的記憶體大約是多少?
  3. 將上一題的7B模型從FP16(約14 GB)量化為4位元整數(INT4),權重的記憶體大約是多少?
  4. 計算M×K矩陣與K×N矩陣的乘積時,浮點運算的次數(乘法與加法分開計算)大約是多少?
  5. 計算N×N的FP16(2位元組)矩陣相乘,兩個輸入各讀取1次,結果寫入1次。運算強度(每位元組的運算數)大約是多少?