Neuronale Netze Aufgaben 3

Ähnliche Dokumente
kurze Wiederholung der letzten Stunde: Neuronale Netze Dipl.-Inform. Martin Lösch (0721) Dipl.-Inform.

kurze Wiederholung der letzten Stunde: Neuronale Netze Dipl.-Inform. Martin Lösch (0721) Dipl.-Inform.

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

Neuronale Netze Aufgaben 2

Konzepte der AI Neuronale Netze

Wissensentdeckung in Datenbanken

Neuronale Netze. Anna Wallner. 15. Mai 2007

Neuronale Netze. Christian Böhm.

Künstliche Neuronale Netze

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

Hannah Wester Juan Jose Gonzalez

Praktische Optimierung

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

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

Neuronale Netze in der Phonetik: Feed-Forward Netze. Pfitzinger, Reichel IPSK, LMU München {hpt 14.

Einführung in die Computerlinguistik

kurze Wiederholung der letzten Stunde: Neuronale Netze Dipl.-Inform. Martin Lösch (0721) Dipl.-Inform.

Künstliche neuronale Netze

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

Maschinelles Lernen: Neuronale Netze. Ideen der Informatik Kurt Mehlhorn

Neuronale Netze (I) Biologisches Neuronales Netz

Maschinelles Lernen: Neuronale Netze. Ideen der Informatik

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

Simulation neuronaler Netzwerke mit TIKAPP

Technische Universität. Fakultät für Informatik

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

Kapitel LF: IV. IV. Neuronale Netze

Kapitel LF: IV. Multilayer-Perzeptrons und Backpropagation. Multilayer-Perzeptrons und Backpropagation. LF: IV Machine Learning c STEIN

Modellierung mit künstlicher Intelligenz

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

KNN-Methode zur Einschätzung von Veränderungen des Salzgehaltes in Ästuaren

Seminar Künstliche Intelligenz WS 2013/14 Grundlagen des Maschinellen Lernens

Künstliche neuronale Netze

Neuronale Netze (Konnektionismus)

Training von RBF-Netzen. Rudolf Kruse Neuronale Netze 134

Entscheidungsbäume aus großen Datenbanken: SLIQ

Künstliches binäres Neuron

Neuronale Netze. Maschinelles Lernen. Michael Baumann. Universität Paderborn. Forschungsgruppe Wissensbasierte Systeme Prof. Dr.

Entwicklung von Methoden zum Nachweis von ökologisch erzeugten Produkten am Beispiel der Lachszucht - Neronale Netzanalyse -

Einführung in Neuronale Netze

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

Wissensbasierte Systeme

Einführung in neuronale Netze

Institut für Angewandte Mikroelektronik und Datentechnik Fachbereich Elektrotechnik und Informationstechnik Universität Rostock.

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

Theoretische Informatik 1

Validation Model Selection Kreuz-Validierung Handlungsanweisungen. Validation. Oktober, von 20 Validation

Künstliche Neuronale Netze

Datenorientierte SA. Aufbau und Grundlagen. Aufbau und Grundlagen. Aufbau und Grundlagen. Was sind neuronale Netze?

Intelligente Algorithmen Einführung in die Technologie

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

Künstliche Neuronale Netze

Was sind Neuronale Netze?

Implementationsaspekte

Künstliche Neuronale Netze (KNN)

Reinforcement Learning

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

Neuronale Netze - Auswertung

Hochschule Regensburg. Spezielle Algorithmen (SAL) Lehrbeauftragter: Prof. Sauer

Der Backpropagation-Algorithmus als Beispiel für Lernalgorithmen künstlicher neuronaler Netze Reinhard Eck 1

INTELLIGENTE DATENANALYSE IN MATLAB

Computational Intelligence I Künstliche Neuronale Netze

11. Neuronale Netze 1

Handschrifterkennung mittels Multilayer Perceptron und Bagging auf dem Android Betriebssystem

6.4 Neuronale Netze zur Verarbeitung von Zeitreihen

Pareto optimale lineare Klassifikation

Neuronale Netze. Seminar aus Algorithmik Stefan Craß,

Objekterkennung mit künstlichen neuronalen Netzen

Künstliche Neuronale Netze und Data Mining

Data Mining - Wiederholung

Eine kleine Einführung in neuronale Netze

Andreas Scherer. Neuronale Netze. Grundlagen und Anwendungen. vieweg

Jan Parthey, Christin Seifert. 22. Mai 2003

Neural Networks: Architectures and Applications for NLP

Grundlagen neuronaler Netzwerke

Virtuelles Labor für Neuronale Netze

Einführung in die Methoden der Künstlichen Intelligenz

KNN für XOR-Funktion. 6. April 2009

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

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

Automatische Erkennung und Klassifikation von Körperhaltungen und Aktivitäten

BACKPROPAGATION & FEED-FORWARD DAS MULTILAYER PERZEPTRON

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

Bachelorarbeit Erkennung von Fließtext in PDF-Dokumenten

Fakultät für Informatik Übung zu Kognitive Systeme Sommersemester 2016

auch: Konnektionismus; subsymbolische Wissensverarbeitung

, Data Mining, 2 VO Sommersemester 2008

Theoretische Informatik 1

1. XOR: Mit folgender Architektur geht es. x 1. x n-dimensionale Lernprobleme mit einer n-2-1-architektur lösen ...


Kapitel VI Neuronale Netze

Die Datenmatrix für Überwachtes Lernen

Bayes-Netze (2) Lehrstuhl für Künstliche Intelligenz Institut für Informatik Friedrich-Alexander-Universität Erlangen-Nürnberg

Auch wenn Prof. Helbig die Prüfung nicht mehr lange abnimmt, hier ein kurzer Eindruck:

Herzlich Willkommen. Spielstrategien. gehalten von Nils Böckmann

Neuronale Netze. Literatur: J. Zupan, J. Gasteiger: Neural Networks in Chemistry and Drug Design, VCH, Weinheim, 2nd Ed. 1999, ISBN

Eingabe und Ausgabe in Java. Dr. Horst Treiblmaier Abteilung für Wirtschaftsinformatik WU Wien

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

Transkript:

Neuronale Netze Aufgaben 3 martin.loesch@kit.edu (0721) 608 45944

MLNN IN FLOOD3 2

Multi Layer Neural Network (MLNN) Netzaufbau: mehrere versteckte (innere) Schichten Lernverfahren: Backpropagation-Algorithmus [Rumelhart86, Werbos74] Neuronenaufbau: nichtlineare Aktivierungsfunktion -1-1 i1-1 i2 i3 i4 i5 3

MLNN anlegen: MLNN in Flood3 anlegen FL::MultilayerPerceptron mlnn(#inputs,hiddenl,#outputs); #inputs : Anzahl der Eingabekanäle hiddenl : Konfiguration der Hidden Layers FL::Vector<int> mit Anzahl der Hidden Neurons pro Layer #outputs : Anzahl der Ausgabekanäle Aktivierungsfunktionen per Default Hidden Layers: Hyperbolic Tangent ([-1,+1]) Output Neurons: Linear 4

Topologieauswahl Zusammenhang zwischen Anzahl der (hidden) layer und Zielfunktion? 3 Layer (1 hidden Layer - sigmoid): jede Boolsche Funktion jede kontinuierliche beschränkte Funktion [Cybenko 1989, Hornik et al. 1989] 4 Layer (2 hidden Layer -sigmoid) beliebige Funktionen mit beliebiger Genauigkeit [Cybenko 1988] Schon eine geringe Tiefe ist ausreichend 5

Lernverhalten - Topologieauswahl Anzahl der Neuronen pro Schicht im Bezug zu der Anzahl von (stochastisch unabhängigen) Lerndaten ist wichtig Aber: allgemeine Aussage nicht möglich Beispiel: gestrichelte Kurve soll eingelernt werden wenig Neuronen viele Neuronen wenig Lerndaten 6

Fehlermaß benötigt, z.b. Trainieren in Flood3 FL::SumSquaredError errormeasure(mlnn, traindata); mlnn : MLNN das trainiert werden soll traindata : benutzte Trainingsdaten (s.u.) Lerner benötigt, z.b. FL::GradientDescent learner(errormeasure); evtl. interessante Parameter: maximum_epochs_number, display_period, minimum_evaluation_improvement trainieren: learner.train(); 7

Overfitting Fehler auf Verifikationsdaten steigt ab einer Anzahl von Lernzyklen Mögliches Abbruchkriterium für Lernvorgang 8

Trainingsdaten in Flood3 Hauptcontainer InputTargetDataSet FL::InputTargetDataSet samples(#inst, #in, #out) #inst : Anzahl der Trainingsbeispiele #in : Anzahl Eingaben/Beispiel #out : Anzahl Ausgaben/Beispiel Befüllen mittels samples.set_data(datamatrix) Datensatz jeweils: Matrix FL::Matrix<double> matrix(rows, columns) Zeile setzen mittels matrix.set_row(i, vec) Zeilen : FL::Vector<double> (Inhalt: [Input 0,, Output 0, ]) 9

Auswahl repräsentativer Trainingsbeispiele Lerndaten für die Anpassung der Gewichte Verifikationsdaten für das Testen der Generalisierung gute Verteilung der Beispiele Klassifikation: Daten aus allen Klassen Regression: gesamter Definitionsbereich Beispiele insbesondere aus komplexen Regionen Klassifikation: Randregionen zwischen Klassen Regression: Verlaufsänderungen 10

Aufgabe 5: XOR mittels MLNN Das XOR-Problem soll dieses Mal mittels Lernen gelöst werden. Verwende die MultilayerPerceptron Klasse von Flood, um ein (parameterisierbares) MLNN zu erstellen, das mittels eigener Daten zur Implementierung der XOR- Funktion trainiert wird. Welche Topologie des Netzes? Welche Trainingsdaten? 11

FRAMEWORK FÜR LERNEN MIT DATEN AUS TEXTDATEI 12

Empfohlener Ablauf: Framework-Quelldatei Daten laden MLNN anlegen MLNN trainieren MLNN verwenden Trainingsdaten werden aus Datei geladen: TrainingData* loaddatafromfile(filename) siehe Datei: MlnnFromFileApplication.h/.cpp 13

Anzahl der Eingänge Eine Instanz pro Zeile Komma-separierte Werte Daten-Dateiformat Letzer Wert: Klasse der Instanz Beispiele: anddata.txt 2 0,0,- 0,1,- 1,0,- 1,1,+ ordata.txt 2 0,0,- 0,1,+ 1,0,+ 1,1,+ xordata.txt 2 0,0,- 0,1,+ 1,0,+ 1,1,- 14

Aufgabe 6: Komplexeres einfaches Beispiel Das in Aufgabe 3 gestellte Klassifikationsproblem soll jetzt nochmal gelöst werden, dieses Mal aber mittels eines gelernten MLNN. Zur Bereitstellung von vielen Trainingsdaten bietet sich das Laden einer einfachen Textdatei an, z.b. float f1=0, f2=0, f3=0, f4=0; FILE* myfile; myfile = fopen("test.txt", "r"); while (!feof(myfile)){ fscanf(myfile, "%f %f %f %f\n", &f1, &f2, &f3, &f4); std::cout << "Read: " << f1 << " " << f2 << " " << f3 << " " << f4 << std::endl; } fclose(myfile); x 1 x 2 Aufgabe test.txt 20.0 2.1 1.0 0.0 18.0 7.3 0.0 1.0 15

Aufgabe 7: Schrifterkennung Jetzt zu einer richtigen Anwendung: Wir wollen versuchen, Ziffern zu erkennen. Ziffern werden repräsentiert mittels einer 8x6-Matrix, die einen Scan darstellt. a) Die Ziffern 1 und 7 sollen unterschieden werden mittels eines MLNN. b) Ein MLNN soll trainiert werden, das nach Eingabe eines solchen Datensatzes die Ziffer erkennt. Die Trainingsdaten sollen dabei selbst erzeugt werden. 16