Softmax-Funktion

Aus testwiki
Zur Navigation springen Zur Suche springen

In der Mathematik ist die sogenannte Softmax-Funktion oder normalisierte Exponentialfunktion[1]Vorlage:Rp eine Verallgemeinerung der logistischen Funktion, die einen K-dimensionalen Vektor 𝐳 mit reellen Komponenten in einen K-dimensionalen Vektor σ(𝐳) ebenfalls als Vektor reeller Komponenten in den Wertebereich (0,1) transformiert, wobei sich die Komponenten zu 1 aufsummieren. Der Wert 1 kommt nur im Sonderfall K=1 vor. Die Funktion ist gegeben durch:

σ:K(0,1)K
σ(𝐳)j=ezjk=1Kezk    für j = 1, …, K.

In der Wahrscheinlichkeitstheorie kann die Ausgabe der Softmax-Funktion genutzt werden, um eine kategoriale Verteilung – also eine Wahrscheinlichkeitsverteilung über K 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]Vorlage:Rp[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 K distinkten linearen Funktionen, und die ermittelte Wahrscheinlichkeit für die j-te Klasse gegeben ein Stichprobenvektor x und einem Gewichtsvektor w entspricht:

P(y=j𝐱)=e𝐱𝖳𝐰jk=1Ke𝐱𝖳𝐰k

Dies kann angesehen werden als Komposition von K linearen Funktionen 𝐱𝐱𝖳𝐰1,,𝐱𝐱𝖳𝐰K 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 K-dimensionalen Raum K transformiert wird.

Zusammenhang zur Logit-Funktion

Bei der binären logistischen Regression benötigt man zur vollständigen Beschreibung lediglich die Wahrscheinlichkeit einer Klasse: P(Y=1)=1P(Y=0). Für zwei Klassen ist die Softmax-Funktion:

σ(𝐳)j=ezjez1+ez2    für j = 1, 2 und σ(𝐳)2=1σ(𝐳)1.

Da die zj um eine beliebige Konstante verschoben werden können ohne das Ergebnis zu ändern, gilt:

σ(𝐳)1=ez1ez1+ez2=ez1ez1+ez2ez2ez21=ez1ez2ez1ez2+1=ez~ez~+1=logit1(z~),

mit z~=z1z2 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

  1. 1,0 1,1 Vorlage:Cite book
  2. Vorlage:Internetquelle
  3. Vorlage:Internetquelle
  4. Speeding Up Entmax, Maxat Tezekbayev, Vassilina Nikoulina, Matthias Gallé, Zhenisbek Assylbekov https://arxiv.org/abs/2111.06832v3