Softmax-Funktion
In der Mathematik ist die sogenannte Softmax-Funktion oder normalisierte Exponentialfunktion[1]:198 eine Verallgemeinerung der logistischen Funktion, die einen -dimensionalen Vektor mit reellen Komponenten in einen -dimensionalen Vektor ebenfalls als Vektor reeller Komponenten in den Wertebereich transformiert, wobei sich die Komponenten zu aufsummieren. Der Wert kommt nur im Sonderfall vor. Die Funktion ist gegeben durch:
- für j = 1, …, K.
In der Wahrscheinlichkeitstheorie kann die Ausgabe der Softmax-Funktion genutzt werden, um eine kategoriale Verteilung – also eine Wahrscheinlichkeitsverteilung über unterschiedliche mögliche Ereignisse – darzustellen. Tatsächlich entspricht dies der gradient-log-Normalisierung der kategorialen Wahrscheinlichkeitsverteilung. Somit ist die Softmax-Funktion der Gradient der LogSumExp-Funktion.
Die Softmax-Funktion wird in verschiedenen Methoden der Multiklassen-Klassifikation verwendet, wie bspw. bei der multinomialen logistischen Regression (auch bekannt als Softmax-Regression)[1]:206–209[2], der multiklassen-bezogenen linearen Diskriminantenanalyse, bei naiven Bayes-Klassifikatoren und künstlichen neuronalen Netzen[3]. Insbesondere in der multinomialen logistischen Regression sowie der linearen Diskriminantenanalyse entspricht die Eingabe der Funktion dem Ergebnis von distinkten linearen Funktionen, und die ermittelte Wahrscheinlichkeit für die -te Klasse gegeben ein Stichprobenvektor und einem Gewichtsvektor entspricht:
Dies kann angesehen werden als Komposition von linearen Funktionen und der Softmax-Funktion (wobei das innere Produkt von und bezeichnet). Die Ausführung ist äquivalent zur Anwendung eines linearen Operators definiert durch bei Vektoren , so dass dadurch die originale, möglicherweise hochdimensionale Eingabe in Vektoren im -dimensionalen Raum transformiert wird.
Zusammenhang zur Logit-Funktion
Bei der binären logistischen Regression benötigt man zur vollständigen Beschreibung lediglich die Wahrscheinlichkeit einer Klasse: . Für zwei Klassen ist die Softmax-Funktion:
- für j = 1, 2 und .
Da die um eine beliebige Konstante verschoben werden können ohne das Ergebnis zu ändern, gilt:
mit und der Inversen der Logit-Funktion.
Alternativen
Softmax erzeugt Wahrscheinlichkeitsvorhersagen welche über ihrem Träger dicht besetzt sind. Andere Funktionen wie sparsemax oder -entmax können benutzt werden, wenn dünn besetzte Wahrscheinlichkeitsvorhersagen erzeugt werden sollen[4].
Einzelnachweise
- Christopher M. Bishop: Pattern Recognition and Machine Learning. Springer, 2006.
- Computer Science Department: Unsupervised Feature Learning and Deep Learning Tutorial. Stanford University, abgerufen am 30. Januar 2019 (englisch).
- Sophia Tamm: Einführung in neuronale Netze. In: Seminar Maschinelles Lernen - Dr. Zoran Nikolić. Universität Köln, 30. Mai 2019, abgerufen am 24. Mai 2022.
- Speeding Up Entmax, Maxat Tezekbayev, Vassilina Nikoulina, Matthias Gallé, Zhenisbek Assylbekov https://arxiv.org/abs/2111.06832v3