Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

zur Vorlesung Neuronale Netzwerke

Ähnliche Präsentationen


Präsentation zum Thema: "zur Vorlesung Neuronale Netzwerke"—  Präsentation transkript:

1 zur Vorlesung Neuronale Netzwerke
Programmierprojekt zur Vorlesung Neuronale Netzwerke

2 Soft Computing / Programmieren
Übungen In den Übungen sollen eigenständige Systeme zur Erstellungs-, Trainings- und Arbeitsphase von neuronalen Netzwerken auf command line erstellt werden Dateiformat für Netze definieren Programm für die Arbeitsphase Programm für die Erstellungsphase mit einer visuellen Darstellungskomponente Programm für die Trainingsphase Visuelle Darstellungen von Datensätzen Fulda 2009 Soft Computing / Programmieren

3 Implementationsprinzipien
Trennung der Aspekte: Datenhaltung numerische Eigenschaften der Objekte Unveränderliche Parameter Sich aktuell ändernde Variablen Funktionalität Methoden der Objekte Globale Methoden Darstellung Dateispeicherung graphische Oberfläche Fulda 2009 Soft Computing / Programmieren

4 Soft Computing / Programmieren
Netz-Dateien Es ist eine Entscheidung zu treffen, ob die Verbindungsgewichte als eine große Matrix oder als eine Folge kleinerer Matrizen (für Paare von Schichten oder Gruppen). Bei mehreren Matrizen müssen diese untereinander durch Kommentare getrennt werden, die auch die Information enthalten, zwischen welchen Gruppen bzw. Schichten diese Verbindungen verlaufen. Neuronen- Schichten- oder Gruppenzahl können entweder aus den Matrizen abgelesen oder in eigenen Daten- oder Kommentarzeilen abgelegt werden. Fulda 2009 Soft Computing / Programmieren

5 Aktivierungsfunktion alpha
Zusammenrechnen der ankommenden Inputs x über die Synapsengewichte Skalarprodukt Summe der multiplizierten Inputs a = α(x) = ∑wi·xi . Quadratischer Abstand Abstand des Eingabevektors vom Gewichtsvektor a = α(x) = ∑(wi-xi)² Alternativen (dokumentieren Sie, auf welche Weise ein Benutzer eigene Aktivierungsfunktionen einbinden kann) Fulda 2009 Soft Computing / Programmieren

6 Soft Computing / Programmieren
Outputfunktion theta Funktionen zur Berechnung des Neuronen-Outputs aus der Neuronen-Aktivität a, dem Bias b (Schwellwert) und einer Steigung s. Identität θ(a) = a Sprungfunktion θ(a,b) = (a>b)?1:0 = (a-b > 0)?1:0 Sigmoidfunktion θ(a,b,s) = (1+exp(s·(a – b)))-1 Radiale Basisfunktion θ(a,b,s) = exp(s·(a – b)²) Alternativen (dokumentieren Sie, auf welche Weise ein Benutzer eigene Outputfunktionen einbinden kann) Fulda 2009 Soft Computing / Programmieren

7 Soft Computing / Programmieren
Initialisierung Bei der Definition, vor dem ersten oder erneuten Gebrauch der Verbindungen müssen deren Gewichte festgelegt werden Rücksetzen auf 0 Zufällig aus dem Intervall [0,N] Aus einer Netz-Datei mit passenden Parametern Aktuelles Gewicht + Zufallszahl aus [0,ε] Fulda 2009 Soft Computing / Programmieren

8 Propagierung/Arbeitsphase
Ein neuronales Netz nimmt einen Eingabevektor x fester Länge n (Anzahl der Eingabeparameter) entgegen, propagiert diese durch das Netz und produziert damit eine Ausgabe. Die Propagierungsfunktion beschreibt, in welcher Reihenfolge die einzelnen Neuronen ihren lokalen Input zum lokalen Output umrechnen. Fulda 2009 Soft Computing / Programmieren

9 Soft Computing / Programmieren
Aufbau von Netzwerken Elementare Bausteine: Neuronen, Verbindungen Zusammengesetzte Bausteine Neuronengruppen, Schichten Verbindungsgruppen Netzwerk Sammlung von Neuronengruppen und Verbindungsgruppen Fulda 2009 Soft Computing / Programmieren

10 Soft Computing / Programmieren
Neuronen Name / lfd. Nummer Art ( input, output, hidden, const) Aktivierungsfunktion Outputfunktion Parameter Aktivierung a (float oder double) Bias b (float oder double) Steigung s (float oder double) Fehler e (float oder double) Fulda 2009 Soft Computing / Programmieren

11 Soft Computing / Programmieren
Verbindung (Synapse) Start (Neuron) Ziel (Neuron) Gewicht (float oder double) Plastizität (Lernparameter : float oder double) Initialisierung des Gewichts 0 benutzerdefiniert α benutzerdefiniert α·Zufallszahl Aktuell + α·Zufallszahl Fulda 2009 Soft Computing / Programmieren

12 Soft Computing / Programmieren
Neuronengruppen Name / lfd. Nummer Liste von Neuronen Neuronenzahl Default Art Default Aktivierungsfunktion Default Outputfunktion Verbindungstyp (keine, zyklisch, alle) Fulda 2009 Soft Computing / Programmieren

13 Soft Computing / Programmieren
Verbindungsgruppen Startgruppe (Neuronengruppe) Zielgruppe (Neuronengruppe) Liste von Verbindungen von Neuronen der Startgruppe zu Neuronen der Zielgruppe Verbindungstyp (keine, 1-zu-1, alle) Gewichtsmatrix Initialisierung der Gewichte Fulda 2009 Soft Computing / Programmieren

14 Soft Computing / Programmieren
Schichten (Layer) Name / lfd. Nummer Liste von Neuronengruppen / Neuronen Funktion : Schichteneinteilung Eine automatische Sortierung aller Neuronengruppen in Schichten kann eingesetzt werden, dabei werden ggf. die Gruppen umnumeriert. Fulda 2009 Soft Computing / Programmieren

15 Soft Computing / Programmieren
Ablage [groups] Liste der Gruppengrößen [in] Nr. der Input-Gruppen [out] Nr. der Output-Gruppe für jede Verbindungsgruppe eine Zeile und Matrix mit Ueberschrift [connection] Start, Ziel, Art, alpha, theta Matrix [neurons] für jedes Neuron eine Zeile lfd.Nr, Gruppe, activity, bias, steigung, output Fulda 2009 Soft Computing / Programmieren

16 Soft Computing / Programmieren
Trainingseinheit Es sollen die Fehlerorientierten Trainingsverfahren Backpropagation Backpropagation mit Erweiterungen und die selbstorganisierten Trainingsverfahren JVQ SOM realisiert werden Fulda 2009 Soft Computing / Programmieren

17 Soft Computing / Programmieren
Darstellungen Fehlerdarstellung in der Arbeitsphase sollte es einen Protokollmodus geben in der Input, output und ggf. Fehlerinformation gesammelt wird. In der Trainingsphase sollten Daten zur Fehler- entwicklung gespeichert und dann dargestellt werden können Zusammenhangsdarstellung Es soll der Zusammenhang zwischen vom Nutzer eingegebenen Parametern dargestellt werden können. Fulda 2009 Soft Computing / Programmieren


Herunterladen ppt "zur Vorlesung Neuronale Netzwerke"

Ähnliche Präsentationen


Google-Anzeigen