Softmax-Funktion

normalisierte Exponentialfunktion (Mathematik)

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