Computerarithmetik
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?
- ADie Mantisse ist zu lang, sodass der Speicherbedarf steigt
- BDer darstellbare Bereich ist klein, sodass kleine Gradienten zu 0 werden
- CDie Werte werden als ganze Zahlen behandelt, sodass keine Nachkommastellen darstellbar sind
Antwort und Erläuterung anzeigen
Antwort: B. Der darstellbare Bereich ist klein, sodass kleine Gradienten zu 0 werden
FP16 hat nur 5 Exponentenbits, daher ist der darstellbare positive Bereich mit etwa 6 × 10⁻⁸ (einschließlich denormalisierter Zahlen) bis 65504 klein. Beim Training berechnete Gradienten enthalten viele sehr kleine Werte, die in FP16 zu 0 unterlaufen und das Lernen zum Stillstand bringen. Beim Loss Scaling wird der Verlust z. B. mit 1024 multipliziert und rückwärts propagiert, sodass die Gradienten in den darstellbaren Bereich angehoben und vor der Aktualisierung der Gewichte zurückskaliert werden. Die Mantisse hat 10 Bit und ist kürzer als bei FP32, und Nachkommastellen sind darstellbar.