Warum verwenden wir ReLU in neuronalen Netzen und wie verwenden wir es?

31

Warum verwenden wir bei neuronalen Netzen gleichgerichtete Lineareinheiten (ReLU)? Wie verbessert das das neuronale Netzwerk?

Warum sagen wir, dass ReLU eine Aktivierungsfunktion ist? Funktioniert die Aktivierung von Softmax nicht für neuronale Netze? Ich vermute, dass wir beide verwenden, ReLU und Softmax, wie folgt:

Neuron 1 mit Softmax-Ausgabe ----> ReLU auf der Ausgabe von Neuron 1, die
Eingabe von Neuron 2 ist ---> Neuron 2 mit Softmax-Ausgabe -> ...

so dass die Eingabe von Neuron 2 grundsätzlich ReLU (softmax (x1)) ist. Ist das richtig?

user2896492634
quelle

Antworten:

36

Die ReLU-Funktion istNormalerweise wird dies elementweise auf die Ausgabe einer anderen Funktion angewendet, beispielsweise eines Matrixvektorprodukts. Bei MLP-Anwendungen ersetzen Gleichrichtereinheiten alle anderen Aktivierungsfunktionen mit Ausnahme der Ausleseschicht. Aber ich nehme an, Sie könnten sie kombinieren, wenn Sie möchten.f(x)=max(0,x).

Eine Möglichkeit zur Verbesserung neuronaler Netze durch ReLUs ist die Beschleunigung des Trainings. Die Gradientenberechnung ist sehr einfach (entweder 0 oder 1, abhängig vom Vorzeichen von x ). Auch der Rechenschritt einer ReLU ist einfach: Negative Elemente werden auf 0,0 gesetzt - keine Exponentiale, keine Multiplikations- oder Divisionsoperationen.

Gradienten von logistischen und hyperbolischen Tangens-Netzwerken sind kleiner als der positive Anteil der ReLU. Dies bedeutet, dass der positive Teil im Verlauf des Trainings schneller aktualisiert wird. Dies ist jedoch mit Kosten verbunden. Der 0-Gradient auf der linken Seite hat ein eigenes Problem, das als "tote Neuronen" bezeichnet wird. Bei diesem Problem werden die eingehenden Werte durch eine Gradientenaktualisierung auf eine ReLU gesetzt, sodass die Ausgabe immer Null ist. Modifizierte ReLU-Einheiten wie ELU (oder Leaky ReLU oder PReLU usw.) können dies verbessern.

ddxReLU(x)=1x>0 . Der Gradient einer Sigma-Einheit beträgt dagegen höchstens ; Andererseits ist für Eingaben in einer Region nahe 0 günstiger, da (ungefähr).0,25Tanh0,25<ddxTanh(x)1x[-1,31,1,31]

Sycorax sagt Reinstate Monica
quelle
@aginensky Sie können Fragen stellen, indem Sie oben auf der Seite auf die Schaltfläche Frage stellen klicken.
Sycorax sagt Reinstate Monica
Ich sehe keine Beweise dafür, dass ich eine Frage stellen wollte oder dass ich an dieser Seite teilgenommen habe. Ehrlich gesagt bin ich erstaunt, wie gut ReLU funktioniert, aber ich habe aufgehört, es in Frage zu stellen :).
Aginensky
@aginensky Es scheint, dass der Kommentar in der Zwischenzeit entfernt wurde.
Sycorax sagt Reinstate Monica
Der Kommentar wurde weder von mir entfernt, noch wurde ich informiert. Ich habe aufgehört, Fragen zu beantworten, und das heißt, ich bin auch mit dem Kommentieren fertig.
Aginensky
@aginensky Ich weiß nicht, warum dies dazu führen würde, dass Sie aufhören zu kommentieren. Wenn Sie Fragen zu Kommentaren und zur Moderation haben, können Sie in meta.stats.SE eine Frage stellen.
Sycorax sagt Reinstate Monica
4

Ein wichtiger Punkt ist, dass ReLU idempotent ist. Vorausgesetzt, dass ReLU , ist es leicht zu erkennen, dass für jede endliche Komposition gilt . Diese Eigenschaft ist für tiefe neuronale Netze sehr wichtig, da jede Schicht im Netz eine Nichtlinearität anwendet. Wenden wir nun zwei Funktionen der Sigmoid-Familie 1-3 mal wiederholt auf denselben Eingang an:ρ(x)=max(0,x)ρρρρ=ρ

Bildbeschreibung hier eingeben

Sie können sofort sehen, dass Sigmoid-Funktionen ihre Eingaben "quetschen", was zu dem Problem des verschwindenden Gradienten führt: Derivate nähern sich Null, wenn sich (die Anzahl der wiederholten Anwendungen) unendlich nähert.n

Eli Korvigo
quelle
0

ReLU ist die maximale Funktion (x, 0) mit Eingabe x, z. B. Matrix aus einem gefalteten Bild. ReLU setzt dann alle negativen Werte in der Matrix x auf Null und alle anderen Werte werden konstant gehalten.

ReLU wird nach der Faltung berechnet und hat daher eine nichtlineare Aktivierungsfunktion wie tanh oder sigmoid.

Softmax ist ein Klassifikator am Ende des neuronalen Netzes. Dies ist eine logistische Regression, um die Ausgaben auf Werte zwischen 0 und 1 zu regulieren.

CNN Forward Pass zB: Eingabe-> Konv-> ReLU-> Pool-> Konv-> ReLU-> Pool-> FC-> Softmax

Randy Welt
quelle
8
Downvoting. Das ist eine sehr schlechte Antwort! Softmax ist kein Klassifikator! Es ist eine Funktion, die die Ausgaben auf den Bereich [0,1] normiert (skaliert) und sicherstellt, dass sie 1 ergeben. Die logistische Regression "reguliert" nichts! Der Satz "ReLU wird nach der Faltung berechnet und daher eine nichtlineare Aktivierungsfunktion wie tanh oder sigmoid." fehlt ein Verb oder Sinn.
Jan Kukacka
1
Die Antwort ist nicht so schlecht. Der Satz ohne Verb muss „relu nach der Faltung berechnet und IST daher eine nichtlineare Aktivierungsfunktion wie tanh oder sigmoid.“ Softmax als Klassifikator zu betrachten, macht ebenfalls Sinn. Es kann als probabilistischer Klassifikator angesehen werden, der jeder Klasse eine Wahrscheinlichkeit zuweist. Es "normalisiert" / "normalisiert" die Ausgänge auf das Intervall [0,1].
user118967
0

ReLU ist ein Literal-Switch. Mit einem elektrischen Schalter ergibt 1 Volt in 1 Volt out, n Volt in ergibt n Volt out, wenn eingeschaltet. Ein / Aus, wenn Sie sich entscheiden, auf Null zu schalten, ergibt genau das gleiche Diagramm wie ReLU. Die gewichtete Summe (Skalarprodukt) mehrerer gewichteter Summen ist immer noch ein lineares System. Für einen bestimmten Eingang sind die ReLU-Schalter einzeln ein- oder ausgeschaltet. Dies führt zu einer bestimmten linearen Projektion vom Eingang zum Ausgang, da verschiedene gewichtete Summen der gewichteten Summe von ... durch die Schalter miteinander verbunden werden. Für ein bestimmtes Eingabe- und ein bestimmtes Ausgabe-Neuron gibt es ein zusammengesetztes System von gewichteten Summen, die tatsächlich zu einer einzigen effektiven gewichteten Summe zusammengefasst werden können. Da der Zustand der ReLU-Schalter bei Null liegt, gibt es keine plötzlichen Unterbrechungen im Ausgang für allmähliche Änderungen im Eingang.

Es gibt andere numerisch effiziente Algorithmen für gewichtete Summen (Skalarprodukt) wie die FFT- und die Walsh-Hadamard-Transformation. Es gibt keinen Grund, warum Sie diese nicht in ein auf ReLU basierendes neuronales Netzwerk integrieren und von den Rechengewinnen profitieren können. (zB Feste Filterbank Neuronale Netze.)

Sean O'Connor
quelle