Trainingsphase

Die wesentliche Grundlage sämtlicher Verfahren beim maschinellen Lernen sind Daten. Und auch neuronale Netze machen da keine Ausnahme:

Um die Gewichte und Schwellwerte eines neuronalen Netzes zur Lösung einer Klassifikationsaufgabe bestimmen zu können, werden (möglichst viele) Eingangssignale benötigt, für die das Klassifikationsergebnis jeweils bekannt ist.

Das bedeutet: Um ein neuronales Netz zur Klassifikation von Schwertlilien trainieren zu können, werden von (vielen) Blüten jeweils die Längen und Breiten der Kron- und Kelchblätter benötigt (hier jeweils in der Einheit dm). Zudem muss eine Information darüber bekannt sein, um welche Art es sich handelt. Sämtliche Informationen werden in einem Datensatz zusammengetragen:

KelchblattlängeKelchblattbreiteKronblattlängeKronblattbreiteArt
0.510.350.140.02Borsten-Schwertlilie
0.700.320.470.14Verschiedenfarbige Schwertlilie
0.630.330.600.25Virginische Schwertlilie
0.490.300.140.02Borsten-Schwertlilie
0.640.320.450.15Verschiedenfarbige Schwertlilie
0.580.270.510.19Virginische Schwertlilie
...............
0.470.320.130.02Borsten-Schwertlilie
0.690.310.490.15Verschiedenfarbige Schwertlilie
0.710.300.590.21Virginische Schwertlilie

Zur Lösung einer Klassifikationsaufgabe erhalten wir bestenfalls zu jedem Eingangssignal ein zugehöriges Ausgangssignal, bei dem genau ein Ausgangsneuron einen Wert von 1 hat und alle anderen den Wert 0 haben.

Bezogen auf den Datensatz zuvor sollen die Gewichte und Schwellwerte also bestenfalls derart bestimmt werden, sodass wir die folgenden Ausgangssignale bezüglich der jeweils zugehörigen Eingangssignale erhalten:

Eingangssignalgewünschtes AusgangssignalAusgangssignal entspricht
[ 0.51, 0.35, 0.14, 0.02 ][ 1, 0, 0 ]Borsten-Schwertlilie
[ 0.70, 0.32, 0.47, 0.14 ][ 0, 1, 0 ]Verschiedenfarbige Schwertlilie
[ 0.63, 0.33, 0.60, 0.25 ][ 0, 0, 1 ]Virginische Schwertlilie
[ 0.49, 0.30, 0.14, 0.02 ][ 1, 0, 0 ]Borsten-Schwertlilie
[ 0.64, 0.32, 0.45, 0.15 ][ 0, 1, 0 ]Verschiedenfarbige Schwertlilie
[ 0.58, 0.27, 0.51, 0.19 ][ 0, 0, 1 ]Virginische Schwertlilie
.........
[ 0.47, 0.32, 0.13, 0.02 ][ 1, 0, 0 ]Borsten-Schwertlilie
[ 0.69, 0.31, 0.49, 0.15 ][ 0, 1, 0 ]Verschiedenfarbige Schwertlilie
[ 0.71, 0.30, 0.59, 0.21 ][ 0, 0, 1 ]Virginische Schwertlilie

Die Tabelle zuvor ist genau das, was als Trainingsdaten verstanden wird. Und wie der Name schon sagt, sind das auch genau die Informationen, die für die Trainingsphase benötigt werden:

Während der Trainingsphase werden die Gewichte und Schwellwerte eines neuronalen Netzes derart bestimmt, sodass die Ausgangssignale der am neuronalen Netz ausgewerteten Eingangssignale möglichst dem jeweils gewünschten Ausgangssignal entsprechen.

Dabei kommen durchaus komplexe mathematische Verfahren zum Einsatz, auf die wir an dieser Stelle nicht weiter eingehen können. Es sei jedoch bemerkt, dass es sich um einen iterativen Prozess handelt, bei dem auch der Zufall eine Rolle spielt. Zudem ist wichtig, zu berücksichtigen:

Es ist weder praktisch noch theoretisch möglich, die Gewichte und Schwellwerte derart zu bestimmen, sodass die Ausgangssignale der am neuronalen Netz ausgewerteten Eingangssignale exakt dem jeweils gewünschten Ausgangssignal entsprechen.

Welche Ergebnisse wir am Beispiel der Schwertlilien erwarten können, demonstriert die folgende Anwendung.

Anwendung
In dieser Anwendung kann das bekannte neuronale Netz zur Klassifikation von Schwertlilien trainiert werden. Die Trainingsdaten beinhalten Informationen von 150 Blüten. Anschließend können zufällig gewählte Eingangssignale ausgewertet werden.
Aufgabe
  1. Mache dich mit der Anwendung zuvor vertraut. Werte mehrere Eingangssignale aus und diskutiere, ob das bekannte bzw. gewünschte Klassifikationsergebnis jeweils ähnlich zum am neuronalen Netz ausgewerteten Eingangssignal ist.
  2. Falls wir uns beim ausgewerteten Eingangssignal für ein Klassifikationsergebnis entscheiden möchten, so werden wir das Ergebnis wählen, dessen Ausgangsneuron den größten Wert besitzt. Probiere zahlreiche Eingangssignale aus. Werden alle Pflanzen korrekt klassifiziert?
Quiz
Testphase