Softmax ist die Funktion, die eine Reihe von Zahlen in eine Verteilung umrechnet, die sich zu eins addiert. Sie steht am Ausgang fast jedes Modells, das zwischen mehreren Möglichkeiten wählt, und macht aus Rohwerten vergleichbare Anteile.
- Softmax
Die Funktion, die eine Reihe von Zahlen in eine Verteilung umrechnet, die sich zu eins addiert.
Beispiel: „Nach dem Softmax standen für die fünf Kategorien die Werte 0,61, 0,17, 0,11, 0,07 und 0,04.“Was sie bewirkt: Große Werte werden überproportional verstärkt, kleine gedrückt. Der Abstand zwischen den Kandidaten wird dadurch deutlicher, als er in den Rohwerten war.
Ihr Eingang sind die Logits, also die unbearbeiteten Ausgabewerte des Modells.
Was die Zahlen danach bedeuten
Anteile, keine Wahrscheinlichkeiten im strengen Sinn. Ein Wert von 0,97 heißt, dass diese Möglichkeit unter den vorgegebenen am besten passt, und nicht, dass die Antwort in 97 von 100 Fällen stimmt. Neuronale Netze sind in dieser Hinsicht verlässlich zu selbstsicher, und das lässt sich nur durch eine Nacheichung an echten Daten beheben.
Wo sie bei Sprachmodellen sitzt
Am Ende jedes Schrittes. Für jedes mögliche nächste Textstück berechnet das Modell einen Wert, und diese Funktion macht daraus die Verteilung, aus der gezogen wird. Die Temperature greift unmittelbar dort ein: Sie streckt oder staucht die Verteilung vor dem Ziehen.
Warum der Begriff trotzdem selten gebraucht wird
Weil er unterhalb der Oberfläche liegt. Wer Modelle über Schnittstellen benutzt, sieht die Verteilung selten und die Funktion nie; sie taucht erst auf, wenn jemand ein Modell selbst betreibt oder die Rohwerte auswertet. Für das Verständnis der Sicherheitswerte in Ergebnissen lohnt sie trotzdem.
Was der Name sagt
Dass es eine weiche Fassung der Auswahl des größten Werts ist. Eine harte Auswahl nennt nur den Sieger, diese Funktion verteilt Anteile auf alle und lässt den Abstand erkennbar. Genau diese Weichheit ist die Voraussetzung dafür, dass sich das Modell überhaupt trainieren lässt.