Ich habe an anderer Stelle gelesen, dass die Auswahl der Aktivierungsfunktion für versteckte Schichten in einem NN auf den eigenen Bedürfnissen basieren sollte. Wenn Sie also Werte im Bereich von -1 bis 1 benötigen , verwenden Sie tanh und Sigmoid für den Bereich von 0 bis 1.
Meine Frage ist, woher weiß man, was man braucht ? Basiert es auf dem Bereich der Eingabeebene, verwenden Sie beispielsweise die Funktion, die den gesamten Wertebereich der Eingabeebene umfassen kann, oder spiegeln Sie irgendwie die Verteilung der Eingabeebene wider (Gaußsche Funktion)? Oder ist das Bedürfnis problem- / domänenspezifisch und die eigene Erfahrung / Urteilskraft erforderlich, um diese Wahl zu treffen? Oder ist es einfach "das zu verwenden, was den besten quervalidierten minimalen Trainingsfehler ergibt?"
quelle
1 + (1 / exp(-sum))
. Das Erfordernis sehr schwer verständlich zu machen, ohne beide in jedem Datensatz auszuprobieren. Der Bedarf, wie Sie ihn hier beschreiben, hängt von der tatsächlich erlernten Beziehung ab, dh ein Binärdatensatz lernt bei unterschiedlichen Aktivierungen schneller oder überhaupt nicht.Antworten:
LeCun bespricht dies in Abschnitt 4.4 von Efficient Backprop . Die Motivation ähnelt der Motivation zur Normalisierung der Eingabe auf den Mittelwert Null (Abschnitt 4.3). Es ist wahrscheinlicher, dass die durchschnittlichen Ausgaben der tanh-Aktivierungsfunktion nahe Null sind als die Sigmoid-Ausgabe, deren durchschnittliche Ausgabe positiv sein muss.
quelle
Der im ersten Absatz der Frage erwähnte Bedarf bezieht sich eher auf die Aktivierungsfunktion der Ausgangsschicht als auf die Aktivierungsfunktion der verborgenen Schicht. Ausgänge im Bereich von 0 bis 1 sind praktisch, da sie Wahrscheinlichkeiten direkt darstellen können. IIRC, ein Netzwerk mit mehreren Aktivierungsfunktionen für die Ausgabeschicht, kann jedoch trivial in ein Netzwerk mit einer Aktivierungsfunktion für die logistische Ausgabeschicht umgewandelt werden, sodass es in der Praxis nicht wirklich wichtig ist.
IIRC Der Grund für die Verwendung der tanh-Funktion anstelle der logistischen Aktivierungsfunktion in den versteckten Einheiten, dh die Änderung einer Gewichtung durch Backpropagation, hängt sowohl von der Ausgabe des Neurons der versteckten Schicht als auch von der Ableitung der Aktivierungsfunktion ab, also von der logistischen Aktivierung Mit dieser Funktion können beide gleichzeitig auf Null gesetzt werden, was zum Einfrieren der verborgenen Ebeneneinheit führen kann.
Kurz gesagt, verwenden Sie tanh für Aktivierungsfunktionen für ausgeblendete Ebenen, und wählen Sie die Aktivierungsfunktion für die Ausgabeebene aus, um die gewünschten Einschränkungen für die Ausgabe zu erzwingen (allgemeine Auswahlmöglichkeiten: linear - keine Einschränkungen, logistische Ausgabe liegt zwischen 0 und 1 und exponentielle Ausgabe - streng positiv).
quelle
Das allgemeine Konzept, um Sigmoid für Ihren Zweck zu wählen, besteht darin, das zu wählen, das der Regel entspricht. Ihre Ausgabewerte liegen im Bereich der Punkte, wodurch die zweite Ableitung der Sigmoidfunktion maximal wird.
quelle