Adaptive Systeme-2 Grundlagen Prof. Rüdiger Brause WS 2013
Organisation „Einführung in adaptive Systeme“ B-AS-1, M-AS-1 Vorlesung Dienstags 10-12 Uhr, SR11 Übungen Donnerstags 12-13 Uhr, SR 9 „Adaptive Systeme“ M-AS-2 (Theorie) Vorlesung Donnerstags 10-12 Uhr, SR 9 Übungen Donnerstags 13-14 Uhr, SR 9 Tutor: Markus Hildebrand MarkHild@stud.uni-frankfurt.de Gemeinsames Übungsblatt, unterteilt in 2 Teile Ausgabe: Dienstags, Abgabe: Dienstags per email Besprechung: Donnerstags Rüdiger Brause: Adaptive Systeme, Institut für Informatik
Vorschau Themen Einführung und Grundlagen Lernen und Klassifizieren Merkmale und lineare Transformationen Lokale Wechselwirkungen: Konkurrentes Lernen Netze mit RBF-Elementen Fuzzy-Systeme Evolutionäre und genetische Algorithmen Schwarmalgorithmen Rüdiger Brause: Adaptive Systeme, Institut für Informatik
Grundlagen Modellierung Rüdiger Brause: Adaptive Systeme, Institut für Informatik
Das Vorbild: Gehirnfunktionen Lineares Modell Zell-Potential ~ Eingabe-Spikefrequenz Ausgabe-Spikefrequenz ~ Zellstrom Ausgabe-Freq. y ~ Eingabe-Freq. x Problem: Reizähnlichkeit Ähnlich zu a) ? Ähnlich zu a) ? Rüdiger Brause: Adaptive Systeme, Institut für Informatik
Das Vorbild: Gehirnfunktionen Kodierungsbeispiel: Neuron Nr.12, Grashüpfer Creutzig et al, J.Neurosci., 29(8), 2575-2580, 2009 Zirp-Identifikation von Männchen einer Spezies Keine Konstanz von Pausen- und Silbenlänge, Verhältnis Silben / Pausen ist entscheidend Temperatur 1 Temperatur 2 Lösung: Längere Intervalle produzieren mehr spikes, Verhältnis bleibt invariant Rüdiger Brause: Adaptive Systeme, Institut für Informatik
Modellierung Grundlagen Rüdiger Brause: Adaptive Systeme, Institut für Informatik
Modellierung formaler Neuronen Dendriten Axon Zell körper Synapsen x 1 2 3 w y z Akti-vierung Ausgabe (Axon) Gewichte (Synapsen) Eingabe (Dendriten) x = (x1, ... ,xn) w = (w1, ... ,wn) Ausgabefunktionen y = S(z) z = = wTx squashing function radial basis function So wie die Biologie die Wissenschaft vom Leben ist, so ist die Informatik die Wissenschaft von der Informationsverarbeitung. Wie wird Information im Gehirn verarbeitet? Um diese Frage zu lösen, baut man am besten selbst ein eigenes Gehirn. Die Neuroinformatik versucht mit Hilfe abstrahierter, auf wenige typische Merkmale beschränkte Neuronen “intelligente” Systeme zu konstruieren. Dabei werden vom biologischen Neuron alle Eingänge (ca. 200-300 Dendriten) von einem Neuronenausgang (Axon) durch nur eine Eingabe, die Stärke aller Verbindungen (Synapsen) zu einem Neuron durch ein Gewicht modelliert. <click> Formal lassen sich alle Eingabe zu einem Tupel (Vektor) zusammenfassen, ebenso wie die Gewichte. Die Aktivität ist dann die gewichtete Summe aller Eingänge. Eine nichtlineare Ausgabefunktion analog zum biologischem Vorbild verleiht dem Modell interessante Eigenschaften. So lassen sich mehrere gleichartige Neuronen zu Funktionsgruppen zusammenfassen, den Schichten. Es läßt sich zeigen, daß zwei Schichten ausreichen, um jede beliebige Funktion beliebig dicht anzunähern, also sie zu simulieren. Dies macht es möglich, durch Anpassen der Gewichte unbekannte Funktionen und Abhängigkeiten zu lernen (black box), beispielsweise die Diagnose medizinischer Daten eines Patienten oder die Vorhersage der 3D-Struktur eines Proteins aus den Gensequenzen. Das „Lernen“ wird dabei algorithmisch angegeben als Verbesserung der Gewichte (Parameter) nach der Eingabe von Beispielen. Die mathematische Beschreibung des Lernens ist so eng mit der mathematischen Approximationstheorie verbunden. Rüdiger Brause: Adaptive Systeme, Institut für Informatik
Modellierung eines Neurons Input-Output Formalisierung X={x}, Y = {y}, W = {w} DEF Transferfunktion F: X W Y F : X DEF Lernfunktion DEF formales Neuron Rüdiger Brause: Adaptive Systeme, Institut für Informatik
Modellierung von Netzen DEF Neuronales Netz Ein neuronales Netz ist ein gerichteter Graph G := (K,E) aus einer Menge von Knoten K = {v}, den neuronalen Einheiten, und einer Menge von Kanten E KxK, den Verbindungen zwischen den Einheiten. Rüdiger Brause: Adaptive Systeme, Institut für Informatik
Ausgabefunktionen Binäre Ausgabefunktionen z.B. Kodierung von qual.Merkmalen rot = 1, braun = 0 y = SB(z) := y = SB(z) := Heavyside-Funktion Rüdiger Brause: Adaptive Systeme, Institut für Informatik
Formale Neuronen Veränderung: w3 = -⅓ → -⅔ : log. Gatter = ? Anwendung binäre Funktion: log. Gatter x x 1 2 x1 x2 z=x1/2 + x2/2 X1 OR x2 z=0 1 z=½>1/3 SB=1 z= 1>1/3 SB=1 x 3 w 2 w 1 w 3 z y w1 = ½ w2 = ½ w3 = -⅓ z = w1x1+w2x2+w3x3 Veränderung: w3 = -⅓ → -⅔ : log. Gatter = ? Schwellwertveränderung: Wechsel der Funktionalität! Rüdiger Brause: Adaptive Systeme, Institut für Informatik
Ausgabefunktionen Begrenzt-lineare Ausgabefunktionen y = SL(z,s) := k=zmax/2s y = SL(z,s) := k=zmax/s Rüdiger Brause: Adaptive Systeme, Institut für Informatik
Ausgabefunktionen Sigmoidale Ausgabefunktionen Kosinus-Quetschfunktion Fermi-Funktion, logistische Funktion Kosinus-Quetschfunktion SF(z) := K=const SC(z) := sowie hyperb. Tangens ST(z) := 2SF(z)-1 = = tanh(kz) Rüdiger Brause: Adaptive Systeme, Institut für Informatik
A A0 Formale Neuronen Zeitmodellierung Ann.: Abfluss der Ladung aus dem Zellkörper -z/t mit sinkender Spannung proportional geringer -z/t ~ –z(t) oder -z/t = –z(t) * Rechnung * t t+1 t´ Visualisierung z(t) A0 A Rüdiger Brause: Adaptive Systeme, Institut für Informatik
Schichten DEF Schicht Rüdiger Brause: Adaptive Systeme, Institut für Informatik
Lineare Transformation mit NN lineare Schicht y = = W·x Matrix-Multiplikation Rüdiger Brause: Adaptive Systeme, Institut für Informatik
Affine Transformationen Erweiterung des Eingaberaums (homogene Koordinaten) w1x1 +w2x2 + … + wnxn w1x1 +w2x2 + … + wnxn + wn+11 wTx =(w1,…,wn)(x1…,xn)T (w1,…,wn,wn+1)(x1…,xn,1)T=wTx (Skalierung, Rotation) (Skalierung, Rotation, Verschiebung) Verschiebung eines Vektors = Rüdiger Brause: Adaptive Systeme, Institut für Informatik
Affine Transformation mit NN 2-dimensional Drehung Skalierung Shift Wrot = Wscal = Wshift = W = Wshift Wrot Wscal = Affine Transformation Rüdiger Brause: Adaptive Systeme, Institut für Informatik