Computerarithmetik

Was ist der Hauptgrund, warum bfloat16 beim KI-Training verwendet wird?

  1. ADer Exponent hat wie FP32 8 Bit, daher ist der darstellbare Bereich weit
  2. BDie Mantisse ist länger als bei FP32 und die Genauigkeit höher
  3. CEs kann mit Ganzzahlarithmetik gerechnet werden
Antwort und Erläuterung anzeigen

Antwort: A. Der Exponent hat wie FP32 8 Bit, daher ist der darstellbare Bereich weit

bfloat16 ist ein 16-Bit-Format mit 1 Vorzeichenbit, 8 Exponentenbits und 7 Mantissenbits. Da der Exponent wie bei FP32 ist, ist der darstellbare Bereich nahezu gleich; auch sehr kleine oder große Werte wie Gradienten beim Training führen kaum zu Überlauf oder Unterlauf, und der Wechsel von FP32-Modellen ist einfach. Die Genauigkeit ist zwar geringer, doch Training ist gegenüber kleinen Fehlern robust, sodass dies kaum stört, und Datenmenge und Fläche der Rechenwerke lassen sich halbieren. Die Mantisse ist kürzer als bei FP32, und gerechnet wird nicht mit Ganzzahlen, sondern mit Gleitkomma.

Dieses Thema üben Zur Themenseite

Weitere Fragen zu Computerarithmetik

  1. Welches bei FP16 (halbe Genauigkeit: 1 · 5 · 10 Bit) beim Training neuronaler Netze leicht auftretende Problem wird durch die Vergrößerung des Verlustwerts um einen Faktor (Loss Scaling) behoben?
  2. Wie groß ist der größte endliche Wert, der in FP16 (1 Vorzeichenbit, 5 Exponentenbits (Bias 15), 10 Mantissenbits) darstellbar ist?
  3. Wie werden die beiden FP8-Formate E4M3 (Exponent 4, Mantisse 3 Bit) und E5M2 (Exponent 5, Mantisse 2 Bit) üblicherweise unterschieden eingesetzt?
  4. Was ist der Hauptvorteil der Umwandlung (Quantisierung) der Gewichte von FP32 in INT8 bei der KI-Inferenz?
  5. Daten im Wertebereich −6.35 bis 6.35 werden auf ein um 0 symmetrisches INT8 (−127 bis 127) quantisiert. Mit dem Skalierungsfaktor „größter Betrag ÷ 127“: Durch welche ganze Zahl wird 1.0 dargestellt?