Künstliche Neuronale Netze

Der Name "Künstliches neuronales Netzwerk" leitet sich aus dem biologischen Vorbild des neuronalen Netzwerkes im Gehirn ab. Ein künstliches neuronales Netzwerk besteht wie sein biologisches Vorbild aus Ansammlungen von einzelnen informationsverarbeitenden Einheiten (Neuronen), die in Schichten eine Netzarchitektur abbilden. Diese Schichten nennt man Layer. Alle Neuronen sind untereinander mit durch die verschiedenen Layer miteinander verbunden. Die Layer wiederum sind in einer festen Hierarchie miteinander verbunden. Es gibt grundsätzlich 3 Layertypen:

1) Die Eingabeschicht (Input Layer)
2) Die Zwischenschichten / Verarbeitungsschichten (Hidden Layer)
3) Die Ausgabeschicht (Output Layer)

Ein künstliches neuronales Netzwerk beginnt zumeist mit der Eingabeschicht, durch die die Informationen eingehen. Die Daten fließen dann durch verschiedene Zwischenschichten um letztendlich durch die Ausgabeschicht wieder ausgegeben zu werden. Zwischen diesen Schichten ist jedes Neuron immer mit allen Neuronen der nächsten Schicht verbunden und der Output eines Neurons ist der Input des nächsten Neurons.

Künstliche neuronale Netze werden meistens horizontal schematisiert. Es geht von links (Input) zur Mitte (Zwischenschichten) nach rechts (Output).

Bei neuronalen Netzen unterscheidet man grob zwischen vier verschiedenen Typen:

- Feed Forward

- Rekurrent

- Convolutional

- Perzeptron

Ein Feed Forward Netz folgt der gleichnamigen Logik, bei der Informationen in nur in eine Richtung von Eingabeschicht, zu Mittelschicht hin zur Ausgabeschicht fließen. Übrigens haben fast alle neuronalen Netze diese Architektur. Es gibt aber auch Topologien, bei denen Informationen rückwärtslaufen können bzw. die Schichten erneut durchlaufen. Diese Netzwerke nennt man dann rekurrente bzw. rückgekoppelte Netzwerke. Im manchen Fällen werden sie auch Feedback Netzwerke genannt. Die rekurrenten Netzwerke gibt es in folgenden Varianten:

- Vollständige Verbindung

Der Output, den ein Neuron erzeugt, dient als Input für jedes andere im Netz befindliche Neuron

- Direkte Rückkopplung

Der Output, den ein Neuron erzeugt, wird von selbigem wieder als Input genutzt

- Seitliche Rückkopplung

Der Output, den ein Neuron erzeugt, wird als Input von einem Neuron in derselben Schicht genutzt

- Indirekte Rückkopplung

Der Output eines Neurons wird als Input eines Neurons in einer vorgelagerten Schicht verwendet

Ein Convolutional Neuronal Network (zu Deutsch etwa gefaltetes neuronales Netzwerk) besteht gebräuchlicher weise aus mindestens 5 Schichten, über die eine Mustererkennung durchgeführt wird. Durch diesen speziellen Aufbau eignen sich Convolutional Neuronal Networks sehr gut zur Bild- und Audioverarbeitung um z. B. Muster zu erkennen. Bei dem Datenfluss wird in jeder Schicht die Mustererkennung auf Basis des Outputs der vorherigen Schicht präzisiert. Es funktioniert ähnlich einem Raster, durch das die Daten Stück für Stück immer weiter verfeinert und ausgesiebt werden.

Ein Perzeptron ist die simpelste Art in der Klasse der künstlichen neuronalen Netzwerke. Es wurde 1958 von Frank Rosenblatt entwickelt und beinhaltet nur ein einziges Neuron (Perzeptron), welches in der Gewichtung und im Schwellenwert angepasst werden kann.
Mit der Zeit ist dieses Modell im Vergleich zur ursprünglichen Version erweitert worden. Heutzutage gibt es bei dem Perzeptron zwei Varianten:

- Einlagige Perzeptronen

Bei den einlagigen Perzeptronen gibt es nur die Input-Layer und Output-Layer. Die Neuronen im Input-Layer haben jeweils eine Verbindung zu jedem Neuron im Output-Layer. Die einzelnen Neuronen im Input-Layer verteilen und verstärken die Signale im Eingang. Im Output-Layer entscheiden die Neuronen dann nach der Summierung der Input-Signale anhand von Schwellenfunktionen den Output-Wert.

An diesen Erläuterungen wird gut sichtbar, dass künstliche neuronale Netzwerke sehr komplexe und hoch mathematische Konstrukte sind, die es ermöglichen, große Datenstreams auszuwerten und anhand von Daten selbstständig Ergebnisse zu erzeugen. Somit sind neuronale Netzwerke ein unverzichtbares Instrument, wenn es um Machine Learning geht.