Neuronale Netze (Teil 1)

Ahmed Imam
Ahmed Imam

Follow

Jun 16, 2020 – 6 min read

Feed-Forward Neural Networks (FFNN)

In seiner allgemeinsten Form ist ein neuronales Netzwerk eine Maschine, die die Art und Weise modelliert, in der das Gehirn eine bestimmte Aufgabe oder Funktion von Interesse ausführt; Das Netz wird in der Regel mit Hilfe elektronischer Komponenten implementiert oder in Software auf einem digitalen Computer simuliert.

Um eine gute Leistung zu erzielen, verwenden neuronale Netze eine massive Verbindung einfacher Rechenzellen, die als "neurons", perceptrons oder „Verarbeitungseinheiten“ bezeichnet werden.

Wir können daher folgende Definition eines neuronalen Netzes anbieten:

Ein neuronales Netz ist ein massiv paralleler, verteilter Prozessor, der aus einfachen Verarbeitungseinheiten besteht und eine natürliche Neigung hat, Erfahrungswissen zu speichern und zur Nutzung bereitzustellen. Es ähnelt dem Gehirn in zweierlei Hinsicht:

  1. Das Netzwerk erwirbt Wissen aus seiner Umgebung durch einen Lernprozess.
  2. Die Verbindungsstärken der Neuronen untereinander, die so genannten synaptischen Gewichte, werden verwendet, um das erworbene Wissen zu speichern.

Wie im menschlichen Gehirn wandeln die Rezeptoren Reize aus dem menschlichen Körper oder der äußeren Umgebung in elektrische Impulse um, die Informationen an das neuronale Netz (Gehirn) übertragen. Die Effektoren wandeln die vom neuronalen Netz erzeugten elektrischen Impulse in wahrnehmbare Reaktionen als Systemausgaben um.

Feed-Forward Neural Network (FFNN)

Abb.1 Feed-Forward Neural Network (FFNN)

Modelle des Neurons

Ein neuron ist eine informationsverarbeitende Einheit, die für den Betrieb eines neuronalen Netzes grundlegend ist.

Hier identifizieren wir drei grundlegende Elemente des neuronalen Modells:

  1. Eine Reihe von Synapsen (Nervenenden) oder Verbindungsgliedern, von denen jede durch ein eigenes 𝑤𝑒𝑖𝑔ℎ𝑡 oder 𝑠𝑡𝑟𝑒𝑛𝑔𝑡ℎ gekennzeichnet ist. Konkret wird ein Signal 𝑥𝑗 am Eingang der Synapse 𝑗, die mit dem Neuron 𝑘 verbunden ist, mit dem synaptischen Gewicht 𝑤𝑘𝑗 multipliziert. Es ist wichtig, die Schreibweise der Indizes des synaptischen Gewichts 𝑤𝑘𝑗 zu beachten. Der erste Index in 𝑤𝑘𝑗 bezieht sich auf das betreffende Neuron, und der zweite Index bezieht sich auf das Eingangsende der Synapse, auf die sich das Gewicht bezieht.**
  2. Ein Addierer zum Summieren der Eingangssignale, gewichtet mit den jeweiligen synaptischen Stärken des Neurons; die hier beschriebenen Operationen bilden einen linear combiner.
  3. Eine Aktivierungsfunktion zur Begrenzung der Amplitude des Ausgangssignals eines Neurons; die Aktivierungsfunktion wird auch als „Squashing“-Funktion bezeichnet, da sie den zulässigen Amplitudenbereich des Ausgangssignals auf einen endlichen Wert reduziert (begrenzt). Üblicherweise wird der normierte Amplitudenbereich der Ausgabe eines Neurons als geschlossenes Einheitsintervall oder alternativ als .

Neuron mit verborgener Schicht

Abb.2 Hidden-Layer-Neuron

Mathematisch können wir das in Abb.2 dargestellte Neuron -𝑗 beschreiben durch das folgende Gleichungspaar beschreiben:

wobei 𝑥1, 𝑥2, …, 𝑥𝑚 die Eingangssignale sind; 𝑤𝑗1 , 𝑤𝑗2 , …, 𝑤𝑗𝑚 sind die jeweiligen synaptischen Gewichte des Neurons 𝑗; Netz ℎ𝑗 ist der lineare Kombinatorausgang aufgrund der Eingangssignale; 𝑓(⋅) ist die Aktivierungsfunktion; und 𝐼𝑗 ist das Ausgangssignal des Neurons.

Neuron der Ausgabeschicht

Abb.3 Neuron der Ausgangsschicht

Mathematisch lässt sich das in Abb.3 dargestellte Neuron 𝑘 beschreiben durch das folgende Gleichungspaar beschreiben:

Ausdruck Hidden Neural-Network:

Hidden Neural Network Synaptic-weights can be expressed as:

The whole Hidden Neural Network can be expressed as:

Das gesamte Hidden Neural Network kann wie folgt ausgedrückt werden:

Die Synapsengewichte des Hidden Neural Network können wie folgt ausgedrückt werden:

Das gesamte Hidden Neural Network kann ausgedrückt werden als:

Beispiel_1.

Gegeben das folgende NN mit Gewichten:

Abb.4 Beispiel_1

Eingaben:

Die folgende Aktivierungsfunktion wird verwendet:

Lösung:

Erstes Paar

2. Paar

3. Paar

4. Paar

Endergebnis:

Der Output von ist

Das bedeutet, dass unser neuronales Netz als sein XOR Logik-Tor fungiert.

Aktivierungsfunktion

Die Aktivierungsfunktion kann verschiedene Formen annehmen, je nachdem, ob es sich um eine Regression oder eine Klassifizierung handelt. Hier sind einige Beispiele für Aktivierungsfunktionen.

Sigmoid und tanh werden für die binäre Klassifikation verwendet, während softmax für Multi-Klassifikationsprobleme verwendet wird.

ReLU und Leaky ReLU werden für Regressionsprobleme verwendet. Die Maxout-Aktivierung ist eine Verallgemeinerung der Funktionen ReLU und Leaky ReLU.

Anwendung des Bias auf neuronale Netze.

Das neuronale Modell in Abb.5 enthält eine extern angelegte Verzerrung, die mit 𝑏𝑘 bezeichnet wird. Der Bias (𝑏𝑘) bewirkt, dass der Nettoeingang der Aktivierungsfunktion erhöht oder gesenkt wird, je nachdem, ob er positiv oder negativ ist.

Abb.5 Nichtlineares Modell
eines Neurons, beschriftet mit k.

Mathematisch können wir das Neuron 𝑘 durch das Gleichungspaar beschreiben:

wobei 𝑥1, 𝑥2, …, 𝑥𝑚 die Eingangssignale sind; 𝑤𝑘1 , 𝑤𝑘2 , …, 𝑤𝑘𝑚 die jeweiligen synaptischen Gewichte des Neurons 𝑘 sind; 𝑢𝑘 (in obiger Abb. nicht dargestellt.) ist die lineare Kombinatorleistung aufgrund der Eingangssignale; 𝑏𝑘 ist die Vorspannung; 𝜑(-) ist die Aktivierungsfunktion; und 𝑦𝑘 ist das Ausgangssignal des Neurons. Die Verwendung der Verzerrung 𝑏𝑘 bewirkt, dass eine affine Transformation auf den Ausgang 𝑢𝑘 des linearen Kombinators im Modell angewandt wird, wie gezeigt.

(mehr Infos. über affine Transformation hier)

Wobei 𝑣𝑘 induziertes lokales Feld oder Aktivierungspotential genannt wird

So können wir äquivalent die Kombination der obigen Gleichungen formulieren:

In obiger Gleichung haben wir eine neue Synapse hinzugefügt. Ihr Eingangssignal ist:

Wir können daher das Modell des Neurons 𝑘 wie in Abb.6 dargestellt umformulieren. In dieser Abbildung wird der Effekt der Verzerrung durch zwei Dinge berücksichtigt: (1) Hinzufügen eines neuen Eingangssignals, das auf +1 festgelegt ist, und (2) Hinzufügen eines neuen synaptischen Gewichts, das dem Bias 𝑏𝑘 entspricht. Obwohl die Modelle in Abb. 5 und 6 unterschiedlich aussehen, sind sie mathematisch äquivalent.

Abb.6 Eine modifizierte Version des Neuronenmodells mit Bias

Hoffentlich haben Sie Spaß mit neuronalen Netzen und warten auf ihre weitere Verwendung im Deep Learning.

Leave a Reply

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.