Multi-Class Neural Networks: Softmax

Denken Sie daran, dass die logistische Regression ein Dezimal produziertzwischen 0 und 1.0. Beispielsweise deutet eine logistische Regressionsausgabe von 0,8 aus einem E-Mail-Klassifikator auf eine 80% ige Wahrscheinlichkeit hin, dass eine E-Mail Spam ist, und eine 20% ige Wahrscheinlichkeit, dass sie kein Spam ist. Offensichtlich ist die Summe der Wahrscheinlichkeiten, dass eine E-Mail entweder Spam oder kein Spam ist, 1,0.

Softmax erweitert diese Idee in eine Multi-Klassen-Welt. Das heißt, Softmax weist jeder Klasse in einem Mehrklassenproblem dezimale Wahrscheinlichkeiten zu.Diese Dezimalwahrscheinlichkeiten müssen sich zu 1,0 addieren. Diese zusätzliche Einschränkung hilft dem Training, schneller zu konvergieren, als es sonst der Fall wäre.

Wenn wir beispielsweise zu der Bildanalyse zurückkehren, die wir in Abbildung 1 gesehen haben, erzeugt Softmaxmight die folgenden Wahrscheinlichkeiten eines Bildes, das zu einer bestimmten Klasse gehört:

Klasse Wahrscheinlichkeit
Apfel 0,001
Bär 0,04
Süßigkeiten 0.008
hund 0,95
ei 0,001

Softmax ist implementiert durch eine neuronale netzwerk schicht nur beforethe ausgang schicht. Die Softmax-Ebene muss die gleiche Anzahl von Knoten haben wie die Ausgabeebene.

Ein tiefes neuronales Netz mit einer Eingangsschicht, zwei unscheinbaren versteckten Schichten, dann einer Softmax-Schicht und schließlich einer Ausgangsschicht mit der gleichen Anzahl von Knoten wie die Softmax-Schicht.

Abbildung 2. Eine Softmax-Schicht innerhalb eines neuronalen Netzwerks.

Klicken Sie auf das Plus-Symbol, um die Softmax-Gleichung anzuzeigen.

Die Softmax-Gleichung lautet wie folgt:

$$p(y = j|\textbf{x}) = \frac{e^{(\textbf{w}_j^{T}\textbf{x} + b_j)}}{\sum_{k\in K} {e^{(\textbf{w}_k^{T}\textbf{x} + b_k)}} }$$

Hinweis dass diese Formel im Grunde die Formel für logistikregression in mehrere Klassen erweitert.

Softmax-Optionen

Betrachten Sie die folgenden Varianten von Softmax:

  • Full Softmax ist der Softmax, über den wir gesprochen haben; das heißt, Softmax berechnet eine Wahrscheinlichkeit für jede mögliche Klasse.

  • Candidate sampling bedeutet, dass Softmax eine Wahrscheinlichkeit für alle positiven Labels berechnet, aber nur für eine zufällige Stichprobe negativer Labels. Wenn wir beispielsweise feststellen möchten, ob ein Eingabebild ein Beagle oder ein Bluthund ist, müssen wir nicht für jedes Nicht-Doggy-Beispiel Wahrscheinlichkeiten angeben.

Full Softmax ist ziemlich billig, wenn die Anzahl der Klassen klein istaber wird unerschwinglich teuer, wenn die Anzahl der Klassen steigt.Kandidatenstichproben können die Effizienz bei Problemen mit einer großen Anzahl von Klassen verbessern.

Ein Label vs. Viele Labels

Softmax geht davon aus, dass jedes Beispiel ein Mitglied von genau einer Klasse ist.Einige Beispiele können jedoch gleichzeitig Mitglied mehrerer Klassen sein.Für solche Beispiele:

  • Sie dürfen Softmax nicht verwenden.
  • Sie müssen sich auf mehrere logistische Regressionen verlassen.

Angenommen, Ihre Beispiele sind Bilder, die genau ein Element enthalten – ein Stück Obst. Softmax kann die Wahrscheinlichkeit dieses einen Gegenstandes bestimmeneine Birne, eine Orange, ein Apfel und so weiter sein. Wenn Ihre Beispiele Bilder sind, die alle möglichen Dinge enthalten – Schalen mit verschiedenen Obstsorten -, müssen Sie stattdessen mehrere logistische Regressionen verwenden.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.