Praktikum Simulationstechnik Rene Schneider, Benjamin Zaiser

Ähnliche Dokumente
Künstliche neuronale Netze

Gliederung. Biologische Motivation Künstliche neuronale Netzwerke. Anwendungsbeispiele Zusammenfassung. Das Perzeptron

Einführung in neuronale Netze

Neuronale Netze. Seminar aus Algorithmik Stefan Craß,

Computational Intelligence 1 / 20. Computational Intelligence Künstliche Neuronale Netze Perzeptron 3 / 20

Was sind Neuronale Netze?

Was bisher geschah. Lernen: überwachtes Lernen. biologisches Vorbild neuronaler Netze: unüberwachtes Lernen

Maschinelles Lernen: Neuronale Netze. Ideen der Informatik

Maschinelles Lernen: Neuronale Netze. Ideen der Informatik Kurt Mehlhorn

Neuronale Netze. Anna Wallner. 15. Mai 2007

Aufbau und Beschreibung Neuronaler Netzwerke

Hannah Wester Juan Jose Gonzalez

Universität zu Köln Seminar: Künstliche Intelligenz II Dozent: Claes Neuefeind SS Neuronale Netze. Von Deasy Sukarya & Tania Bellini

Schriftlicher Test Teilklausur 2

Exkurs Modelle und Algorithmen

Künstliche neuronale Netze

Adaptive Systeme. Prof. Dr.-Ing. Heinz-Georg Fehn Prof. Dr. rer. nat. Nikolaus Wulff

Praktikum Computational Intelligence 2 Ulrich Lehmann, Johannes Brenig, Michael Schneider

Simulation neuronaler Netzwerke mit TIKAPP

Softcomputing Biologische Prinzipien in der Informatik. Neuronale Netze. Dipl. Math. Maria Oelinger Dipl. Inform. Gabriele Vierhuff IF TIF

Einführung in Neuronale Netze

Thomas Behr. 17. November 2011

Zugriff auf Matrizen. Anhängen von Elementen. Punktweise Operatoren. Vektoren und Matrizen in MATLAB II

Neuronale Netze in der Robotik

Seminar zum Thema Künstliche Intelligenz:

Jürgen Roth Didaktik der Linearen Algebra & Analytischen Geometrie

Neuronale Netze (Konnektionismus) Einführung in die KI. Beispiel-Aufgabe: Schrifterkennung. Biologisches Vorbild. Neuronale Netze.

Neuronale Netze, Fuzzy Control, Genetische Algorithmen. Prof. Jürgen Sauer. 5. Aufgabenblatt: Neural Network Toolbox 1

Kapitel ML:XII. XII. Other Unsupervised Learning. Nearest Neighbor Strategies. Self Organizing Maps Neural Gas. Association Analysis Rule Mining

Allgemeine (Künstliche) Neuronale Netze. Rudolf Kruse Neuronale Netze 40

Wissensbasierte Systeme

Computational Intelligence I Künstliche Neuronale Netze

Kapitel 6. Neuronale Netze. 6.1 Verwendeter Netztyp

Selbstorganisierende Karten

Einführung in Neuronale Netze

Neuronale Netze. Gehirn: ca Neuronen. stark vernetzt. Schaltzeit ca. 1 ms (relativ langsam, vgl. Prozessor)

Neuronale Netze in der Phonetik: Grundlagen. Pfitzinger, Reichel IPSK, LMU München {hpt 24.

Vom Chip zum Gehirn Elektronische Systeme zur Informationsverarbeitung

Andreas Scherer. Neuronale Netze. Grundlagen und Anwendungen. vieweg

Machine Learning - Maschinen besser als das menschliche Gehirn?

Grundlagen Neuronaler Netze

Künstliches binäres Neuron

Zusammenfassung Mathe III. Themenschwerpunkt 3: Analytische Geometrie / lineare Algebra (ean) 1. Rechenregeln mit Vektoren

(hoffentlich kurze) Einführung: Neuronale Netze. Dipl.-Inform. Martin Lösch. (0721) Dipl.-Inform.

Das Perzeptron. Künstliche neuronale Netze. Sebastian Otte. 1 Grundlegendes. 2 Perzeptron Modell

Überführung regulärer Ausdrücke in endliche Automaten

Lernverfahren von Künstlichen Neuronalen Netzwerken

Modul Entscheidungsunterstützung in der Logistik. Einführung in die Programmierung mit C++ Übung 2

Implementationsaspekte

Theoretische Informatik 1

Neuronale Netze mit mehreren Schichten

Mathematik 1, Teil B. Inhalt:

Fachhochschule Südwestfalen Wir geben Impulse. Vektorrechnung in Octave

1. Neuronale Netzwerke 2. Lernen in neuronalen Netzen 3. Überblick und Klassifizierung von Modellen 4. Eigenschaften von neuronalen Netzen 5.

Facharbeit. Ratsgymnasium Bielefeld Schuljahr 2004/2005. aus dem Fach Biologie. Thema: Künstliche neuronale Netze

Übung 4: Einführung in die Programmierung mit MATLAB

Künstliche neuronale Netze

Was bisher geschah Künstliche Neuronen: Mathematisches Modell und Funktionen: Eingabe-, Aktivierungs- Ausgabefunktion Boolesche oder reelle Ein-und

CLINICAL DECISION SUPPORT SYSTEMS

Informationsverarbeitung im Bauwesen

(künstliche) Neuronale Netze. (c) Till Hänisch 2003, BA Heidenheim

5. Lernregeln für neuronale Netze

Grundlagen Künstlicher Neuronaler Netze

Aufgabe 1 Probabilistische Inferenz

Simulation Neuronaler Netze. Eine praxisorientierte Einführung. Matthias Haun. Mit 44 Bildern, 23 Tabellen und 136 Literatursteilen.

Kleines Handbuch Neuronale Netze

Kosten- und Erlösrechnung (Nebenfach) Sommersemester 2012

Matlab Einführung. Tobias Wunner

Serie 10: Inverse Matrix und Determinante

Felder (1) Allgemeines

Übungspaket 23 Mehrdimensionale Arrays

auch: Konnektionismus; subsymbolische Wissensverarbeitung

JavaScript. Dies ist normales HTML. Hallo Welt! Dies ist JavaScript. Wieder normales HTML.

Natürliche und künstliche neuronale Netze

Routing Algorithmen. Begriffe, Definitionen

Matlab - eine kurze Einführung

Lineare Gleichungssysteme (Teschl/Teschl 11.1)

weitere Modelle und Methoden

Neuronale Netze. Einführung i.d. Wissensverarbeitung 2 VO UE SS Institut für Signalverarbeitung und Sprachkommunikation

Ingenieurinformatik Diplom-FA (Teil 2, C-Programmierung)

Neuronale Netze. 11.Januar.2002

Korrelationsmatrix. Statistische Bindungen zwischen den N Zufallsgrößen werden durch die Korrelationsmatrix vollständig beschrieben:

Endliche Automaten. Im Hauptseminar Neuronale Netze LMU München, WS 2016/17

2.4. Neuronale Netze: Modellierung von Lernen und Klassifizieren

Einführung in. Neuronale Netze

Suche in Spielbäumen Spielbäume Minimax Algorithmus Alpha-Beta Suche. Suche in Spielbäumen. KI SS2011: Suche in Spielbäumen 1/20

Corinne Schenka Vorkurs Mathematik WiSe 2012/13

Multi-Layer Neural Networks and Learning Algorithms

Algorithmus zum Graphen-Matching. und. Anwendung zur inhaltsbasierten Bildersuche

Dynamisches Huffman-Verfahren

Spezialfall: Die Gleichung ax = b mit einer Unbekannten x kann mit Hilfe des Kehrwerts 1 a = a 1 gelöst werden:

Angewandte Informatik

Einführung in die Programmierung mit VBA

Hochschule München, FK 03 FA SS Ingenieurinformatik

Selbstorganisierende Karten

Matlab Übersicht. Matlab steht für MATrix LABoratory, die Fa. The Mathworks wurde 1984 gegründet

(künstliche) Neuronale Netze. (c) Till Hänisch 2003,2015, DHBW Heidenheim

ALPHA-Synapsen-Programmierung

Growing neural Gas Strukturen lernen. Torsten Siedel

Transkript:

Praktikum Simulationstechnik Rene Schneider, Benjamin Zaiser

11.11.2008 CSM Master: Praktikum Simulationstechnik, rs034, bz003 2 Befehlsübersicht Begriffsdefinition / Neuronale Netze: / /

11.11.2008 CSM Master: Praktikum Simulationstechnik, rs034, bz003 3

Natürliche Neuronale Netze Struktur/Informationsarchitektur von Gehirn und Nervensystem bei Menschen/Tieren Bestehend aus einzelnen Neuronen, verbunden durch Synapsen Künstliche Neuronale Netze Funktionsweise des menschlichen Gehirns besser verstehen konkrete Anwendungsprobleme lösen Abgebildet durch eine Matrix 11.11.2008 CSM Master: Praktikum Simulationstechnik, rs034, bz003 4

11.11.2008 CSM Master: Praktikum Simulationstechnik, rs034, bz003 5 Neuron (natürlich / künstlich)

11.11.2008 CSM Master: Praktikum Simulationstechnik, rs034, bz003 6

Jedes Neuron ist mit anderen Neuronen verknüpft (abhängig vom Netztyp) Neuronen sind mit Kanten (Synapsen) verbunden. Jede Kante hat ein Gewicht. Je höher Absolut-Betrag, desto stärker der Einfluss. positive Gewichte: erregenden Einfluss negative Gewichte: hemmender Einfluss Null: kein Einfluss 11.11.2008 CSM Master: Praktikum Simulationstechnik, rs034, bz003 7

Lernen = Modifizieren des Netzes gemäß einer vorgeschriebenen Lernregel Neue Verbindungen erstellen Verbindungen löschen Neue Neuronen erstellen Neuronen löschen Modifikation des Schwellwertes Modifikation der Aktivierungsfunktion Modifikation der Verbindungsstärke / Gewichte 11.11.2008 CSM Master: Praktikum Simulationstechnik, rs034, bz003 8

11.11.2008 CSM Master: Praktikum Simulationstechnik, rs034, bz003 9 Gewichten wird Zufallswert zugewiesen Eingabe von Trainingsmuster Wenn Ausgabe fehlerbehaftet: Anpassung der Gewichte

11.11.2008 CSM Master: Praktikum Simulationstechnik, rs034, bz003 10

1943 entwickelt von Warren McCulloch & Walter Pitts Bewiesen: Logische Operationen (AND, OR, NOT) mit abbildbar 1958 Frank Rosenblatt entwickelt - Modell bis heute Grundlage künstlich neuronaler Netze 11.11.2008 CSM Master: Praktikum Simulationstechnik, rs034, bz003 11

11.11.2008 CSM Master: Praktikum Simulationstechnik, rs034, bz003 12 vereinfachtes künstliches neuronales Netz besteht aus einem künstlichen Neuron Arbeitsweise: beeinflussbar durch Gewichte Eingabevektor Ausgabevektor

11.11.2008 CSM Master: Praktikum Simulationstechnik, rs034, bz003 13

11.11.2008 CSM Master: Praktikum Simulationstechnik, rs034, bz003 14 2 j1 w j x j w 2 x 2 w x 1 1 w x 0 0 a P x 1 x ) P( x y) w ( 2 bzw. 2y w1 x w0 x0 y w w 1 2 x w x 0 w 2 0 0 und x 1 0

11.11.2008 CSM Master: Praktikum Simulationstechnik, rs034, bz003 15 w y w a w 1 2 x w0 x w 2 2y w1 x w0 x0 0-2 -2-1.5-1 -0.5 0 0.5 1 1.5 2 Ziel: Geradengleichung ( w ) finden, die o und * Punkte trennt : o Punkte: a > 0 : * Punkte: a 0 2 1.5 1 0.5 0-0.5-1 -1.5

11.11.2008 CSM Master: Praktikum Simulationstechnik, rs034, bz003 16 2 1.5 1 0.5 0-0.5-1 -1.5-2 -2-1.5-1 -0.5 0 0.5 1 1.5 2

11.11.2008 CSM Master: Praktikum Simulationstechnik, rs034, bz003 17 Gewichten wird Zufallswert zugewiesen Eingabe von Trainingsmuster Wenn Ausgabe fehlerbehaftet: Anpassung der Gewichte

11.11.2008 CSM Master: Praktikum Simulationstechnik, rs034, bz003 18 2.5 2 1.5 1 0.5 0-0.5-1 -1.5-2 -2-1.5-1 -0.5 0 0.5 1 1.5 2

11.11.2008 CSM Master: Praktikum Simulationstechnik, rs034, bz003 19 Gewichten wird Zufallswert zugewiesen Eingabe von Trainingsmuster Wenn Ausgabe fehlerbehaftet: Anpassung der Gewichte

11.11.2008 CSM Master: Praktikum Simulationstechnik, rs034, bz003 20 a = w 2 *-1,6+w 1 *1,8+w 0 *-1 = -0,276 2.5 a = w 2 *1,6+w 1 *1,6+w 0 *-1 = 0,510 2 1.5 1 Gewichten wird Zufallswert zugewiesen 0.5 0-0.5-1 -1.5 Eingabe von Trainingsmuster Wenn Ausgabe fehlerbehaftet: Anpassung der Gewichte -2-2 -1.5-1 -0.5 0 0.5 1 1.5 2

Lernregel (Anpassung des Gewichtsvektors) Wenn Punkt o falsch zugeordnet wurde: Wenn Punkt * falsch zugeordnet wurde: 11.11.2008 CSM Master: Praktikum Simulationstechnik, rs034, bz003 21 * 2 * 1 * 0 0 2 1 0 w w w y x x w w w * 2 * 1 * 0 0 2 1 0 w w w y x x w w w

11.11.2008 CSM Master: Praktikum Simulationstechnik, rs034, bz003 22 2.5 2 1.5 1 1 0.5 0 2 3-0.5-1 -1.5-2 -2-1.5-1 -0.5 0 0.5 1 1.5 2

/ 11.11.2008 CSM Master: Praktikum Simulationstechnik, rs034, bz003 23

11.11.2008 CSM Master: Praktikum Simulationstechnik, rs034, bz003 24 Erfunden 1982 von John Hopfield sind eine spezielle Unterklasse der neuronalen Netze Sie bilden einen sogenannten Autoassoziativspeicher Normaler Speicher: Zugriff auf Inhalt über Adresse Autoassoziativspeicher: Zugriff auf Inhalt über Bruchstücke des Inhalts selbst

11.11.2008 CSM Master: Praktikum Simulationstechnik, rs034, bz003 25 A C B D

11.11.2008 CSM Master: Praktikum Simulationstechnik, rs034, bz003 26 Bidirektionale Verbindungen Jedes Neuron ist mit jedem Neuron außer A sich selbst verbunden B C Ein Neuron kann zwei Zustände haben: feuert oder 1 feuert nicht oder -1 Die Verbindungen zwischen den Neuronen D (Synapsen) besitzen ein individuelles Gewicht

11.11.2008 CSM Master: Praktikum Simulationstechnik, rs034, bz003 27 Ein Hopfield-Netz muss zur zunächst trainiert werden Dies erfolgt durch Konfiguration der synaptischen Gewichte Die Gewichte werden mittels der Hebbschen Lernregel ermittelt

11.11.2008 CSM Master: Praktikum Simulationstechnik, rs034, bz003 28 w ij a i a j Gewichtsänderung zwischen Neuron i und j Lernrate (konstanter Faktor) Aktivitätslevel von Neuron i Aktivitätslevel von Neuron j Wenn Neuron i und j im gleichen Aktivierungszustand sind, verstärkt sich die Verbindung zwischen ihnen

11.11.2008 CSM Master: Praktikum Simulationstechnik, rs034, bz003 29 Anwendung der Hebbschen Lernregel bei n w ij w ij n w ji n 1 n k1 0 M k i M k j falls i j sonst Gewicht der Verbindung zwischen i und j Anzahl der Muster 1 2 M, M,..., M k Muster mit Aktivierungswerten -1 und 1

11.11.2008 CSM Master: Praktikum Simulationstechnik, rs034, bz003 30 Nach der Ermittlung der synaptischen Gewichte ist das Netz bereit zur Die Eingabe eines (verrauschten oder unvollständigen) Musters zur Erkennung des zugehörigen gelernten Musters erfolgt durch Setzen der Neuronen in den Aktivierungszustand, der dem Muster entspricht

11.11.2008 CSM Master: Praktikum Simulationstechnik, rs034, bz003 31 0 0 0 0 0 0 0 0 0

11.11.2008 CSM Master: Praktikum Simulationstechnik, rs034, bz003 32-1 0 01-1 0 01 01-1 0-1 0-1 0-1 0

11.11.2008 CSM Master: Praktikum Simulationstechnik, rs034, bz003 33-1 0 01-1 0 01 01-1 0-1 0-1 0-1 0

11.11.2008 CSM Master: Praktikum Simulationstechnik, rs034, bz003 34 Die eigentliche besteht aus einem iterativen Verfahren Dabei werden die Neuronen mit folgender Regel aktualisiert: s i 1 1 falls sonst N j1 w ij s j t i Anzahl Neuronen Schwellenwert des Neurons i Zustand des Neurons j

11.11.2008 CSM Master: Praktikum Simulationstechnik, rs034, bz003 35 Asynchrone Änderung Initialisiere Startzustand gemäß zu erkennendem Muster do { wähle zufälliges Neuron i for(neuron j : alle mit i verbundenen Neuronen) { berechne neuen Zustand von i abhängig von j } } while(system nicht in stabilem Endzustand) Synchrone Änderung Initialisiere Startzustand gemäß zu erkennendem Muster do { for(neuron i : alle Neuronen) { for(neuron j : alle mit i verbundenen Neuronen) { berechne neuen Zustand von i abhängig von j } } } while(system nicht in stabilem Endzustand)

11.11.2008 CSM Master: Praktikum Simulationstechnik, rs034, bz003 36 Bei den Iterationen strebt das Hopfield-Netz einen stabilen Zustand an Dieser Zustand entspricht im Idealfall dem erkannten Originalbild Ein Hopfield-Netz erreicht jedoch unabhängig vom Erfolg bei der immer einen stabilen Endzustand

11.11.2008 CSM Master: Praktikum Simulationstechnik, rs034, bz003 37 Die Speicherkapazität eines s ist begrenzt und abhängig von der Anzahl Neuronen L N L N 0,138 Anzahl zu speichernder Muster Anzahl Neuronen

Netzen ist die Performance ein kritischer Faktor Da jedes Neuron mit allen anderen Neuronen vernetzt wird, ergeben sich sowohl für den Lernvorgang als auch den Erkennungsvorgang ( n 2 ) Schritte Beim praktischen Einsatz von Hopfield- 11.11.2008 CSM Master: Praktikum Simulationstechnik, rs034, bz003 38

11.11.2008 CSM Master: Praktikum Simulationstechnik, rs034, bz003 39 Auch der Speicherverbrauch für das Netz steigt quadratisch mit der Zahl der Neuronen Die Zahl der Neuronen wiederum steigt quadratisch mit der Auflösung der Muster Die Erkennung von Musterbildern mit höheren Auflösungen (>50x50 Pixel) mittels eines einzelnen Netzes wird daher schnell unmöglich

11.11.2008 CSM Master: Praktikum Simulationstechnik, rs034, bz003 40

11.11.2008 CSM Master: Praktikum Simulationstechnik, rs034, bz003 41

MATLAB Befehlsübersicht 11.11.2008 CSM Master: Praktikum Simulationstechnik, rs034, bz003 42

11.11.2008 CSM Master: Praktikum Simulationstechnik, rs034, bz003 43 Zugriff auf ein Element: x(zeile,spalte) o Punkt zeichnen (rot): plot(x, y, 'or'); Zugriff auf alle Zeilen und Spalte 2: x(:,2) Zufallswerte [-2,, 2] für Vektor mit 20 Zeilen, 2 Spalten: -2+(4*(rand(20,2))) For Schleife: for i=1:5 end Benutzereingabe: v = input(['text']); * Punkt zeichnen (grün): plot(x, y, '*g'); If Bedingung: if x>0 else end Gitter anzeigen, Figur beibehalten: grid on; hold on;

11.11.2008 CSM Master: Praktikum Simulationstechnik, rs034, bz003 44 Matrix mit 10 Spalten, 10 Zeilen gefüllt mit 1en: ones(10,10) Jedes Element einer Matrix mit dem zugehörigen Element einer zweiten Matrix multiplizieren: M.*S Matrix in Spaltenvektor mit 100 Zeilen umwandeln: reshape(v, 100, 1) Neues Hopfield-Netz erzeugen: net = newhop( [Spaltenvektor_Muster_1, Spaltenvektor_Muster_2, ]); Hopfield-Netz simulieren: sim(net, 1, [], Spaltenvektor_GestörtesMust er); Matrix zeichnen: imagesc(m)

Skript Künstliche Intelligenz ; Prof. Dr. Johannes Maucher; HdM Stuttgart Neuronale Netze: Lässt sich das Denken simulieren? ; Benjamin Polak; Universität Erlangen: Artifical Intelligence Neuronale Netze; Universität für angewandte Kunst Wien Wikipedia: ; (DE, EN) Neuronale Netze: eine Einführung; www.neuronalesnetz.de; Günter Daniel Rey 11.11.2008 CSM Master: Praktikum Simulationstechnik, rs034, bz003 45

Vielen Dank für die Aufmerksamkeit! 11.11.2008 CSM Master: Praktikum Simulationstechnik, rs034, bz003 46