Aktivierungsfunktion

Aktivierungsfunktionen nehmen den gewichteten Input eines Neurons als Eingabe und transformieren diesen zur Ausgabe des Neurons an nachfolgende Zellen. Je nach Funktion wird die Ausgabe auf einen bestimmten Wertebereich eingegrenzt, beispielsweise auf (0;1) bei der sigmoiden Funktion. Daher werden bestimmte Aktivierungsfunktionen für spezielle Methoden bzw. Architekturen verwendet, um Vorteile ihres Wertebreichs nutzen zu können.

Nachfolgend sind die wichtigsten Aktivierungsfunktionen visualisiert und mögliche Anwendungen erläutert.

Die lineare Aktivierungsfunktion ist im Falle von Tensorflow die standardmäßig verwendete Funktion, falls keine Aktivierungsfunktion spezifiziert wird. Sie gibt das Eingangssignal genau wieder raus, da die Funktion als f(x)=x definiert ist. Sie wird unter anderem für Regressionsprobleme verwendet, da sie jede Zahl ausgeben kann. Je nach Größenordnung der Ergebnisse empfielt sich jedoch eine Skalierung.
Die gleichgerichtete Lineare Aktivierungsfunktion (rectified linear function) gibt lediglich positive Werte zurück, da sie als f(x)=max(0,x) definiert ist. Sie wird mittlerweise beinahe nur noch verwendet in tiefen Neuronalen Netzen und hat die Sigmoide Aktiverungsfunktion etwas verdrängt, da durch ihren Ausgaberaum einige Probleme (z.B. Gradient Vanishing) nicht auftreten können.

Die sigmoide Aktivierungsfunktion wandelt den Input auf den Wertebreich zwischen 0 und 1 um, wodurch die Ausgabe auch als Wahrscheinlichkeit für eine Klasse betrachtet werden kann. Dabei wird 0.5 als Grenze verwendet. Die Softmax-Aktivierung ist eine Verallgemeinerung der Sigmoid Funktion und kann für nicht-binäre Klassifikationsprobleme verwendet werden, da alle Ausgaben aufsummiert 1 ergeben.
Die Tanh-Funktion ist ähnlich zur Sigmoid Funktion, umfasst jedoch auch negative Bereiche bis ausschließlich -1. Sie wird meist im Zusammenhang mit Änderungen verwendet, wobei die Ausgabe den Änderungssatz abbildet. Unter anderem wird die Tanh-Funktion in RNN-Zellen innerhalb von rekurrenten neuronalen Netzen verwendet, um über das Speichern einer Information zu entscheiden.

Weiterführende Links:
12 Types of Neural Network Activation Functions: https://www.v7labs.com/blog/neural-networks-activation-functions
How to choose an Activation Function for Deep Learning: https://machinelearningmastery.com/choose-an-activation-function-for-deep-learning/

Schreibe einen Kommentar