5.3 Perceptron

Das Perceptron ist ein Netzwerk, das im Wesentlichen aus einer ganzen Schicht der oben beschriebenen Modellneuronen besteht. Das in Abbildung 5.6 dargestellte Netzwerk kann zum Beispiel zur Ziffererkennung genutzt werden. Die Neuronen zur Retina (Ziffer 3) sind zufällig und fest verdrahtet, haben also keine lernbaren Gewichte. Jedes Inputneuron (mittlere Neuronen) ist mit jedem Outputneuron verbunden, wobei für jede zu erkennende Ziffer ein Neuron existiert. Das Netzwerk soll so trainiert werden, dass beim Anlegen einer Ziffer genau das entsprechende Outputneuron feuert.

Perceptron zur Ziffernerkennung

Abbildung 5.6: Perceptron zur Ziffernerkennung

Das Lernen in Perceptron Netzwerken funktioniert wie im vorigen Kapitel beschrieben: Es werden so lange immer wieder nacheinander die Inputmuster an das Netzwerk angelegt und die Gewichte angepasst, bis der Fehler einen gewünschten Wert unterschreitet. Die anfänglich zufälligen Gewichte werden mit Hilfe der Delta-Lernregel angepasst (siehe Formel (5.2)), wobei die Lernrate ist, also die Größe der einzelnen Schritte des Gradientenabstiegs, ist die Aktivierung des Vorgängerneurons (also hier des Inputneurons), ist der gewünschte und der tatsächliche Output von Neuron .

Leider konvergiert das Lernen bei einem Perceptron-Netzwerk nicht immer zu den gewünschten Werten. Das Perceptron kann nur linear separierbare Probleme repräsentieren. Was das heißt, veranschaulicht Abbildung 5.7. Bei einem zweidimensionalen Input wie bei den logischen Funktionen müssen die Beispiele durch eine eindimensionale Linie in 0 und 1 Outputs getrennt werden können. Für das AND und das OR Muster gelingt das auch und das Perceptron kann passende Gewichte mit der Delta-Lernregel finden. Bei der XOR Funktion ist das aber nicht möglich und ein Perceptron kann nicht alle Inputs auf die gewünschten Outputs abbilden. Man kann aber leicht zeigen, dass ein mehrschichtiges neuronales Netzwerk die XOR Funktion abbilden kann. Die Delta-Lernregel funktioniert für solche mehrschichtigen Netze aber nicht, da man den gewünschten Output von Neuronen, die keine Outputneuronen sind, nicht kennt. Diese Problematik wurde mit Backpropagation gelöst, wie im nächsten Kapitel erläutert wird.

Problem linearer Separierbarkeit

Abbildung 5.7: Problem linearer Separierbarkeit

Quiz: Gewichte für ein mehrschichtiges Netzwerk finden, das XOR richtig abbildet.