KI-Hardware und Software-Stack

Aus welchem Grund wird bei der Berechnung der Softmax-Funktion exp(xi)/Σexp(xj) häufig zunächst von jedem xi der Maximalwert abgezogen?

  1. AUm das Berechnungsergebnis durch einen Näherungswert zu ersetzen und schneller zu werden
  2. BUm das größte Element stets auf 0 zu setzen
  3. CWeil das Ergebnis unverändert bleibt und verhindert wird, dass die exp-Werte zu groß werden und überlaufen (unendlich werden)
Antwort und Erläuterung anzeigen

Antwort: C. Weil das Ergebnis unverändert bleibt und verhindert wird, dass die exp-Werte zu groß werden und überlaufen (unendlich werden)

exp ist eine stark wachsende Funktion; in FP16 überschreitet exp(x) z. B. ab x von etwa 11 den größten darstellbaren Wert. Wird von allen x dieselbe Konstante m abgezogen, werden Zähler und Nenner lediglich mit exp(−m) multipliziert, und das Ergebnis ändert sich nicht. Zieht man den Maximalwert ab, sind die Exponenten höchstens 0, die exp-Werte liegen bei höchstens 1 und laufen nicht über. Dies ist bei KI-Berechnungen mit geringer Genauigkeit besonders wichtig und wird auch in schnellen Attention-Implementierungen verwendet.

Dieses Thema üben Zur Themenseite

Weitere Fragen zu KI-Hardware und Software-Stack

  1. Welche Aussage zur Grundidee des „Speculative Decoding“, das die Inferenz großer Sprachmodelle beschleunigt, ist richtig?
  2. Warum sind Nachschlagevorgänge in großen Embedding-Tabellen, wie sie z. B. in Empfehlungssystemen verwendet werden, für KI-Hardware schwer zu handhaben?
  3. Welche Anordnung des KI-Software-Stacks von der nutzernahen oberen Schicht zur hardwarenahen unteren Schicht ist richtig?
  4. Welche Aussage zum Unterschied zwischen „Training“ und „Inferenz“ eines neuronalen Netzes ist richtig?
  5. Welcher der folgenden Gründe erklärt nicht, warum das Training deutlich mehr Speicher benötigt als die Inferenz desselben Modells?