Übersicht - Lehrstuhl für Informatik VI, Uni Würzburg

Werbung
Übersicht
I
II
III
IV
V
VI
Künstliche Intelligenz
Problemlösen
Wissen und Schlussfolgern
Logisch Handeln
Unsicheres Wissen und Schließen
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
1
Lernen in Bayes'schen Netzen
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)
Künstliche Intelligenz: 20. Statistische Lernmethoden
Frank Puppe
2
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
3
Beispiel: Restaurant-Daten
Künstliche Intelligenz: 20. Statistische Lernmethoden
Frank Puppe
4
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
5
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).
Künstliche Intelligenz: 20. Statistische Lernmethoden
Frank Puppe
6
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
Künstliche Intelligenz: 20. Statistische Lernmethoden
Frank Puppe
7
Beispiel für Bayessches Netz
Aufgabe: Es gibt 2 Beutel (bags) mit Bonbons. Die Bonbons haben 3 Attribute:
Geschmack: Kirsche, limone (flavor: cherry, lime); Verpackung: rot, grün (wrapper: red, green) & Löcher: mit, ohne (holes: yes, no). Die beiden Beutel haben
jeweils verschiedene Wahrscheinlichkeiten für Bonbontypen. Aus beiden Beuteln sind unbekannt viele Bonbons entnommen (s. Tabelle mit 1000 Bonbons).
Kann man daraus auf die Wahrscheinlichkeitsverteilung der Beutel schließen?
Geschätzt werden soll:
θ: P(Bag=1)
θ F1: P(F=cherry | Bag1)
θ F2: P(F=cherry | Bag2)
θ W1: P(W=red | Bag1) …
Wenn wir wüssten, welche
Bonbontypen aus welchen
Beuteln kommen, bräuchten wir nur Häufigkeiten
verrechnen (s.o.). Wir
wissen es aber nicht!
Künstliche Intelligenz: 20. Statistische Lernmethoden
Frank Puppe
8
EM Lösung für Bayes-Beispiel (1. Schritt)
• 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
–
Künstliche Intelligenz: 20. Statistische Lernmethoden
Frank Puppe
9
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 (lokales Maximum)
• durchgezogene Kurve
zeigt Verbesserung nach
Anzahl von Iterationen
• ab 10 Iterationen besser
als Originaldaten, (gestrichelte Linie) danach
kaum nach Anstieg
Künstliche Intelligenz: 20. Statistische Lernmethoden
Frank Puppe
10
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, ZustandsBeobachtungswahrscheinlichkeiten und Zustandsanfangswahrscheinlichk.
• Aktualisierungsfunktion für Zustandsübergangswahrscheinlichkeit (zeitunabhängig): wie oft wurde von einem bestimmten Zustand i Zustand j erreicht?
Dabei werden Erwartungswerte mit HMM-InferenzAlgorithmus berechnet.
Künstliche Intelligenz: 20. Statistische Lernmethoden
Frank Puppe
11
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.
Künstliche Intelligenz: 20. Statistische Lernmethoden
Frank Puppe
12
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
13
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
14
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)
y∈Y
=> 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 )
Künstliche Intelligenz: 20. Statistische Lernmethoden
Frank Puppe
15
EM-Übersicht (andere Darstellung 4)
Wahl des Anfangsparametersatzes 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
16
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
17
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
Künstliche Intelligenz: 20. Statistische Lernmethoden
Frank Puppe
18
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
19
Aufbau natürlicher & künstlicher Neurone
Künstliche Intelligenz: 20. Statistische Lernmethoden
Frank Puppe
20
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
21
Simulation logischer Gatter
Künstliche Intelligenz: 20. Statistische Lernmethoden
Frank Puppe
22
Beispiel für einfaches neuronales Netz
vorwärtsgerichtetes, mehrschichtiges Netz
Input: (x1, x2)
= (a1, a2)
Output a5 ist
Funktion
des Inputs
(g = Aktivierungsfunktion):
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))
Künstliche Intelligenz: 20. Statistische Lernmethoden
Frank Puppe
23
Generische Lernprozedur in Neuronalen Netzen
Künstliche Intelligenz: 20. Statistische Lernmethoden
Frank Puppe
24
Typen von Neuronalen Netzstrukturen
• 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
Künstliche Intelligenz: 20. Statistische Lernmethoden
Frank Puppe
25
Perceptrons: Struktur
Künstliche Intelligenz: 20. Statistische Lernmethoden
Frank Puppe
26
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
Künstliche Intelligenz: 20. Statistische Lernmethoden
Frank Puppe
27
Perceptron-Lernformel (einfache Form)
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 werden. 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:
Konstante α heißt Lernrate.
Künstliche Intelligenz: 20. Statistische Lernmethoden
wj ← wj + α * xj * Fehler
Frank Puppe
28
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
29
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!
Künstliche Intelligenz: 20. Statistische Lernmethoden
Frank Puppe
30
Lernkurven bei Percpetrons
(a): Mehrheitsfunktion mit 11 Inputs
(b) Restaurant-Beispiel
Künstliche Intelligenz: 20. Statistische Lernmethoden
Frank Puppe
31
Mehrebenen - Netz
Künstliche Intelligenz: 20. Statistische Lernmethoden
Frank Puppe
32
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 StufenFunktion)
• 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 verantwortlich. Die ∆i Werte werden entsprechen der Stärke ihrer Verbindungen 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
33
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
34
Optimale Netzwerkstrukturen
Bei Netzwerkstrukturen mit zu vielen Knoten kommt es zur
Überanpassung bis zum Auswendiglernen, bei zu wenig
Knoten kann das Netz unfähig sein, die gewünschte Funktion 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 Netz
startet und nach Bedarf Knoten hinzufügt.
Künstliche Intelligenz: 20. Statistische Lernmethoden
Frank Puppe
35
Diskussion des Backpropagation-Lernen
•
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
Künstliche Intelligenz: 20. Statistische Lernmethoden
Frank Puppe
36
Kernel Machines (Support Vector Machines)
• Kernel machines kombinieren Vorteile von Perceptrons
(einfacher und effizienter Lernalgorithmus) und Mehrebenennetze (Ausdrucksstärke)
• Zentrale Idee: Benutze lineare Separatoren, aber in einem
veränderten (höherdimensionierten) Zustandsraum
• Neues Problem: Gefahr der Überanpassung, da in einem ddimensionalen 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 = ±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
37
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,x22, √2x1x2)
Künstliche Intelligenz: 20. Statistische Lernmethoden
Frank Puppe
38
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.
Künstliche Intelligenz: 20. Statistische Lernmethoden
Frank Puppe
39
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
40
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
41
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
Künstliche Intelligenz: 20. Statistische Lernmethoden
Frank Puppe
42
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
43
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
44
Testergebnisse
Die Fehlerraten bewegen sich zwischen 2,4%
(Nearest Neighbor) und 0,56% (Virtual Support Vector
Machine). Neuronale Netze liegen dazwischen.
Menschen haben angeblich eine Fehlerquote von
0,2% für dieses Problem (nach anderen Quellen aber
2,5%).
Künstliche Intelligenz: 20. Statistische Lernmethoden
Frank Puppe
45
Herunterladen