1 / 24

Machine Learning

Machine Learning. Neuronale Netze 2 (Mitchell Kap. 4). y. 1. 0. 1. A. A. A. A. A. A. A. 0. A. A. A. h. h. A. 1. 2. A. A. B. A. B. B. A. B. A. B. B. B. B. Kombination mehrerer Neuronen. zwei Klassen, die nicht linear separierbar sind:

Download Presentation

Machine Learning

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. Machine Learning Neuronale Netze 2 (Mitchell Kap. 4)

  2. y 1 0 1 A A A A A A A 0 A A A h h A 1 2 A A B A B B A B A B B B B Kombination mehrerer Neuronen • zwei Klassen, die nicht linear separierbar sind: • zwei innere Knoten und ein Output-Knoten • Beispiel

  3. V11 X1 Y1 V12 W11 V1m W12 W1p X2 Y2 … … … Vp1 Vp2 Wn1 Ym Xn Wn2 Vpm Wnp m Ausgabeneuronen n Eingabeneuronen p verborgene Neuronen (Hidden layer) GewichtsmatrixW Gewichtsmatrix V Mehrschichtiges Netzwerk

  4. Design der Netztopologie • Bestimmung von • Anzahl der Input-Knoten • Anzahl der inneren Schichten und jeweilige Anzahl der Knoten • Anzahl der Output-Knoten • starker Einfluß auf die Klassifikationsgüte: • zu wenige Knoten • niedrige Klassifikationsgüte • zu viele Knoten • Overfitting

  5. Aktivierungsfunktionen

  6. Sigmoid Einheit Sigmoid-Funktion:

  7. Sigmoid Einheiten • Vorteile: • Ausgabefunktion differenzierbar • Einfache Berechnung des Gradienten • Mehrschichtige Netze aus Sigmoid-Einheiten: Training durch Backpropagation • Propagiere Trainingsbeispiel durchs Netz • Berechne rückwärts Schicht für Schicht (ausgehend von den Ausgabeneuronen) die Deltas

  8. Beispiel • 2-schichtiges Netz zur Erkennung von gesprochener Sprache: Laut zwischen h_d

  9. Lernen mehrschichtiger Netze • Prinzipiell zu lernen: • Entwicklung neuer Verbindungen • Löschen existierender Verbindungen • Modifikation der Verbindungsstärke (Veränderung der Gewichte) • Modifikation des Schwellenwertes • Modifikation der Aktivierungs- bzw. Ausgabefunktion • Entwicklung neuer Zellen • Löschen bestehender Zellen • In der Praxis: • Nur Gewichtsmodifikation

  10. Backpropagation Algorithmus Prinzipiell verläuft der Lernprozess wie bei den Perzeptronen: • Dem Netz werden Beispiele vorgelegt. • Stimmt der Ausgabevektor mit den erwarteten Werten überein, dann muss nichts gemacht werden. • Liegt aber ein Fehler vor, d.h. eine Differenz zwischen Ausgabe und Ziel, dann müssen die Gewichte angepasst werden.

  11. Backpropagation Algorithmus • In einem Rückwärts-Check (Fehlerrückvermittlung) werden nun die einzelnen Gewichte im Netz (durch  ) nach oben oder unten korrigiert. • Der Tendenz nach so, daß das Ergebnis im zurückverfolgten Traingsbeispiel richtiger geworden wäre. • Dies führt nach einer Anzahl von Trainingsbeispielen zu einem verbesserten Antwortverhalten des Netzes.

  12. Backpropagation Algorithmus • Belege die Gewichte w1 ...wn sowie die Schwellenwerte  mit zufälligen Werten. • Wähle einen Eingabevektor aus, zu dem es eine Soll-Aktivierung gibt. • 1. Vorwärtsvermittlung: aktiviere die Eingabeschicht, danach schrittweise die Zwischenschichten 1....m und anschließend die Ausgabeschicht • 2. Fehlerrückvermittlung: ermittle die -Werte für die Ausgabeschicht, danach schrittweise rückschreitend die -Werte für die Zwischenschichten m .....1 ändere die Gewichte und Schwellenwerte

  13. Backpropagation Algorithmus kann folgendermaßen zusammengefaßt werden:

  14. Backpropagation Algorithmus

  15. Absteigender Gradient

  16. Abbruchbedingungen • Anzahl der Iterationen • Schwellenwert für quadratischen Fehler • In Bezug auf Trainingsmenge (-> große Gefahr von Overfitting) • In Bezug auf separate Testmenge (-> Vermeidung von Overfitting!) = Cross-Validation • Schwellenwert für Veränderung zum vorigen Schritt

  17. Probleme • Lokale Minima • Flache Plateaus

  18. Verbesserungen • Momentum • Häufig wird ein zusätzlicher Faktor (Momentum) hinzugefügt: • Idee: • Überwindung flacher Plateaus • Evt. Auch Überwindung lokaler Maxima • Paralleles Training mit versch. Initialwerten

  19. Netztopologie • Statische Topologie: • Topologie wird apriori festgelegt • eine verborgene Schicht reicht in vielen Anwendungen aus • Dynamische Topologie • dynamisches Hinzufügen von Neuronen (und verborgenen Schichten) • solange Klassifikationsgüte signifikant verbessert wird • Multiple Topologien • Trainieren mehrer dynamischer Netze parallel • z.B. je ein Netz mit 1, 2 und 3 verborgenen Schichten

  20. Backward Netzwerke = mehrschichtige Netzwerke von Sigmoid-Einheiten • U.U. sehr lange Trainingsphase (mehrere Tausend Iterationen) • Nach Training extrem schnell • Große Ausdruckskraft: • Jede Boole‘sche Funktion kann durch ein 2-schichtiges Netz (1 Hidden Layer) repräsentiert werden (-> disjunktive Normalform) • Jede beschränkte stetige Funktion kann beliebig durch ein 2-schichtiges Netz approximiert werden • Jede beliebige Funktion kann durch ein 3-schichtiges Netz (2 Hidden Layers) beliebig approximiert werden

  21. Anwendungsbeispiele • Texterkennung bei OCR Software, die sich auf gewisse Schriftformen trainieren läßt. • Auch bei der Handschrifterkennung für PDA´s (Personal Digital Assistant), wie dem Apple Newton, kommen NN zu Einsatz. • 1989: Erkennen von Postleitzahlen auf handgeschriebenen Briefumschlägen. • Das gesamte Netz benutzte nur 9760 Gewichte! • Das Netz wurde mit 7300 Beispielen trainiert und auf 2000 Beispielen getestet.

  22. Gesichtserkennung

  23. Gesichtserkennung

  24. Aufgaben • Bitte installieren und testen Sie die Programme zur Gesichtserkennung (Linux!) • http://www-2.cs.cmu.edu/~tom/faces.html • Bitte befolgen Sie dabei die Anleitung http://www.cs.cmu.edu/afs/cs.cmu.edu/project/theo-8/faceimages/docs/hw97.ps • Bitte beschreiben Sie Ihre Erfahrungen: • Liess sich das Programm installieren? • Wie ist es zu bedienen? • Was/wie haben Sie das Programm ausprobiert und was waren die Resultate?

More Related