Einführung in die Mathematik neuronaler Netze   
         
         
	  C-Implementierungen 
	                  dreischichtiger Feed-Forward-Netze 
	 
 
In dieser HTML-Lehreinheit werden dreischichtige Backpropagation-Netze und 
Sigma-Pi-Netze implementiert und getestet.
Fragen, die es in diesem Zusammenhang zu stellen gilt, lauten: Wann
bricht man Backpropagation-Lernen ab, wie gut sind die erhaltenen
Resultate, welche Parameter kann man variieren, welche Vor- und
Nachteile haben Sigma-Pi-Netze? 
 
   Bitte beachten Sie:
Alle Kapitel- und Abschnittangaben in den
HTML-Lehreinheiten beziehen sich auf das Buch 
"Einführung in die Mathematik neuronaler Netze" 
von Burkhard Lenze, Logos Verlag, Berlin, 2009.
Dieses Buch sollten Sie zur Bearbeitung der 
HTML-Lehreinheiten zuvor gelesen und bereitliegen haben!
 
 Grundsätzlicher Hinweis zur Arbeit mit den HTML-Lehreinheiten: 
-  Öffnen Sie auf Ihrem Rechner zwei Fenster, und legen Sie sich das
     obige Lehrbuch griffbereit.
 -  Greifen Sie im ersten Fenster (HTML-Fenster) mit einem Browser auf das
     zu bearbeitende C-Programm zu (siehe Inhaltsverzeichnis unten), und lassen 
     Sie sich die zugehörige Aufgabe und das Listing des Programms ausdrucken.
 -  Schauen Sie sich das ausgedruckte Listing des C-Programms an und -- zum
     besseren Verständnis -- parallel dazu im HTML-Fenster das
     zugehörige Flussdiagramm mit seinen Erläuterungen.
 -  Starten Sie nun, nachdem Ihnen die Struktur des Programms vertraut ist,
     im zweiten Fenster (C-Fenster) das kompilierte C-Programm, und bearbeiten
     Sie die Ihnen ausgedruckt vorliegende Aufgabenstellung.
 -  Wechseln Sie, wann immer Sie Schwierigkeiten mit der eigenen Lösung
     haben, vom C-Fenster in das HTML-Fenster, und schlagen Sie dort in der
     protokollierten Lösung nach.
 -  Lesen Sie nach der Lösung der konkreten Anwendungsaufgabe im
     HTML-Fenster die jeweilige Zusammenfassung, in der noch einmal das 
     Wesentliche des bearbeiteten C-Programms auf den Punkt gebracht wird.
 
Das Ziel des obigen Vorgehens sollte sein, dass Sie nach Abschluss des
HTML-basierten Trainings so gut mit den Netzsimulationen vertraut sind,
dass Sie auch eigene Anwendungen ausprobieren und die C-Programme 
weiterentwickeln können. Um sich im Rückblick jeweils zu
vergewissern, ob dieses Ziel auch erreicht wurde, bietet es sich an, nach 
Abschluss der Arbeit mit einem Netztyp anhand der unten angegebenen 
Lehrziele das eigene Wissen nochmals kritisch zu hinterfragen.
 
 
 
  Inhaltsverzeichnis  
 
 
 
 Lehrziele
Sie sollten nach Studium dieser HTML-Lehreinheit wissen,
-  wie man ein dreischichtiges Feed-Forward-Netz mit 
      Backpropagation-Lernregel (kurz: Backpropagation-Netz) 
      prinzipiell implementieren kann,
 -  dass man ein Backpropagation-Netz nur mit stetig differenzierbaren
      Transferfunktionen arbeiten lassen kann und dass man neben
      den Startgewichten und -schwellwerten auch noch die sogenannte
      Lernrate lambda und den Stauchungsparameter beta frei
      wählen kann.
 
-  dass das Training eines Backpropagation-Netzes alles andere als
      einfach ist und die richtige Wahl der Anzahl der verborgenen Neuronen,
      der Lernrate, des Stauchungsparameters und gegebenenfalls der 
      Startgewichte und -schwellwerte sehr viel Erfahrung und Intuition verlangt,
 -  dass die "guten" Backpropagation-Netze die Fähigkeit des
      Generalisierens 
      besitzen und diese Eigenschaft wesentlichen Anteil am Erfolg formaler
      neuronaler Netze hat.
 
-  wie man ein hyperbolisches Sigma-Pi-Netz prinzipiell implementieren kann,
 -  dass das speziell implementierte hyperbolische 
      Sigma-Pi-Interpolationsnetz
      die Vorteile hat, stets perfekt auf den Trainingsdaten zu arbeiten, 
      keine voreinzustellenden Parameter benötigt, in "Echtzeit"
      (besser: nichtrekursiv) lernt und
      ausführt sowie überzeugend generalisiert,
      allerdings die Nachteile in Kauf genommen werden müssen, dass
      regulär verteilte Trainingsdaten sowie eine große
      Anzahl verborgener Neuronen vorhanden sein müssen.
 
 
Burkhard Lenze 
Im Februar 2009