Jetzt fehlt noch der schwierigste Teil, nämlich die Implementierung des Maschinellen Lernens. Zuerst gibt Abbildung 16 einen Überblick.
Abbildung 16: Screenshot der IntelliJ-IDE für das Projekt Perceptron (MachineLearning)
Der Versuchsaufbau ist wie folgt: Ein Objekt der Klasse MaschineLearning muss die Anzahl der Eingangssignale und das Neuron (Perzeptron) kennen. Die Anzahl der Eingangssignale wird im Konstruktor aus der Input-Information der Trainings-Parameter generiert. Der Konstruktor des Neurons bekommt dann die Information, wie viele Eingangskanäle das Neuron hat und ob es eine nachfolgende Schicht gibt (in diesem Fall keine, also null). Für die Prozess-Beobachtung werden abschließend die zufälligen Anfangsgewichte gespeichert.
Nach außen stellt das Objekt vier öffentliche Methoden zur Verfügung. Die beiden Kalkulations-Methoden sind hingegen privat.
Eine Methode ist, wie der Name zurecht sagt, eine reine Ausgabemethode:
public void showWeights() {
System.out.print("weights incl. bias: ");
for (int i = 0; i < ProcessMonitoring.lastWeights.length; i++)
System.out.print(ProcessMonitoring.lastWeights[i] + " ");
System.out.println();
}
Drei andere Methoden geben (für didaktische Zwecke dieses OpenBooks) parallel zu ihren eigentlichen Aufgaben über die System.out.println(…)-Methode auch Informationen über das Maschinelle Lernen auf die Konsole. Dies ist keine optimale Modellierung und wird im Kapitel über das "Lernen mit einem Neuronalen Netzwerk" verbessert.
- 17 -