45
Künstliche Intelligenz: 20. Statistische Lernmethoden Frank Puppe 1 Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlussfolgern IV Logisch Handeln V Unsicheres Wissen und Schließen VI Lernen 18. Lernen aus Beobachtungen 19. Wissen beim Lernen 20. Statistische Lernmethoden 21. Verstärkungslernen VII Kommunizieren, Wahrnehmen und Handeln

Frank Puppe 1 Künstliche Intelligenz: 20. Statistische Lernmethoden Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlussfolgern IV

Embed Size (px)

Citation preview

Page 1: Frank Puppe 1 Künstliche Intelligenz: 20. Statistische Lernmethoden Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlussfolgern IV

Künstliche Intelligenz: 20. Statistische Lernmethoden Frank Puppe 1

Übersicht

I Künstliche Intelligenz

II Problemlösen

III Wissen und Schlussfolgern

IV Logisch Handeln

V Unsicheres Wissen und Schließen

VI Lernen

18. Lernen aus Beobachtungen

19. Wissen beim Lernen

20. Statistische Lernmethoden

21. Verstärkungslernen

VII Kommunizieren, Wahrnehmen und Handeln

Page 2: Frank Puppe 1 Künstliche Intelligenz: 20. Statistische Lernmethoden Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlussfolgern IV

Künstliche Intelligenz: 20. Statistische Lernmethoden Frank Puppe 2

Lernen der Netzstruktur bzw. der Wahrscheinlichkeitstabellen:

Bekannte Netzstruktur, beobachtbare Variablen: Update der Wahrscheinlichkeitstabellen

Bekannte Netzstruktur, teilweise versteckte Variablen:EM-Algorithmus

Unbekannte Netzstruktur, beobachtbare Variablen:Suchproblem durch mögliche Netzstrukturen

Unbekannte Netzstruktur, teilweise versteckte Variablen:Offenes Forschungsproblem (z.B. strukturierter EM-Algo)

Lernen in Bayes'schen Netzen

Page 3: Frank Puppe 1 Künstliche Intelligenz: 20. Statistische Lernmethoden Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlussfolgern IV

Künstliche Intelligenz: 20. Statistische Lernmethoden Frank Puppe 3

Lernen von Wahrscheinlichkeitstabellen

• Gegeben ist die Netztopologie und N Fälle:– Apriori-Wahrscheinlichkeiten P(D): |D| / N– bedingte Wahrscheinlichkeiten P(S|D): |S D| / |D|

• Problem: Unbeobachtete Variablen (Null-Wahrscheinlichkeiten)

• Vereinfachung Bayesscher Netze zu naiven Bayes Modellen– Unabhängigkeitsannahme in naiven Bayes Modellen

– Formel (Wdh): P (C | x1, … xn) = P(C) i P(xi|C)

– Verbesserung durch Boosting: Neue Hypothesen werden dadurch erzeugt, das falsch bewertete Fälle stärker gewichtet werden (äquivalent zur Vervielfachung dieser Fälle)

– Sehr effizientes Lernverfahren (keine Suche erforderlich)– Eines der effektivsten allgemeinen Lernverfahren

Page 4: Frank Puppe 1 Künstliche Intelligenz: 20. Statistische Lernmethoden Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlussfolgern IV

Künstliche Intelligenz: 20. Statistische Lernmethoden Frank Puppe 4

Beispiel: Restaurant-Daten

Page 5: Frank Puppe 1 Künstliche Intelligenz: 20. Statistische Lernmethoden Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlussfolgern IV

Künstliche Intelligenz: 20. Statistische Lernmethoden Frank Puppe 5

Vorteile versteckter Variablen

• Wenn jede Variable 3 mögliche Werte hat, geben die Zahlen bei den Knoten die Größe der Wahrscheinlichkeitstabellen an.

Man beobachtet eine starke Zunahme von (a) mit versteckter Variable nach (b) ohne versteckte Variable

Page 6: Frank Puppe 1 Künstliche Intelligenz: 20. Statistische Lernmethoden Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlussfolgern IV

Künstliche Intelligenz: 20. Statistische Lernmethoden Frank Puppe 6

Expectation-Maximization (EM) Algorithmus

• Der EM-Algorithmus ist eine Familie von Algorithmen zur iterativen Approximation in Systemen mit versteckten Größen. Anwendbar u.a. für:– für Gaussche Dichteverteilungen– für Bayessche Netze– für Hidden Markov Modelle

• EM berechnet Erwartungswerte für die versteckten Größen basierend auf den beobachteten Größen und der gemeinsamen Verteilung.

• EM konvergiert gegen ein lokales Maximum, die Qualität der Lösung ist nicht zwingend gut (abhängig vom Startwert).

Page 7: Frank Puppe 1 Künstliche Intelligenz: 20. Statistische Lernmethoden Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlussfolgern IV

Künstliche Intelligenz: 20. Statistische Lernmethoden Frank Puppe 7

Beispiel für Dichteverteilungen: Clustering

• Gegeben: Menge von Punkten

• Gesucht: k Cluster für Punkte

• Lösungsidee EM-Algorithmus:– Initialisierung: Gib eine Gaussverteilung

mit den Parametern Gewicht, Mittelwert und Covarianz (oder

bei K-Means-Clustering vereinfacht einen Mittelpunkt) für jedes Cluster vor.

– E-Schritt (Expectation): Berechne die Wahrscheinlichkeit für jeden Punkt, dass er zu einem Cluster gehört

– M-Schritt (Maximation): Aktualisiere aus der berechneten Zugehörigkeit der Punkte für alle Cluster seine Parameter

– Terminierung: Wiederhole, bis nur noch geringe Änderungen

Page 8: Frank Puppe 1 Künstliche Intelligenz: 20. Statistische Lernmethoden Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlussfolgern IV

Künstliche Intelligenz: 20. Statistische Lernmethoden Frank Puppe 8

Beispiel für Bayessches NetzAufgabe: Es gibt 2 Beutel (bags) mit Bonbons. Die Bonbons haben 3 Attribute: Geschmack: Kirsche, limone (flavor: cherry, lime); Verpackung: rot, grün (wrap-per: red, green) & Löcher: mit, ohne (holes: yes, no). Die beiden Beutel haben jeweils verschiedene Wahrscheinlichkeiten für Bonbontypen. Aus beiden Beu-teln sind unbekannt viele Bonbons entnommen (s. Tabelle mit 1000 Bonbons). Kann man daraus auf die Wahrscheinlichkeitsverteilung der Beutel schließen?

Wenn wir wüssten, welche Bonbontypen aus welchen Beuteln kommen, bräuch-ten wir nur Häufigkeiten verrechnen (s.o.). Wir wissen es aber nicht!

Geschätzt werden soll:: P(Bag=1) F1: P(F=cherry | Bag1)

F2: P(F=cherry | Bag2)

W1: P(W=red | Bag1) …

Page 9: Frank Puppe 1 Künstliche Intelligenz: 20. Statistische Lernmethoden Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlussfolgern IV

Künstliche Intelligenz: 20. Statistische Lernmethoden Frank Puppe 9

• Ziel: Werte für die Apriori-Wahrscheinlichkeit der Beutel, d.h. = P(Bag1) und der bedingten Wahrscheinlichkeiten:

F1 = P(Flavor = Cherry | Bag1) W1 = P(Wrapper = Red | Bag1) H1 = P(Hole = Yes | Bag1)

F2 = P(Flavor = Cherry | Bag2) W2 = P(Wrapper = Red | Bag2) H2 = P(Hole = Yes | Bag2)

• Vorgehen (1. Iteration): – Rate alle Parameter, z.B. = 0,5; F1=W1=H1=0,8; F2=W2=H2=0,3– Berechne für verborgene Variablen (z.B. Bag1) die erwartete Häufigkeit

= =

– erwartete Häufigkeit von rotverpackten Kirsch-Bonbons mit Loch aus

Beutel1 = 273 * = 228, analog für Rest:

– erwartete Häufigkeit von Bonbons aus Beutel1: = 612.– Berechne daraus = P(Bag1) = / N = 612 / 1000 = 0,612– Das gleiche für übrige Häufigkeiten bzw. bedingte Wahrscheinlichkeiten– Ergebnis: =0,61; F1=0,67 W1=0,65 H1=0,66; F2=0,39 W2=0,38 H2=0,38

EM Lösung für Bayes-Beispiel (1. Schritt)

Page 10: Frank Puppe 1 Künstliche Intelligenz: 20. Statistische Lernmethoden Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlussfolgern IV

Künstliche Intelligenz: 20. Statistische Lernmethoden Frank Puppe 10

EM Lösung für Bayes-Beispiel (Iteration)

• Die neuen Parameter , F1, W1, H1, F2, W2, H2 nach der

ersten Iteration erhöhen die Passgenauigkeit von Modell und

Daten (Logorithmus der Likelihood) beträchtlich (Faktor e23)

• Iteriere solange, bis sich die "Loglikelihood" nicht mehr stark erhöht (loka-les Maximum)

• durchgezogene Kurve zeigt Verbesserung nach Anzahl von Iterationen

• ab 10 Iterationen besser als Originaldaten, (gestri-chelte Linie) danach kaum nach Anstieg

Page 11: Frank Puppe 1 Künstliche Intelligenz: 20. Statistische Lernmethoden Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlussfolgern IV

Künstliche Intelligenz: 20. Statistische Lernmethoden Frank Puppe 11

Beispiel für Hidden Markov-Modell

• HMM entsprechen Bayes-Netzen mit nur einer diskreten Zustandsvariablen– Gegeben: endliche Beobachtungssequenzen (z.B. Schirme), Initialmodell– Gesucht: Modell mit Zustandsübergangswahrscheinlichkeiten, Zustands-

Beobachtungswahrscheinlichkeiten und Zustandsanfangswahrscheinlichk.

• Aktualisierungsfunktion für Zustandsübergangswahrscheinlichkeit (zeitunab-hängig): wie oft wurde von einem bestimmten Zustand i Zustand j erreicht?

Dabei werden Erwartungs-werte mit HMM-Inferenz-Algorithmus berechnet.

Page 12: Frank Puppe 1 Künstliche Intelligenz: 20. Statistische Lernmethoden Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlussfolgern IV

Künstliche Intelligenz: 20. Statistische Lernmethoden Frank Puppe 12

Allgemeine Form des EM Algorithmus

• Gegeben: Beobachtbare Variablen x, Anfangsmodell • Expectation-Schritt: Berechnung der versteckten Variablen Z = z

• Maximization-Schritt: Berechnung der neuen Modellparameter – Bei Gaussverteilungen: Mittelwert, Varianz, (Gewichte), usw.– Bei Bayesschen Netzen: Wahrscheinlichkeitstabellen– Bei HMM: Wahrscheinlichkeiten von einem Zustand zum

nächsten und zu Beobachtungen (Zeitinvariant!), Anfangswahrscheinlichkeit für Zustand.

Page 13: Frank Puppe 1 Künstliche Intelligenz: 20. Statistische Lernmethoden Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlussfolgern IV

Künstliche Intelligenz: 20. Statistische Lernmethoden Frank Puppe 13

Andere Darstellung für EM (Sem-Vortrag) http://page.mi.fu-berlin.de/~biocomp/Lehre/MarkovKetten_WS02/seminar/Vortraege/Georgi.ppt

• Sequenz von Observablen X= x1...xn

• Gesucht ist Modell Θ um X zu beschreiben

• Problem: versteckte Parameter Y = y1...ym führen zu unvollständigen Daten - systematische Unvollständigkeit Y ist grundsätzlich nicht beobachtbar - zufällige Unvollständigkeit Y wird von dem verwendeten Sensor nicht erfasst

• Definition: Z = (X,Y) ist der vollständige Datensatz

Page 14: Frank Puppe 1 Künstliche Intelligenz: 20. Statistische Lernmethoden Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlussfolgern IV

Künstliche Intelligenz: 20. Statistische Lernmethoden Frank Puppe 14

EM (andere Darstellung 2)

• Wahrscheinlichkeitsverteilung der vollständigen Daten: p(Z | Θ) = p(X,Y| Θ) = p(Y|X, Θ) * p(X| Θ)

• Likelihood-Funktion der vollständigen Daten: L(Θ|Z) = L(Θ|X,Y) = P(X,Y| Θ)

EM-Prinzip:

1. Berechne Erwartungswert für die versteckten Variablen basierend auf Θ und X ( E-Schritt)

2. Maxmiere Erwartungswert bezüglich neuen Parametern Θ‘ (M-Schritt)

( Wiederhole 1. und 2. )

Page 15: Frank Puppe 1 Künstliche Intelligenz: 20. Statistische Lernmethoden Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlussfolgern IV

Künstliche Intelligenz: 20. Statistische Lernmethoden Frank Puppe 15

EM (andere Darstellung 3)

• Spezifikation der Zielfunktion Q(Θ, Θi-1) = E [ log p(X,Y| Θ) | X, Θi-1] Y ist Zufallsvariable mit Verteilung f( y |X, Θi-1), dann gilt

E [ log P(X,Y|Θ) | X, Θi-1] = log p( X,Y | Θ) f( y |X, Θi-1) => Q(Θ, Θi-1) ist nun eine analytisch berechenbare Funktion

EM-Prinzip II: E-Schritt: Berechne Q(Θ, Θi-1) M-Schritt: Berechne Θ = argmax Q(Θ, Θi-1) ( Iteration bis zur Konvergenz )

Θ

y Y

Page 16: Frank Puppe 1 Künstliche Intelligenz: 20. Statistische Lernmethoden Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlussfolgern IV

Künstliche Intelligenz: 20. Statistische Lernmethoden Frank Puppe 16

EM-Übersicht (andere Darstellung 4)

Wahl des Anfangs-parametersatzes hat hat Einfluß auf die Güte der Lösung.

Auswertung von Q(Θi+1, Θi)

Auswertung von:Θ‘ = argmax Q(Θ‘, Θ)

Θ

Abbruch der Iteration durch geeignetes Konvergenzkriterium

|| Θi+1 - Θi || < ε

Page 17: Frank Puppe 1 Künstliche Intelligenz: 20. Statistische Lernmethoden Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlussfolgern IV

Künstliche Intelligenz: 20. Statistische Lernmethoden Frank Puppe 17

Lernen unbekannter Bayesscher Netzstrukturen

• Untypische Situation, da die Struktur von Netzen, d.h. von Kausalitäten im allgemeinen gut Experten geschätzt werden kann.

• Strukturelle Lernalgorithmen noch nicht ausgereift

• Basisidee: Suche von Netzstrukturen– Starte mit leerem Netz und füge schrittweise Variablen hinzu– Starte mit fertigem Netz und modifiziere es

• Kernproblem: Qualitätsfunktion zur Bewertung von Netzen– Test auf Unabhängigkeiten (Problem: Schwellwerte)– Test auf Erklärungsfähigkeit der Daten (Problem: Overfitting)

• Bestrafung von Komplexität erforderlich

Page 18: Frank Puppe 1 Künstliche Intelligenz: 20. Statistische Lernmethoden Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlussfolgern IV

Künstliche Intelligenz: 20. Statistische Lernmethoden Frank Puppe 18

Instanzen-basiertes Lernen

• Bisher: parametrisches Lernen: Aus den Beispielen werden die Parameter eines vorgegebenen Modells gelernt

Komplexität der Hypothese vorgegeben

• Nicht-parametrisches Lernen: Komplexität der Hypothese kann mit Daten wachsen; Instanzen-basierte Lernmethoden:

– Nearest-Neighbor Modelle

Page 19: Frank Puppe 1 Künstliche Intelligenz: 20. Statistische Lernmethoden Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlussfolgern IV

Künstliche Intelligenz: 20. Statistische Lernmethoden Frank Puppe 19

Nearest-Neighbor Modelle (Fallbasiertes Schließen)

• Annahme: Ähnliche Fälle haben ähnliche Lösungen• Problem: Wie definiert man Ähnlichkeit bzw. Distanz?

– kontinuierliche Werte: • Euklidische Distanz: (Wurzel aus Summe der Quadrate der

Einzeldifferenzen pro Attribut) • Wenn Normalisierung erforderlich: Abstand zweier Werte in

Vielfachen der Standardabweichung• Differenz der Werte / Max-Differenz

– diskrete Werte• Hamming-Distanz: Anzahl unterschiedlicher Attribute / alle Attribute• gewichtete Hamming-Distanz mit partiellen Ähnlichkeiten

– Datenabstraktion nützlich• Eigenschaften: keine Lernzeit aber bei großer Fallzahl langsam

– schnelles Fallretrieval notwendig (erfordert passende Datenstrukturen, die gelernt werden müssen)

Page 20: Frank Puppe 1 Künstliche Intelligenz: 20. Statistische Lernmethoden Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlussfolgern IV

Künstliche Intelligenz: 20. Statistische Lernmethoden Frank Puppe 20

Aufbau natürlicher & künstlicher Neurone

Page 21: Frank Puppe 1 Künstliche Intelligenz: 20. Statistische Lernmethoden Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlussfolgern IV

Künstliche Intelligenz: 20. Statistische Lernmethoden Frank Puppe 21

Verschiedene Aktivierungsfunktionen

(a) Stufenfunktion (nicht differentierbar)(b) Sigmoidfunktion (differentierbar)

exakte bzw. ungefähre Schwelle (Defaultmäßig bei ini = 0) kann durch "Bias-Weight" W0 verschoben werden

Page 22: Frank Puppe 1 Künstliche Intelligenz: 20. Statistische Lernmethoden Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlussfolgern IV

Künstliche Intelligenz: 20. Statistische Lernmethoden Frank Puppe 22

Simulation logischer Gatter

Page 23: Frank Puppe 1 Künstliche Intelligenz: 20. Statistische Lernmethoden Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlussfolgern IV

Künstliche Intelligenz: 20. Statistische Lernmethoden Frank Puppe 23

Beispiel für einfaches neuronales Netz

vorwärtsgerichtetes, mehrschichtiges Netz

a5 = g(W3,5 * a3 + W4,5 * a4) = g(W3,5 * g(W1,3 * a1 + W2,3 * a2) + W4,5 * g(W1,4 * a1 + W2,4 * a2))

Input: (x1, x2)

= (a1, a2)

Output a5 ist Funktion des Inputs (g = Akti-vierungs-funktion):

Page 24: Frank Puppe 1 Künstliche Intelligenz: 20. Statistische Lernmethoden Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlussfolgern IV

Künstliche Intelligenz: 20. Statistische Lernmethoden Frank Puppe 24

Generische Lernprozedur in Neuronalen Netzen

Page 25: Frank Puppe 1 Künstliche Intelligenz: 20. Statistische Lernmethoden Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlussfolgern IV

Künstliche Intelligenz: 20. Statistische Lernmethoden Frank Puppe 25

• vorwärtsgerichtete (feedforward) Netze- Perzeptrons: ohne versteckte Knoten - Mehrebenen-Netze: mit versteckten Knoten

• zirkuläre (recurrent) Netze (output input): schwierig zu verstehen, z.B.:- Hopfield-Netze: mit bidirektionalen Kanten und

symmetrischen Gewichten, alle Knoten sind sowohl Ein- als auch Ausgabeknoten

- Boltzmann Maschinen: mit bidirektionalen Kanten und symmetrischen Gewichten, mit inneren Knoten,

stochastische Aktivierungsfunktion

Typen von Neuronalen Netzstrukturen

Page 26: Frank Puppe 1 Künstliche Intelligenz: 20. Statistische Lernmethoden Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlussfolgern IV

Künstliche Intelligenz: 20. Statistische Lernmethoden Frank Puppe 26

Perceptrons: Struktur

Page 27: Frank Puppe 1 Künstliche Intelligenz: 20. Statistische Lernmethoden Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlussfolgern IV

Künstliche Intelligenz: 20. Statistische Lernmethoden Frank Puppe 27

Basis-Perzeptron-Lernalgorithmus (nach Rojas)

Beispiele (Punkte): x1 - xn , die positiv (P) oder negativ (N) bewertet sind. Zusammengefasst als Vektor x.

Gewichte w0 – wn werden zum Anfang zufällig generiert und dann in jeder Iteration t für jedes Beispiel modifiziert. Zusammengefasst als Vektor w mit Index t: wt

Page 28: Frank Puppe 1 Künstliche Intelligenz: 20. Statistische Lernmethoden Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlussfolgern IV

Künstliche Intelligenz: 20. Statistische Lernmethoden Frank Puppe 28

Aktivierung eines Output-Neurons O (g = Stufenfunktion) :

O = g (i wi xi)

Der Fehler eines Output-Neurons pro Beispiel ist der korrekte Output T minus dem tatsächlichen Output O:

Fehler = T – O = T - g (i wi xi)

Er muss auf alle Inputs entsprechend ihrem Beitrag zu O verteilt wer-den. Der Beitrag des Inputsneurons j ist wj xj. Falls xj positiv, führt eine

Erhöhung von wj zu einer Erhöhung des Gesamtoutputs, sonst zu einer

Erniedrigung.

Daraus folgt Aktualisierungsregel für jedes wj:

wj wj + * xj * FehlerKonstante heißt Lernrate.

Perceptron-Lernformel (einfache Form)

Page 29: Frank Puppe 1 Künstliche Intelligenz: 20. Statistische Lernmethoden Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlussfolgern IV

Künstliche Intelligenz: 20. Statistische Lernmethoden Frank Puppe 29

Verbesserung der Perceptron-Lernformel

• Die einfache Aktualisierung der Gewichte konvergiert immer mit den korrekten Werten, wenn die zu lernende Funktion linear separierbar ist (s. nächste Folie).

• Allerdings kann es exponentiell lange dauern!

• Effizienzverbesserungen:– Normierung aller Eingabedaten– Delta-Regel: Die Gewichte werden nicht um das Produkt

(Eingabewert * Fehler) sondern um den minimalen Betrag geändert, der erforderlich ist, um das Beispiel richtig zu klassifizieren

Page 30: Frank Puppe 1 Künstliche Intelligenz: 20. Statistische Lernmethoden Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlussfolgern IV

Künstliche Intelligenz: 20. Statistische Lernmethoden Frank Puppe 30

Lineare Trennbarkeit in Perceptrons

Während die "und" und die oder-funktion linear trennbar sind (a und b), ist die XOR-Funktion (c) nicht linear trennbar und kann daher von einem Perceptron nicht gelernt werden!

Page 31: Frank Puppe 1 Künstliche Intelligenz: 20. Statistische Lernmethoden Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlussfolgern IV

Künstliche Intelligenz: 20. Statistische Lernmethoden Frank Puppe 31

Lernkurven bei Percpetrons

(a): Mehrheitsfunktion mit 11 Inputs(b) Restaurant-Beispiel

Page 32: Frank Puppe 1 Künstliche Intelligenz: 20. Statistische Lernmethoden Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlussfolgern IV

Künstliche Intelligenz: 20. Statistische Lernmethoden Frank Puppe 32

Mehrebenen - Netz

Page 33: Frank Puppe 1 Künstliche Intelligenz: 20. Statistische Lernmethoden Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlussfolgern IV

Künstliche Intelligenz: 20. Statistische Lernmethoden Frank Puppe 33

Backpropagation-Lernen• Unterschiede zu Perceptrons:

- Es gibt mehrere Outputs, daher ist der Output ein Vektor hw(x), der mit dem Beispiel-Output-Vektor y verglichen wird: Fehler = y – hw

- Auch für hidden layers muss ein Fehler berechnet werden, deswegen muss Aktivierungsfunktion differenzierbar sein (Sigmoid- statt Stufen-Funktion)

• Gewichtsänderung der Output-Neuronen- Wj,i Wj,i + * aj * i mit i = Fehleri * g'(ini)

• Gewichtsänderung der versteckten Neuronen- Wir brauchen Äquivalent für Fehler der Output-Neuronen

- Idee: der versteckte Knoten j ist für einen Teil des Fehlers bei i verant-

wortlich. Die i Werte werden entsprechen der Stärke ihrer Verbindun-

gen zwischen versteckten Knoten und Output-Knoten aufgeteilt und

rückwärts propagiert, um die j-Werte der versteckten Ebene zu liefern

j = g'(inj) (i Wj,i i )

- Gewichtsänderungsregel: Wk,j Wk,j + * ak * j

Page 34: Frank Puppe 1 Künstliche Intelligenz: 20. Statistische Lernmethoden Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlussfolgern IV

Künstliche Intelligenz: 20. Statistische Lernmethoden Frank Puppe 34

Restaurant-Beispiel: Lernkurve

(a) langsame Reduktion der Fehler über verschiedene Epochen beim Backpropagation Lernen

(b) Vergleich der Lernkurven beim Backpropagation und Entscheidungsbaumlernen

Page 35: Frank Puppe 1 Künstliche Intelligenz: 20. Statistische Lernmethoden Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlussfolgern IV

Künstliche Intelligenz: 20. Statistische Lernmethoden Frank Puppe 35

Bei Netzwerkstrukturen mit zu vielen Knoten kommt es zur Überanpassung bis zum Auswendiglernen, bei zu wenigKnoten kann das Netz unfähig sein, die gewünschte Funk-tion zu repräsentieren.

Bisher gibt es keine guten Heuristiken, um die optimale Netzwerkgröße für ein gegebenen Problem abzuschätzen.

Eine Idee besteht darin, daß man mit einem kleinen Netzstartet und nach Bedarf Knoten hinzufügt.

Optimale Netzwerkstrukturen

Page 36: Frank Puppe 1 Künstliche Intelligenz: 20. Statistische Lernmethoden Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlussfolgern IV

Künstliche Intelligenz: 20. Statistische Lernmethoden Frank Puppe 36

• Ausdrucksstärke: Abhängig von Netztopologie

• Berechnungseffizienz: Langsame Lernrate, Lokale Minima

• Generalisierungsfähigkeit: Gut, wenn Output sich kontinuierlich mit dem Input verändert

• Sensitivität für Rauschen: Sehr tolerant

• Transparenz: Black Box

• Integrierbarkeit von Vorwissen: Schwierig

Diskussion des Backpropagation-Lernen

Page 37: Frank Puppe 1 Künstliche Intelligenz: 20. Statistische Lernmethoden Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlussfolgern IV

Künstliche Intelligenz: 20. Statistische Lernmethoden Frank Puppe 37

Kernel Machines (Support Vector Machines)

• Kernel machines kombinieren Vorteile von Perceptrons (einfacher und effizienter Lernalgorithmus) und Mehrebenen-netze (Ausdrucksstärke)

• Zentrale Idee: Benutze lineare Separatoren, aber in einem veränderten (höherdimensionierten) Zustandsraum

• Neues Problem: Gefahr der Überanpassung, da in einem d-dimensionalen Raum d Parameter für linearen Separator erforderlich sind, wenn N (Anzahl der Datenpunkte) d.

• Lösung: Suche nach optimalen linearen Separatoren (mit größtem Abstand zwischen positiven auf der einen und negativen Beispielen auf der anderen Seite):

Finde Parameter i, die folgenden Ausdruck maximieren (Beispiele xi mit Klassifikation yi):

i i – ½ i,j i j yiyj (xi * xj) mit i > 0 und i i yi = 0

Page 38: Frank Puppe 1 Künstliche Intelligenz: 20. Statistische Lernmethoden Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlussfolgern IV

Künstliche Intelligenz: 20. Statistische Lernmethoden Frank Puppe 38

Beispiel für lineare Trennbarkeit nach Transformation

(a) 2-dimensionale Daten (positive Beispiele im Kreis)

(b) gleichen Daten nach Abbildung in 3-dimensionalen Raum (x12,x2

2, 2x1x2)

Page 39: Frank Puppe 1 Künstliche Intelligenz: 20. Statistische Lernmethoden Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlussfolgern IV

Künstliche Intelligenz: 20. Statistische Lernmethoden Frank Puppe 39

Beispiel für optimalen Separator

Der optimale Separator aus der letzten Folie (nur 2 der 3 Dimensionen gezeigt) ist die dicke Linie, die den abstand zu den nächsten Punkten, den Stützvektoren (support vectors, markiert mit Kreisen) maximiert.

Page 40: Frank Puppe 1 Künstliche Intelligenz: 20. Statistische Lernmethoden Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlussfolgern IV

Künstliche Intelligenz: 20. Statistische Lernmethoden Frank Puppe 40

Transformation in höherdimensionierten Raum

i i – ½ i,j i j yiyj (xi * xj) mit i > 0 und i i yi = 0

• Eigenschaften:– Der Ausdruck hat ein einziges globales Maximum, das effizient

gefunden werden kann!– Die Daten gehen nur als Punkt-Produkte benachbarter Punkte in die

Gleichung ein!

– Die i sind nur für die Stützvektoren ≠ 0, daher ist die effektive Anzahl von Parametern relativ klein (<< N)!

• Transformation– Suche Separator in hochdimensionalen Merkmalsraum F(x)

– Ersetze dazu xi * xj durch F(xi)* F(xj), wobei das Punktprodukt oft ausgerechnet werden kann, ohne F für jeden Punkt zu berechnen, z.B. F(xi)* F(xj) = (xi * xj )2

– (xi * xj )2 hießt Kernfunktion (kernel function): K (xi ,xj )

– allgemein: (xi * xj ) wird durch eine Kernfunktion K (xi ,xj ) ersetzt

– viele Kernfunktionen (auch sehr hochdimensionale) möglich

Page 41: Frank Puppe 1 Künstliche Intelligenz: 20. Statistische Lernmethoden Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlussfolgern IV

Künstliche Intelligenz: 20. Statistische Lernmethoden Frank Puppe 41

Umgang mit verrauschen Daten

• Kernel machines eignen sich auch für Daten, die sich nicht fehlerfrei trennen lassen.

• Dazu muss ein Parameter vorgegeben werden, der die erwartete Fehlerspanne charakterisiert.

• Der Basisalgorithmus ändert sich nicht.

Page 42: Frank Puppe 1 Künstliche Intelligenz: 20. Statistische Lernmethoden Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlussfolgern IV

Künstliche Intelligenz: 20. Statistische Lernmethoden Frank Puppe 42

Diskussion Kernel / Support Vector Machines

• Sehr mächtiges Lernverfahren

• Ähnlich wie, aber mit Vorteilen gegenüber Neuronalen Netzen

• Erfreut sich in letzter Zeit zunehmender Beliebtheit

Page 43: Frank Puppe 1 Künstliche Intelligenz: 20. Statistische Lernmethoden Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlussfolgern IV

Künstliche Intelligenz: 20. Statistische Lernmethoden Frank Puppe 43

Beispiel: Erkennen handgeschriebener Ziffern

• Standard-Benchmark-Problem mit Datenbank von 60 000 markierten Ziffern in 20*20=400 Pixeln mit 8 Graustufen (oben leicht, unten schwer identifizierbare Beispiele)

Page 44: Frank Puppe 1 Künstliche Intelligenz: 20. Statistische Lernmethoden Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlussfolgern IV

Künstliche Intelligenz: 20. Statistische Lernmethoden Frank Puppe 44

Getestete Lernverfahren

• Nearest Neighbor (ohne Anpassungen und Parametereinstellungen)

• Neuronales Netz mit einer versteckten Ebene: – 400 Input Knoten (pro Pixel)– 10 Output Knoten (pro Ziffer)– 300 versteckte Knoten (mit Kreuzvalidierung optimiert)– 123 000 Gewichte

• Spezialisierte Neuronale Netze (LeNet): – optimiert bezüglich der Struktur des Problems

• Neuronales Netz (LeNet) mit Boosting von 3 Hypothesen

• Support Vector Machine ohne Anpassungen und Parametereinstellungen

• Virtuelle Support Vector Machine – Startet mit Ergebnis der Support Vector Machine– Nachträgliche Optimierung mit Ausnutzen der Struktur des Problems

• Gestaltvergleich (shape matching): Technik vom Computersehen mit Abgleich korrepondierender Punkte zwischen 2 Bildern

Page 45: Frank Puppe 1 Künstliche Intelligenz: 20. Statistische Lernmethoden Übersicht I Künstliche Intelligenz II Problemlösen III Wissen und Schlussfolgern IV

Künstliche Intelligenz: 20. Statistische Lernmethoden Frank Puppe 45

Testergebnisse

Menschen haben angeblich eine Fehler eine Fehlerquote von 0,2% für dieses Problem (nach anderen Quellen aber 2,5%).

Die Fehlerraten bewegen sich zwischen 2,4% (Nearest Neighbor) und 0,56% (Virtual Support Vector Machine). Neuronale Netze liegen dazwischen.