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

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

Neuronale Netze Aufgaben

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

Lösungen zur letzten Stunde & Vorbereitung

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

Neuronale Netze Aufgaben 2

Perzeptronen. Katrin Dust, Felix Oppermann Universität Oldenburg, FK II - Department für Informatik Vortrag im Rahmen des Proseminars 2004

Wir haben in den vorherigen Kapiteln verschiedene Verfahren zur Regression und Klassifikation kennengelernt (z.b. lineare Regression, SVMs)

Klassifikation linear separierbarer Probleme

Proseminar Neuronale Netze Frühjahr 2004

Adaptive Resonance Theory

Künstliche Neuronale Netze

Perzeptronen. Lehrstuhl für Künstliche Intelligenz Institut für Informatik Friedrich-Alexander-Universität Erlangen-Nürnberg

Adaptive Systeme. Neuronale Netze: Neuronen, Perzeptron und Adaline. Prof. Dr. rer. nat. Nikolaus Wulff

Teil III: Wissensrepräsentation und Inferenz. Kap.5: Neuronale Netze

Neuronale Netze. Anna Wallner. 15. Mai 2007

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

Neuronale Netze Aufgaben 3

Eine kleine Einführung in neuronale Netze

Analyse komplexer Szenen mit Hilfe von Convolutional Neural Networks

Praktische Optimierung

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

Konzepte der AI Neuronale Netze

Künstliche Neuronale Netze

Image: (CC-0) Künstliche Intelligenz & Bildung Nicht nur für ExpertInnen

Maschinelles Lernen: Neuronale Netze. Ideen der Informatik

Das Perzeptron. Volker Tresp

Teil III: Wissensrepräsentation und Inferenz. Kap.5: Neuronale Netze

Adaptive Systeme. Mehrere Neuronen, Assoziative Speicher und Mustererkennung. Prof. Dr. rer. nat. Nikolaus Wulff

Martin Stetter WS 03/04, 2 SWS. VL: Dienstags 8:30-10 Uhr

Schwellenwertelemente. Rudolf Kruse Neuronale Netze 8

Teil III: Wissensrepräsentation und Inferenz. Kap.5: Neuronale Netze. Was sind künstliche Neuronale Netze?

Statistik, Datenanalyse und Simulation

Ein selbstmodellierendes System für die Wasserwirtschaft

7. Vorlesung Neuronale Netze

Technische Universität Berlin Fakultät IV Elektrotechnik und Informatik. 8. Aufgabenblatt

Mustererkennung. Support Vector Machines. R. Neubecker, WS 2018 / Support Vector Machines

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

Statistical Learning

Kapitel LF: IV. IV. Neuronale Netze

Grundlagen zu neuronalen Netzen. Kristina Tesch

Selbstorganisierende Karten

Neuronale Netze. Christian Böhm.

Hannah Wester Juan Jose Gonzalez

Computational Intelligence I Künstliche Neuronale Netze

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

Wissensentdeckung in Datenbanken

Echtzeitfähige Algorithmen für markerloses Tracking und Umfelderkennung , Dr.-Ing. Steffen Herbort, A.R.T. GmbH

Neuronale. Netze. Henrik Voigt. Neuronale. Netze in der Biologie Aufbau Funktion. Neuronale. Aufbau Netzarten und Topologien

Optimal-trennende Hyperebenen und die Support Vector Machine. Volker Tresp

Wir haben in den vorherigen Kapiteln verschiedene Verfahren zur Regression und Klassifikation kennengelernt (z.b. lineare Regression, SVMs)

Das Modell: Nichtlineare Merkmalsextraktion (Preprozessing) + Lineare Klassifikation

INTELLIGENTE DATENANALYSE IN MATLAB. Einführungsveranstaltung

Grundlagen neuronaler Netzwerke

Radiale-Basisfunktionen-Netze. Rudolf Kruse Neuronale Netze 120

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

Thema 3: Radiale Basisfunktionen und RBF- Netze

Ausarbeitung zum Hauptseminar Machine Learning

INTELLIGENTE DATENANALYSE IN MATLAB

Einführung in die Computerlinguistik

Lineare Regression. Christian Herta. Oktober, Problemstellung Kostenfunktion Gradientenabstiegsverfahren

Maschinelles Lernen: Neuronale Netze. Ideen der Informatik Kurt Mehlhorn

Lineare Regression. Volker Tresp

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

Der Sprung in die Zukunft! Einführung in neuronale Netzwerke

Artificial Intelligence. Deep Learning Neuronale Netze

Adaptive Systeme. Einführung. Grundlagen. Modellierung. Prof. Rüdiger Brause WS Organisation. Einführung in adaptive Systeme B-AS-1, M-AS-1

Mustererkennung und Klassifikation

Intelligente Systeme. Einführung. Christian Moewes

Automatische Spracherkennung

Klausur Modellbildung und Simulation (Prof. Bungartz) SS 2007 Seite 1/7

Prüfungsprotokoll Diplomprüfung Mathematische Aspekte neuronaler Netze

6.2 Feed-Forward Netze

Neuronale Netze (Konnektionismus)

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

Schriftlicher Test Teilklausur 2

Digitale Systeme und Schaltungen

Personenerkennung. Harald Hauptseminarpräsentation. Harald Kirschenmann. Department Informatik. Department Informatik.

Konvergenz von Hopfield-Netzen

5. Aufgabenblatt mit Lösungsvorschlag

Maschinelles Lernen: Neuronale Netze. Ideen der Informatik Kurt Mehlhorn

6.4 Neuronale Netze zur Verarbeitung von Zeitreihen

Vorlesung Künstliche Intelligenz Wintersemester 2009/10

Das Modell von McCulloch und Pitts

Strukturiertes Programmieren

Kapitel MK:II. II. Wissensrepräsentation

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

Training von RBF-Netzen. Rudolf Kruse Neuronale Netze 134

Kohonennetze Selbstorganisierende Karten

% ' ' & w 1. x 1 M $ # w = x n. w n.,l,x n. x T = (x 1. x i. w i. Treppenfunktion H (Heavisidefunktion) als Aktivierungsfunktion

Vorlesung Maschinelles Lernen

Pareto optimale lineare Klassifikation

Seminar K nowledge Engineering und L ernen in Spielen

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

Künstliche Intelligenz

Universität Potsdam Institut für Informatik Lehrstuhl Maschinelles Lernen. Maschinelles Lernen

Inhaltsverzeichnis. Einführung

Transkript:

kurze Wiederholung der letzten Stunde: Neuronale Netze martin.loesch@kit.edu (0721) 608 45944 Labor Wissensrepräsentation

Übersicht Neuronale Netze Motivation Perzeptron Grundlagen für praktische Übungen Aufgaben der letzten Stunde 2

NEURONALE NETZE 3

Motivation menschliches Gehirn und PC-Rechner komplementär in ihren Stärken und Schwächen Rechner sollen Vorteile des menschlichen Gehirns ebenfalls nutzen hohe Parallelisierung Robustheit etc. Gehirn besteht aus einzelnen Gehirnzellen (Neuronen), die durch Vernetzung erst Macht gewinnen 4

Aufbau Perzeptron einzelne künstliche Nervenzelle verarbeitet Eingabesignale zu einzelnem Ausgabesignal Aufbau: x Eingabevektor t Target (Soll-Ausgabe) x 0 =1 x 1 x 2 x n... w 2 w 1 w n w 0 Σ o = { 1 1 n i=1 Bias Trick x 0 =1 w ix i θ sonst w 0 = θ w Gewichtsvektor o Output (Ist-Ausgabe) 5

Perzeptron verstehen geometrische Interpretation: Trennhyperebene (in R 2 : Gerade) Gewichte definieren genaue Lage der Ebene (Gewichte = Normale der Ebene) Gewichtete Summe = Skalarprodukt aus Eingaben und Gewichtsvektor p 1 Gewichtsvektor > 0 p 2 Gewichtsvektor > 0 n 1 Gewichtsvektor < 0 n 2 Gewichtsvektor < 0 6

Lernen - Geometrische Interpretation Hilfsmenge { } N = x x = x, x N Neues Lernproblem xw > 0, x N P Im Beispiel: alle x i aus P

Perzeptron Lernalgorithmus Start: Gegeben Lerndatenmenge P N Der Gewichtsvektor w(0) wird zufällig generiert. Setze t:=0. Testen: Ein Punkt x in P N wird zufällig gewählt. Falls x P und w(t) x > 0 gehe zu Testen Falls x P und w(t) x 0 gehe zu Addieren Falls x N und w(t) x < 0 gehe zu Testen Falls x N und w(t) x 0 gehe zu Subtrahieren Addieren: Setze w(t+1) = w(t)+x. Setze t:= t+1. Gehe zu Testen. Subtrahieren: Setze w(t+1) = w(t)-x. Setze t:=t+1. Gehe zu Testen.

AUFGABEN AUS LETZTER STUNDE 9

Aufgabe 1: Einrichtung Einrichtung der Library für die weitere Verwendung Download Entpacken in Visual C++ geeignet einbinden von allen erfolgreich beendet? 10

Aufgabe 2: Perzeptronen (1) a) Verwende die Klasse Perceptron der Flood-Library, um von Hand einen logischen AND-Operator zu programmieren (2 Eingänge, 1 Ausgang, 1&1=1, 1&0=0, 0&1=0, 0&0=0). von allen erfolgreich beendet? mögliche Lösung: AndOp = new FL::Perceptron(2); FL::Vector<double> weights(2); AndOp.set_activation_function(FL::Perceptron::Threshold); AndOp->set_bias(-0.75); weights[0] = 0.5; weights[1] = 0.5; AndOp->set_synaptic_weights(weights); FL::Vector<double> inputs(2); inputs[0] = INPUT1; inputs[1] = INPUT2; double outputsignal = AndOp->calculate_output(inputs); 11

Aufgabe 2: Perzeptronen (2) Wie kommt man zu den Parametern? Ausprobieren Grafisch überlegen (Gewichtsvektor = Normalenvektor) Gleichungssystem aufstellen: 1 w 1 +1 w 2 = w 1 + w 2 > θ 0 w 1 +1 w 2 = w 2 < θ 1 w 1 +0 w 2 = w 1 < θ 12

Aufgabe 2: Perzeptronen (3) b) Erweitere die Lösung von Teilaufgabe a), so dass der Benutzer die Anzahl der Eingaben auswählen kann und neben dem AND-Operator auch ein OR-Operator realisiert wird. alle erfolgreich? mögliche Lösung für AND: AndOp = new FL::Perceptron(numberOfInputSignals); FL::Vector<double> weights(numberofinputsignals); double andinputweight = 1.0 / numberofinputsignals; double andthreshold = 1.0 (andinputweight / 2.0); AndOp->set_bias(-andThreshold); for (int i=0; i<numberofinputsignals; i++){ weights[i] = andinputweight; } AndOp->set_synaptic_weights(weights); 13

Aufgabe 2: Perzeptronen (4) mögliche Lösung für AND: AndOp = new FL::Perceptron(numberOfInputSignals); FL::Vector<double> weights(numberofinputsignals); double andinputweight = 1.0 / numberofinputsignals; double andthreshold = 1.0 (andinputweight / 2.0); AndOp->set_bias(-andThreshold); for (int i=0; i<numberofinputsignals; i++){ weights[i] = andinputweight; } AndOp->set_synaptic_weights(weights); mögliche Lösung für OR: double orinputweight = 1.0 / numberofinputsignals; double orthreshold = orinputweight / 2.0); OrOp->set_bias(-orThreshold); for (int i=0; i<numberofinputsignals; i++){ weights[i] = orinputweight; } OrOp->set_synaptic_weights(weights); 14

XOR-Aufgabe (Aufgabe 2: Perzeptronen) c) Für den Fall von genau 2 Eingängen: Realisiere einen XOR-Operator unter Einsatz mehrerer Perzeptronen. Lösung: Mind. 2 Perzeptronen zur Erkennung von Teillösungen, mind. 1 Perzeptron zur Kombination der Teillösungen. 15

Aufgabe 2: Perzeptronen (5) c) Für den Fall von genau 2 Eingängen: Realisiere einen XOR-Operator unter Einsatz mehrerer Perzeptronen. alle erfolgreich? mögliche Lösung: FL::Perceptron xorul(2), xorlr(2), xorout(2); double bias = -0.25; FL::Vector<double> xulweights(2), xlrweights(2), xoroutweights(2); xulweights[0] = -0.5; xulweights[1] = 0.5; xlrweights[0] = 0.5; xlrweights[1] = -0.5; xoroutweights[0] = 0.5; xoroutweights[1] = 0.5; 16

Aufgabe 3: Netz von Perzeptronen Die Verknüpfung mehrerer Perzeptronen zu einem Netz erlaubt die Lösung auch komplexerer Probleme als nur die linear separierbaren. Löse mit Hilfe eines Netzes von mehreren Perzeptronen das dargestellte Klassifikationsproblem (2 diskrete Eingänge, mögliche Werte: {0, 1, 2, 3}). Aufbau der Lösung: 2 Eingaben, das eigentliche Netz von Perzeptronen, pro zu erkennender Klasse je ein x 1 Ausgabe-Perzeptron. x 2 Aufgabe 17

Fragen? Labor Wissensrepräsentation 18

Literatur Tom Mitchell: Machine Learning. McGraw-Hill, New York, 1997. M. Berthold, D.J. Hand: Intelligent Data Analysis. P. Rojas: Theorie der Neuronalen Netze Eine systematische Einführung. Springer Verlag, 1993. C. Bishop: Neural Networks for Pattern Recognition. Oxford University Press, 1995. Vorlesung Neuronale Netze 2006 : http://isl.ira.uka.de/ siehe auch Skriptum Ein kleiner Überblick über Neuronale Netze : http://www.dkriesel.com/