Wie flexibel ist die Verbindung zwischen Zielfunktion und Aktivierungsfunktion der Ausgangsschicht?

10

In vielen neuronalen Netzwerkpaketen scheint es Standard zu sein, die zu minimierende Zielfunktion mit der Aktivierungsfunktion in der Ausgabeschicht zu koppeln.

Zum Beispiel ist es für eine lineare Ausgabeschicht, die für die Regression verwendet wird, Standard (und oft nur die Wahl), eine quadratische Fehlerzielfunktion zu haben. Eine andere übliche Paarung ist die logistische Ausgabe und der Protokollverlust (oder die Kreuzentropie). Und noch ein anderer ist Softmax und Multi Log Loss.

Unter Verwendung der Notation für den Voraktivierungswert (Summe der Gewichte mal Aktivierungen aus der vorherigen Schicht), für die Aktivierung, für die für das Training verwendete Grundwahrheit, für den Index des Ausgangsneurons.a y izayi

  • Die lineare Aktivierung geht mit dem quadratischen Fehler1ai=zi12ich(yich- -einich)2

  • Die Sigmoidaktivierung geht mit dem Ziel Logloss / Cross-Entropy einher -i(yilog(ai)+(1-yi)log(1-ai))einich=11+e- -zich- -ich(yichlÖG(einich)+(1- -yich)lÖG(1- -einich))

  • Die Softmax-Aktivierung geht mit dem Protokollverlustziel für mehrere Klassen einher limiteinich=ezichjezj- -ich(yichlÖG(einich))

Das sind die, die ich kenne, und ich gehe davon aus, dass es viele gibt, von denen ich noch nichts gehört habe.

Es scheint, dass der Protokollverlust nur funktionieren und numerisch stabil sein würde, wenn die Ausgabe und die Ziele im Bereich [0,1] liegen. Daher ist es möglicherweise nicht sinnvoll, eine lineare Ausgabeschicht mit einer logarithmischen Zielfunktion zu versuchen. Es sei denn, es gibt eine allgemeinere Logloss-Funktion, die mit Werten von umgehen kann , die außerhalb des Bereichs liegen?y

Es scheint jedoch nicht ganz so schlimm zu sein, die Sigmoid-Ausgabe mit einem quadratischen Fehlerziel zu versuchen. Es sollte stabil sein und zumindest konvergieren.

Ich verstehe, dass ein Teil des Entwurfs hinter diesen Paarungen darin besteht, dass die Formel für - wobei der Wert der Zielfunktion ist - für die Rückausbreitung einfach ist. Es sollte jedoch weiterhin möglich sein, diese Ableitung unter Verwendung anderer Paarungen zu finden. Es gibt auch viele andere Aktivierungsfunktionen, die in Ausgabeschichten nicht häufig zu sehen sind, aber möglicherweise möglich sind, z. B. und wo nicht klar ist, welche Zielfunktion angewendet werden könnte.δE.δzE.tanh

Gibt es Situationen beim Entwerfen der Architektur eines neuronalen Netzwerks, in denen Sie "nicht standardmäßige" Paarungen von Ausgangsaktivierung und Zielfunktionen verwenden würden oder sollten?

Neil Slater
quelle

Antworten:

4

Es ist nicht so sehr die Aktivierungsfunktion, die Sie verwenden, die bestimmt, welche Verlustfunktion Sie verwenden sollten, sondern vielmehr die Interpretation der Ausgabe.

Wenn die Ausgabe eine Wahrscheinlichkeit sein soll, ist der Protokollverlust der richtige Weg.

Wenn die Ausgabe ein generischer Wert ist, ist der mittlere quadratische Fehler der Standardweg. Wenn Ihre Ausgabe beispielsweise ein Graustufenpixel mit einer Graustufe war, die durch eine Zahl von 0 bis 1 gekennzeichnet ist, ist es möglicherweise sinnvoll, eine Sigmoid-Aktivierungsfunktion mit einer Zielfunktion für den mittleren quadratischen Fehler zu verwenden.

patapouf_ai
quelle