Ich wähle die Aktivierungsfunktion für die Ausgabeebene abhängig von der Ausgabe, die ich benötige, und den Eigenschaften der Aktivierungsfunktion, die ich kenne. Zum Beispiel wähle ich die Sigmoid-Funktion, wenn ich mich mit Wahrscheinlichkeiten befasse, eine ReLU, wenn ich mich mit positiven Werten befasse, und eine lineare Funktion, wenn ich mich mit allgemeinen Werten befasse.
In versteckten Schichten verwende ich eine undichte ReLU, um tote Neuronen anstelle der ReLU und der Tanh anstelle des Sigmoid zu vermeiden. Natürlich verwende ich keine lineare Funktion in versteckten Einheiten.
Die Wahl für sie in der verborgenen Ebene ist jedoch hauptsächlich auf Versuch und Irrtum zurückzuführen.
Gibt es eine Faustregel, welche Aktivierungsfunktion in bestimmten Situationen wahrscheinlich gut funktioniert? Nehmen Sie den Begriff Situationen so allgemein wie möglich: Er könnte sich auf die Tiefe der Schicht, auf die Tiefe des NN, auf die Anzahl der Neuronen für diese Schicht, auf den von uns gewählten Optimierer und auf die Anzahl der Eingabemerkmale von beziehen diese Schicht, zur Anwendung dieses NN usw.
In seiner / ihrer Antwort verweist cantordust auf andere Aktivierungsfunktionen , dass ich nicht erwähnen, wie ELU und SELU. Diese Infos sind mehr als willkommen. Je mehr Aktivierungsfunktionen ich jedoch entdecke, desto verwirrter ist die Auswahl der Funktion, die in verborgenen Ebenen verwendet werden soll. Und ich denke nicht, dass das Werfen einer Münze eine gute Möglichkeit ist, eine Aktivierungsfunktion zu wählen.
quelle
Ich weiß nicht, an welchen neuronalen Netzen Sie arbeiten. Man sollte aber auch Tanh-Aktivierungsfunktionen berücksichtigen, wenn man sich mit wiederkehrenden neuronalen Netzen befasst. Der Grund dafür ist, explodierende Gradientenprobleme zu vermeiden, da die tanh-Funktion beispielsweise an die Differenz der RELU-Funktion gebunden ist.
quelle