1 / 35

Wissensextraktion mittels künstlicher neuronaler Netze Einführung

Fakultät für Wirtschaftswissenschaften. Wissensextraktion mittels künstlicher neuronaler Netze Einführung. Uwe Lämmel. www.wi.hs-wismar.de/~laemmel Uwe.Laemmel@hs-wismar.de. Künstliche Neuronale Netze Idee und Umsetzung Vorwärts gerichtete neuronale Netze Einsatz Wettbewerbslernen

Download Presentation

Wissensextraktion mittels künstlicher neuronaler Netze Einführung

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Fakultät fürWirtschaftswissenschaften Wissensextraktion mittelskünstlicher neuronaler NetzeEinführung Uwe Lämmel www.wi.hs-wismar.de/~laemmel Uwe.Laemmel@hs-wismar.de

  2. Künstliche Neuronale NetzeIdee und Umsetzung Vorwärts gerichtete neuronale Netze Einsatz Wettbewerbslernen Zusammenfassung Inhalt

  3. Literatur & Software • Lämmel, Cleve: Künstliche Intelligenz, 4. Aufl., Hanser 2012. • Zell: Simulation neuronaler Netze, Oldenbourg, 1997. • Robert Callan: The Essence of Neural Networks, Pearson Education, 2002. • Kruse,H.; u.a.: Programmierung Neuronaler Netze – Eine Turbo PASCAL-Toolbox. Addison-Wesley,1991. • Scherer, A.: Neuronale Netze- Grundlagen und Anwendungen. Braunschweig: Vieweg, 1997 • CBT Program on Neural Nets ,Springer 1998. • Stuttgart Neural Network Simulator (SNNS) www-ra.informatik.uni-tuebingen.de/SNNS/ • JavaNNS: www-ra.informatik.unituebingen.de/forschung/JavaNNS/welcome_e.html

  4. Wissensverarbeitung • Logisches Schließen • sequentiell • bewusst • Symbolverarbeitung, Regelverarbeitung • exakt • ingenieurmäßig • "klassische" KI • Erkennen, Wahrnehmen • parallel • unbewusst • Neuronale Netze • unscharf • kognitiv ausgerichtet • Konnektionismus

  5. Idee • Der Mensch lernt durch Beispiele “learning by doing” • Sehen(Erkennen), Gehen, Sprechen,… • Kann eine Maschine das auch? • Der Mensch nutzt sein Gehirn • Gehirn = Millionen einzelne Zellen • Zelle mit Zehntausenden von anderen Zellen verbunden • Ähnliche Struktur im Rechner?

  6. Idee Künstliches Neuronales Netz: • Informationsverarbeitung in Analogie zur Arbeitsweise von Säugetiergehirnen • massiv parallele, lernfähige Systeme • große Anzahl einfach strukturierter Zellen ? Nachmachen der Natur erfolgreich? • Rad, Flugzeug, ...

  7. Idee Ein künstliches neuronales Netz arbeitet auf ähnlicher Art und Weise wie ein natürliches neuronales Netz. Wir benötigen: • Software Neuronen • Software Verbindungen zwischen Neuronen • Software Lernalgorithmen

  8. Das Vorbild: Natürliches Neuron

  9. Abstraktion • Dendriten: gewichtete Verbindungen Gewicht: reelle Zahl (real) • Axon: Ausgabe: reelle Zahl • Synapse: --- (Identität: Ausgabe direkt weitergeleitet) • Zellkern: Einheit mit einfachen Funktionen Eingabe = (viele) reelle Zahlen Verarbeitung = Berechnung der Aktivierung Ausgabe: reelle Zahl (~Aktivierung)

  10. w1i w2i ... wji Dendriten Zelle mit Zellkern Axon oi (Neurit) Synapsen Natürliches / künstliches Neuron

  11. w1i w2i wji ... oi Künstliches Neuron net : Netzeingabe w : Verbindungsgewicht act : Aktivierung fact : Aktivierungsfunktion  :Schwellwert (bias) fout : Ausgabefunktion (meist ID) o : Ausgabe

  12. Übung: UND – LTU • "Male ein Netz", das wie eine UND-Funktion arbeitet! LTU – Linear Threshold Unit • Erzeuge ein ODER-Netz • Versuche ein XOR-Netz zu bauen

  13. a1=__ a2=__ w1=__ w2=__ net= o1w1+o2 w2 a = 1, falls net> = 0, sonst o = a o=__ Übung: Ein einfacher Schalter • Parameter gemäß Funktion festlegen: • Eingabe-Neuronen 1,2 mit:a1,a2 Eingabe-Muster,auch hier: oi=ai • Verbindungsgewichtew1, w2 • Schwellwert  • Dann wird Ausgabe o berechnet

  14. Aufgaben • Legen Sie die Parameter so fest, dass folgende Funktionen simuliert werden: • Logisches UND • Logisches ODER • Logisches exklusives ODER • Identität • Wie müssen die Parameter gewählt werden, falls mehr als zwei Eingaben logisch verknüpft werden? • Logisches UND bei 3 (4) Eingaben • Analog ODER bzw. XOR, z.B. genau 2 aus 4

  15. Neuronales Netz - Definition Ein neuronales Netz entsteht durch • Verknüpfung mehrere (vieler) simpler Einheiten (Neuronen), • die über Verbindungen Signale austauschen. Ein neuronales Netz ist: • zusammenhängender, gerichteter Graph, • gewichtete Kanten • Knoten (Neuronen, Units ) mit Werten (Aktivität) versehen

  16. Netzaufbau Man unterscheidet: • Eingabe-Schicht (input layer)Eingabe-Neuron • Ausgabe-Schicht (output layer)Ausgabe-Neuron • verdeckte Schicht (hidden layer)verdecktes Neuron Ein n-stufiges Netz besitztn trainierbare Verbindungen • d.h. von n+1 Schichten sind n–1 verdeckt.

  17. Bestandteile von NN • Verbindungen der Zellen • gerichteter, gewichteter Graph • Gewicht: wij (von Zelle i nach Zelle j) • Gewichtsmatrix • Propagierungsfunktion • Netzeingabe Neuron i berechnen aus: Ausgaben anderer Neuronen und Verbindungsgewichten:neti =  ojwji • Aktivierungsfunktion ( und Ausgabefunktion) • Lernregel

  18. XOR-Netz Eingabe Ausgabe • Gewichte gesetzt ! • fact = 1, net >  = 0, sonst •  = 1.0

  19. Beispiel xor • Standard-Propagierungsfunktion verwendet:neti(t) =  oj(t)wji (hier mit Zeitpunkt t ) • Aktivierungsfunktion: Schwellwertfunktion • ai = 1, falls neti(t)> i hier  = 1.0 0, sonst • Ausgabefunktion: Identität: oj = aj • Kein Lernalgorithmus • Bauen Sie das Beispiel in EXCEL nach!!

  20. Aktivierungszustände

  21. Schwellwertfunktion 1,0 0,5 0,0 -4,0 -2,0 0,0 2,0 4,0 -0,5 Identität -1,0 4,0 2,0 0,0 -4,0 -2,5 -1,0 0,5 2,0 3,5 -2,0 -4,0 Aktivierungsfunktionen Aktivierungsfunktionen sind sigmoide Funktionen

  22. y = tanh(c·x) c=3 1,0 c=2 c=1 0,5 y = 1/(1+exp(-c·x)) -0,6 0,6 1,0 -1,0 c=10 1,0 -0,5 c=3 c=1 -1,0 0,5 1,0 0,0 -1,0 Aktivierungsfunktion Logistische Funktion: Aktivierungsfunktionen sind sigmoide Funktionen

  23. Verbindungsnetzwerke • Matrixschreibweise W=[wij] : • wij = 0 keine Verbindung zwischen Neuronen i und j • wij < 0 Neuron i hemmt Nachfolger j mit |wij| • wij > 0 Neuron i regt Nachfolger j mit Stärke |wij| an • Implementation als: • schwachbesetzte Matrix (ansonsten Kosten O(n2)) • verkettete, dynamische Struktur

  24. Typische Topologien von NN vorwärts gerichtetes Netz • feed forward network • ebenenweise verbunden • nur Verbindungen zwischen benachbarten Schichten vorwärts gerichtet mit Abkürzungen • feed forward + shortcut connections • Verbindungen zwischen nicht benachbarten Schichten,d.h.  wij0, mit i Ebenek und j Ebenem und |k-m|>1

  25. Typische Topologien von NN direkte Rückkopplung • direct feedback • ermöglicht die eigene Stärkung oder Hemmung eines Neurons, diese nehmen hier oft ihre Grenzzustände an indirekte Rückkopplung • indirect feedback • Rückkopplung über mehrere Ebenen, • Aufmerksamkeit wird dabei auf bestimmte Bereiche gelenkt

  26. Typische Topologien von NN laterale Rückkopplung • ohne direkte Rückkopplung innerhalb einer Schicht • Anwendung, falls nur ein Neuron einer Schicht aktiv sein soll • winner-takes-all-Netz vollständig verbunden • ohne direkte Rückkopplung • Hopfield-Netze: symmetrische Verbindungsmatrix

  27. Lernen Lernen erfolgt aus Beispielen Netz Lern- Berechnung beispiele des Netzfehlers Veränderung der Netzparameter

  28. Lernen – Mögliche Anpassungen • Modifikation der Stärke von Verbindungen • am häufigsten • Entwicklung neuer Verbindungen • Löschen existierender Verbindungen • (2) und (3) mittels (1) realisierbar: w=0  w0 • Modifikation der Schwellwerte von Neuronen • mit zusätzlichem Neuron (On-Neuron) und Verbindungen mit (1) machbar • Modifikation der Funktionen(Aktivierungs-, Propagierungs-, Ausgabe-) • Entwicklung neuer Zellen • Löschen von Zellen

  29. Arten des Lernens • Überwachtes Lernen (supervised learning) • “Lehrer” gibt Ein- und Ausgabemuster vor, • Lernverfahren trainiert Gewichte entsprechend, • biologisch nicht plausibel • Bestärkendes Lernen (reinforcement learning) • “Lehrer” gibt nur richtig oder falsch an, • Lernverfahren muss selbst Ausgabewerte finden, • langsamer als das überwachte Lernen • Unüberwachtes Lernen (unsupervised ) • Netz lernt selbständig, • biologisch plausibel • praktisch nicht immer geeignet

  30. Wichtige Lernregeln • Hebbsche Lernregel • “Wenn Zelle j eine Eingabe von Zelle i erhält und beide gleichzeitig stark aktiviert sind, dann erhöhe das Verbindungsgewicht wij.” • Delta-Regel • Gewichtsänderung proportional zur Differenz aus erwarteter und tatsächlicher Aktivierung • Backpropagation-Regel • Verallgemeinerung der Delta-Regel für Netze mit mehr als einer trainierbaren Schicht

  31. Entwicklung neuronaler Netze Vergleich mit Trainingsausgabe Ausgabe des Netzes berechnen gewünschte Qualität erreicht Netzarchitektur aufbauen Fehler zu groß Test-Datenanlegen Trainingsmuster anlegen Gewichte anpassen Ausgabe des Netzes berechnen Netzparameter ändern Fehler zu hoch Vergleich mit erwarteter Ausgabe gewünschte Qualität erreicht Klassifikator

  32. Anwendungen • Klassifikation • Clusterung • Prognose • Mustererkennung • Nutzung bekannter Sachverhalte zum Trainieren eines Verhaltens: Lernen aus Beispielen, Verallgemeinerung • Erkennung unbekannter Strukturen in den Eingaben

  33. Anwendungen • Bilderkennung, Mustererkennung (Schrift, Zahlen, auch Gesichter): Erkennung von Autonummern, Zugangskontrolle bei Geldautomaten, • Ähnlichkeiten zwischen Molekülen • Qualitätskontrolle von Natursteinplatten • Kreditkontenüberwachung • Steuerung autonomer Fahrzeuge

  34. Anwendungen • Data Mining • Börsenvoraussagen • Verbrauchsprognosen • Klassifikation von Galaxien • Warendisposition (Supermarkt) • Sprach- und Gesichtserkennung • Prothesen für Behinderte (Blinde, Querschnittsgelähmte) • Robotersteuerung

  35. Ende • Aufgaben • JavaNNS installieren • XOR-Beispiel durchspielen • ID-Funktion realisieren • 3 Eingaben, von denen mind. 2 aktiviert sein müssen, damit Ausgabe-Neuron aktiv ist

More Related