Anmelden

Was sind Aktivierungsfunktionen?

Aktivierungsfunktionen sind mathematische Funktionen, welche die Ausgabe eines Neurons berechnen. Sie bringen Nichtlinearität in das Netzwerk, wodurch es in der Lage ist, schwerere Muster zu lernen. Ohne Aktivierungsfunktionen wäre ein Neurales Netzwerk nur in der Lage, lineare Muster zu lernen wie zum Beispiel den Preis von Fünf Äpfeln. Dadurch würde die Leistungsfähigkeit von einem Neuralen Netzwerk stark eingeschränkt und kann somit keine schweren Muster mehr lernen.


Warum sind Aktivierungsfunktionen wichtig?

Aktivierungsfunktionen sind das Herzstück eines Neuralen Netzwerks. Sie ermöglichen es dem Netzwerk, nichtlineare Zusammenhänge zwischen den Eingabedaten und den gewünschten Ausgaben zu lernen. Durch die Verwendung nichtlinearer Aktivierungsfunktionen kann das Netzwerk schwerere Muster, wie das Erkennen von Objekten in Bildern oder das Verständnis natürlicher Sprache, erlernen.


Verwendung in einem Neuralen Netzwerk

Aktivierungsfunktionen werden in einem Neuralen Netzwerk bei dem Vorhersageprozess und Trainingsprozess verwendet. Hierbei ist es wichtig zu beachten, dass in den beiden Prozessen die Aktivierungsfunktion nicht auf die gleiche Weise verwendet wird.

Aktivierungsfunktion im Vorhersageprozess

In dem Vorhersageprozess werden Aktivierungsfunktionen verwendet, um die Ausgabe eines Neurons zu berechnen. Hierbei bekommt die Aktivierungsfunktion einen Eingabewert, der davor berechnet wurde.

z = x1 * w1 + x2 * w2 + b1

Dieser Berechnete Wert wird dann an eine Aktivierungsfunktion weitergegeben z.B. ReLU.
Hier ist die Formel für ReLU (Rectified linear unit):

maximum(0, x)

Aktivierungsfunktion im Trainingsprozess

In dem Trainingsprozess werden Aktivierungsfunktionen verwendet, um die Steigung im Bezug auf den Fehler des Netzwerks zu berechnen. Um die Steigung der Aktivierungsfunktion zu bekommen wird die sogenannte Ableitung (Derivative) der Aktivierungsfunktion berechnet.
Hier ist die Formel für die Ableitung von ReLU:

1, wenn x > 0
0, wenn x <= 0

Die Steigung der Aktivierungsfunktion ist ein wichtiger Bestandteil von dem Trainingsprozess. Sie zeigt dem Netzwerk, in welche Richtung (Positiv oder Negativ) ein Parameter Optimiert werden muss, um den Fehler zu verringern.


Liste mit Aktivierungsfunktionen

NameFunktionAbleitungAusgabebereich
Identity
y=x
1
-Unendlich bis Unendlich
Binary step
Wenn x < 0 dann y = 0
Wenn x >= 0 dann y = 1
0
0 oder 1
Sigmoid
y= 0 1 1 1+ 0 e 1 -x
0 1 1 1+ 0 e 1 -x  x 0 1- 0 1 1 1+ 0 e 1 -x
0 bis 1
Hyperbolic tangent
y= 00 e 1 x - 0 e 1 -x 10 e 1 x + 0 e 1 -x  oder  0 2 1 1+ 0 e 1 -2x -1
1- 000 e 1 x - 0 e 1 -x 10 e 1 x + 0 e 1 -x 1 2  oder 1 - 0 00 2 1 1+ 0 e 1 -2x -1 1 2
-1 bis 1
Rectified linear unit
Wenn x <= 0 dann y = 0
Wenn x > 0 dann y = x
Wenn x <= 0 dann 0
Wenn x > 0 dann 1
0 bis Unendlich
Softplus
y=log(1 + 0 e 1 x )
0 1 1 1+ 0 e 1 -x
0 bis Unendlich
Leaky rectified linear unit
Wenn x <= 0 dann y = 0,01x
Wenn x > 0 dann y = x
Wenn x <= 0 dann 0,01
Wenn x > 0 dann 1
-Unendlich bis Unendlich
Sigmoid linear unit
y= 0 x 1 1+ 0 e 1 -x
0 1+ 0 e 1 -x + 0 xe 1 -x 10 0 1+ 0 e 1 -x 1 2
-0,278 bis Unendlich
Gaussian
y= 0 e 10 -x 1 2
-2x 0 e 10 -x 1 2
0 bis 1