Übersicht lernen in bayes'schen netzen - uni-wuerzburg.de

8
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 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 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 | x 1 , … x n ) = α P(C) Π i P(x i |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 Künstliche Intelligenz: 20. Statistische Lernmethoden Frank Puppe 4 Beispiel: Restaurant-Daten 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 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).

Upload: others

Post on 26-Jun-2022

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Übersicht Lernen in Bayes'schen Netzen - uni-wuerzburg.de

1

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

Übersicht

I Künstliche IntelligenzII ProblemlösenIII Wissen und SchlussfolgernIV Logisch HandelnV Unsicheres Wissen und SchließenVI Lernen

18. Lernen aus Beobachtungen19. Wissen beim Lernen20. Statistische Lernmethoden21. Verstärkungslernen

VII Kommunizieren, Wahrnehmen und Handeln

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

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

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

Beispiel: Restaurant-Daten

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

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 2: Übersicht Lernen in Bayes'schen Netzen - uni-wuerzburg.de

2

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-Clusteringvereinfacht 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

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) …

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)

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

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.

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 3: Übersicht Lernen in Bayes'schen Netzen - uni-wuerzburg.de

3

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

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. )

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

EM (andere Darstellung 3)

• Spezifikation der ZielfunktionQ(Θ, Θ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∈∫

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 || < ε

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

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 4: Übersicht Lernen in Bayes'schen Netzen - uni-wuerzburg.de

4

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)

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

Aufbau natürlicher & künstlicher Neurone

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

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

Simulation logischer Gatter

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

Beispiel für einfaches neuronales Netzvorwä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):

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

Generische Lernprozedur in Neuronalen Netzen

Page 5: Übersicht Lernen in Bayes'schen Netzen - uni-wuerzburg.de

5

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

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

Perceptrons: Struktur

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 – wnwerden zum Anfang zufällig generiert und dann in jeder Iteration t für jedes Beispiel modifiziert. Zusammengefasst als Vektor w mit Index t: wt

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 * Fehler

Konstante α heißt Lernrate.

Perceptron-Lernformel (einfache Form)

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

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 6: Übersicht Lernen in Bayes'schen Netzen - uni-wuerzburg.de

6

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

Lernkurven bei Percpetrons

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

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

Mehrebenen - Netz

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

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

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

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 7: Übersicht Lernen in Bayes'schen Netzen - uni-wuerzburg.de

7

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 Separatorerforderlich 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 = ±1):∑i αi – ½ ∑i,j αi αj yiyj (xi * xj) mit αi > 0 und ∑i αi yi = 0

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 (x1

2,x22, √2x1x2)

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

Beispiel für optimalen Separator

Der optimale Separatoraus 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.

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

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.

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 8: Übersicht Lernen in Bayes'schen Netzen - uni-wuerzburg.de

8

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)

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 match): Technik vom Computersehen mit Abgleich korrepondierender Punkte zwischen 2 Bildern

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

Testergebnisse

Menschen haben angeblich 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.