Softmax-Funktion

Softmax-Funktion

Die Softmax-Funktion wandelt eine Liste beliebiger Zahlen in Wahrscheinlichkeiten um, die zusammen 100 Prozent ergeben. Sie steht am Ende fast jedes KI-Modells und entscheidet dort, wie sicher sich das System bei jeder möglichen Antwort ist.

Ein KI-System rechnet intern mit ganz normalen Zahlen. Am Ende einer solchen Rechnung steht zum Beispiel eine Liste wie 2,1 / 0,4 / -1,3 — je eine Zahl für jede mögliche Antwort. Diese Zahlen sagen zunächst nur: je größer, desto eher. Was fehlt, ist eine Aussage darüber, wie sicher sich das System ist. Genau das leistet die Softmax-Funktion: Sie rechnet die Liste in Prozentwerte um, die zusammen exakt 100 Prozent ergeben. Aus 2,1 / 0,4 / -1,3 wird dann etwa 82 Prozent / 15 Prozent / 3 Prozent.

Warum aus Zahlen erst Prozente werden müssen

Rohe Zahlen kann man vergleichen, aber nicht deuten. Ist eine 2,1 ein sicheres Ergebnis oder ein knappes? Das hängt davon ab, wie hoch die anderen Zahlen sind. Prozentwerte lösen dieses Problem, weil sie immer relativ zueinander stehen. Erst dadurch lässt sich sagen: Das Modell ist sich zu 82 Prozent sicher — oder eben nur zu 34 Prozent.

Diese Information ist praktisch wertvoll. Ein medizinisches Bildanalyse-System, das eine Auffälligkeit nur mit 40 Prozent Sicherheit erkennt, sollte einen Menschen hinzuziehen. Bei 98 Prozent ist das weniger dringend. Ohne Softmax gäbe es diese Abstufung nicht, sondern nur ein rohes Ranking der Möglichkeiten.

Auch beim Lernen ist der Schritt notwendig. Ein Modell wird trainiert, indem man seinen Fehler misst und die internen Werte leicht anpasst. Diese Fehlermessung setzt voraus, dass die Ausgabe eine Wahrscheinlichkeit ist. Man vergleicht dann die vorhergesagten Prozente mit dem, was tatsächlich richtig war. Ohne Softmax fehlt der Maßstab für den Vergleich.

Exponenten, Summe, Anteil

Die Rechnung besteht aus zwei Schritten. Zuerst wird jede Zahl in der Liste zum Exponenten der Zahl e, also rund 2,718. Aus 2,1 wird so etwa 8,2, aus -1,3 wird etwa 0,27. Dieser Schritt hat zwei Effekte: Alle Werte werden positiv, und große Werte wachsen deutlich stärker als kleine. Danach teilt man jeden Wert durch die Summe aller Werte. Das Ergebnis sind Anteile, die sich zwangsläufig zu 1 addieren.

Der Name erklärt sich aus diesem Verhalten. Eine harte Maximum-Auswahl würde nur den größten Wert nehmen und alle anderen auf null setzen. Softmax macht das weicher: Der größte Wert bekommt den Löwenanteil, die anderen behalten aber einen Rest. Deshalb „soft“ statt hart.

Ein Regler namens Temperatur steuert, wie weich das Ergebnis ausfällt. Teilt man alle Zahlen vor der Rechnung durch einen Wert über 1, rücken die Prozente näher zusammen und die Ausgabe wird zufälliger. Bei einem Wert unter 1 spreizen sie sich, und der Favorit dominiert fast vollständig. Genau dieser Regler steckt in vielen Chatbots hinter der Einstellung für „kreativ“ oder „präzise“.

Softmax in Chatbots und Bilderkennung

Jedes Sprachmodell benutzt Softmax bei jedem einzelnen Wort, das es schreibt. Das Modell bewertet zehntausende mögliche nächste Wortbausteine, Softmax macht daraus eine Wahrscheinlichkeitsverteilung, und dann wird daraus ein Baustein gezogen. Weil das Ziehen zufällig ist, bekommt man auf dieselbe Frage nicht immer dieselbe Antwort.

Bei Bilderkennung ist der Effekt sichtbarer. Eine Foto-App, die schreibt „Golden Retriever, 94 Prozent“, zeigt direkt ein Softmax-Ergebnis. Auch Spamfilter und Übersetzungssysteme geben ihre Einschätzungen auf diesem Weg aus.

Ein verbreiteter Irrtum ist dabei wichtig zu kennen: Die Prozentzahl ist keine Aussage über Wahrheit. Ein Modell kann sich zu 99 Prozent sicher sein und trotzdem falsch liegen. Softmax misst nur, wie stark das Modell eine Option gegenüber den anderen bevorzugt. Fachleute nennen solche überzogene Sicherheit Overconfidence, und sie ist bei modernen Netzen ein bekanntes Problem.

Produkten dorto

Aktuelle Narichten

Subscribe free. Unsubscribe the second it sucks.

High-signal news across AI, business, UX, and tech. Every morning.