AI硬體與軟體堆疊

計算softmax函數exp(xi)/Σexp(xj)時,常先從各xi減去最大值再計算,其原因下列何者正確?

  1. A為了把計算結果換成近似值而加快速度
  2. B為了必定使最大的元素變成0
  3. C因為結果維持不變,並且可以避免exp的值過大而溢位(變成無限大)
查看答案與解析

正確答案:C. 因為結果維持不變,並且可以避免exp的值過大而溢位(變成無限大)

exp是急遽增大的函數,例如在FP16中,x超過11左右時,exp(x)就會超過可表示的最大值。從所有的x減去同一個常數m,分子與分母都只是變為exp(-m)倍,結果不變。減去最大值後指數會小於等於0,exp的值就會收在1以下而不致溢位。這對以低精度計算的AI特別重要,在高速注意力的實作中也會用到。

  • A. 結果是完全相同的。
  • B. 最大元素的輸出最大,不會變成0。
  • C. 正確。只是分子與分母乘上了相同的係數。
練習這個領域 前往領域頁面

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

  1. 關於加速大型語言模型推論的「推測解碼(speculative decoding)」之概念,下列何者正確?
  2. 在推薦系統的模型等所使用的大型嵌入表(embedding table)之查表,難以用AI硬體處理,其原因下列何者正確?
  3. 將AI的軟體堆疊從貼近使用者的上層,依序排列到貼近硬體的下層,下列何者正確?
  4. 關於神經網路的「訓練」與「推論」之差異,下列何者正確?
  5. 下列何者「不是」訓練所需記憶體遠大於同一模型推論的原因?