Universität Potsdam
Institut für Informatik
Lehrstuhl Maschinelles Lernen
Hypothesenbewertung
Christoph Sawade/Niels Landwehr
Dominik Lahmann
Tobias Scheffer
Überblick
Hypothesenbewertung, Risikoschätzung
Anwendungen/Beispiele
Sawade/Landwehr/Scheffer, Maschinelles Lernen
2
Überblick
Hypothesenbewertung, Risikoschätzung
Anwendungen/Beispiele
Sawade/Landwehr/Scheffer, Maschinelles Lernen
3
Lernen und Vorhersage
Klassifikation, Regression: Lernproblem
Eingabe: Trainingsdaten L (x1 , y1 ),..., (x m , ym )
Ausgabe: Hypothese (Modell) f : X Y
Modell wird verwendet, um Vorhersagen für neue
Testbeispiele zu treffen
f (x) ?
x
Sawade/Landwehr/Scheffer, Maschinelles Lernen
Testbeispiel
Verschiedene Verfahren kennengelernt
Lineare Modelle, Entscheidungsbäume, Naive Bayes…
4
Hypothesenbewertung
Sawade/Landwehr/Scheffer, Maschinelles Lernen
Frage: Nachdem wir Verfahren implementiert, Hypothese
trainiert haben etc.: wie gut sind die Vorhersagen?
Was genau heißt „gut“?
Wie berechnet / misst / schätzt man es?
„Gute Vorhersagen“: in der Zukunft, wenn die gelernte
Hypothese eingesetzt wird (auf Testdaten)
„Hypothesenbewertung“: Verfahren zur Abschätzung der
Genauigkeit/Güte von Vorhersagen gelernter Modelle
5
Hypothesenbewertung
Um Hypothesenbewertung formal zu untersuchen, müssen wir
Annahmen über die Eigenschaften von Trainings- und
Testdaten machen
Zentrale Annahme: dem Lernproblem liegt eine (unbekannte)
Verteilung p(x,y) zugrunde
Verteilung über
Instanzen
Sawade/Landwehr/Scheffer, Maschinelles Lernen
Verteilung für Label
gegeben Instanz
p(x, y) p(x) p( y | x)
Beispiel Spam-Filterung
p(x) Wahrscheinlichkeit dass wir Email x sehen
p(y|x) Wahrscheinlichkeit dass Mensch Email x als
y ∈ {Spam/Ok} klassifiziert
6
Hypothesenbewertung
„i.i.d.“-Annahme: Beispiele sind „independent and identically
distributed“.
Trainingsdaten werden unabhängig aus der Verteilung
p(x,y) gezogen:
(xi , yi ) ~ p(x, y)
Trainingsbeispiele
Testdaten ebenfalls i.i.d. aus dieser Verteilung gezogen
(x, y) ~ p(x, y)
Sawade/Landwehr/Scheffer, Maschinelles Lernen
Testbeispiel
(Anwendung des Modells)
Immer realistisch?
Wir nehmen im Folgenden immer i.i.d. Daten an
7
Verlustfunktionen
Wir haben Annahmen darüber gemacht, welche Instanzen
(x,y) auftauchen werden
Testbeispiel (x,y), Hypothese sagt f(x).
Verlustfunktion definiert, wie schlecht das ist:
( y, f (x))
Sawade/Landwehr/Scheffer, Maschinelles Lernen
Verlust der Vorhersage f(x) auf Instanz (x,y)
Nicht-negativ: y, y ': ( y, y ') 0
Problem-spezifisch, gegeben.
Verlustfunktionen für Klassifikation
( y, y ') 0, wenn y y '; 1, sonst
Zero-one loss:
Klassenabhängige Kostenmatrix
Verlustfunktionen für Regression
( y, y ') ( y y ')2
Squared loss:
8
Hypothesenbewertung: Risiko
Zentraler Begriff der Hypothesenbewertung: Risiko
Risiko einer Hypothese: erwarteter Verlust für eine neue Instanz
(x, y) ~ p(x, y)
( y, f (x))
Testbeispiel x mit Label y (Zufallsvariable)
Verlust auf Testbeispiel (Zufallsvariable)
R( f ) E[ ( y, f (x))] ( y, f (x)) p(x, y)dxdy
Für Zero-One-Loss heisst Risiko auch Fehlerrate.
Für Squared Loss heisst Risiko auch Mean Squared Error.
Hauptziel der Hypothesenbewertung: Risikobestimmung
Nicht möglich, das Risiko exakt zu bestimmen, weil
p(x,y) unbekannt ist → Schätzproblem
9
Sawade/Landwehr/Scheffer, Maschinelles Lernen
Einschub: Begriff „Schätzer“
Wir wollen das Risiko einer Hypothese aus Daten schätzen
Formalisierung: ein Schätzer ist ein Verfahren, das
Beobachtungen L auf einen Schätzwert abbildet.
Beispiel Münzwurf:
Sawade/Landwehr/Scheffer, Maschinelles Lernen
Beobachtung Nk, Nz: wie oft Kopf/Zahl gesehen
schätze Münzparameter (Wahrscheinlichkeit, dass Kopf fällt)
Notation: Schätzer für (unbekannten) Wert wird mit ˆ
bezeichnet
10
Hypothesenbewertung:Risikoschätzung
Risikoschätzung aus Daten
Wenn aus p(x,y) gezogene Daten
T (x1 , y1 ),...,(xm , ym )
Sawade/Landwehr/Scheffer, Maschinelles Lernen
(xi , yi ) ~ p(x, y)
gegeben sind, kann das Risiko geschätzt werden:
1
Rˆ ( f )
m
m
j 1
( y j , f ( x j ))
"Empirisches Risiko"
Wichtig: Wo kommt T her?
Trainingsdaten (T=L)?
Verfügbare Daten in disjunkte L und T aufteilen.
Cross-Validation.
11
Bias eines Schätzers
Schätzer
Rˆ ( f )
Instanzen in T zufällig gezogen
(x j , y j ) ~ p(x, y)
( y j , f (x j ))
Schätzer ist Zufallsvariable:
1
m
j 1
m
Sawade/Landwehr/Scheffer, Maschinelles Lernen
Welche (x j , y j ) werden gezogen?
Wert des Schätzers hängt von zufällig gezogenen
Instanzen ab, ist also Produkt eines Zufallsprozesses
Schätzer hat einen Erwartungswert
Schätzer ist erwartungstreu, genau dann wenn:
Erwartungswert des empirischen Risikos = echtes Risiko.
12
Bias eines Schätzers
Schätzer
Rˆ ( f )
einen Bias:
Bias E[ Rˆ ( f )] R( f )
Bias < 0.
Schätzer ist pessimistisch, wenn
E[ Rˆ ( f )] R( f )
Schätzer ist optimistisch, wenn
ist erwartungstreu, genau dann wenn:
Ansonsten hat
Rˆ ( f )
Sawade/Landwehr/Scheffer, Maschinelles Lernen
Bias > 0.
Schätzer ist erwartungstreu, wenn
Bias = 0.
13
Varianz eines Schätzers
Schätzer
Rˆ ( f )
hat eine Varianz
Sawade/Landwehr/Scheffer, Maschinelles Lernen
Var[ Rˆ ( f )] E[ Rˆ ( f )2 ] E[ Rˆ ( f )]2
Je größer die Stichprobe ist, die zum Schätzen
verwendet wird, desto geringer ist die Varianz.
Varianz vs. Bias:
Hohe Varianz: großer „Zufallsanteil“ bei der Bestimmung
des empirischen Risikos.
Großer Bias: systematischer Fehler bei der Bestimmung
des empirischen Risikos.
14
Varianz eines Schätzers
Wert Rˆ ( f )
Sawade/Landwehr/Scheffer, Maschinelles Lernen
Bias dominiert
R
R
Varianz dominiert
Erwarteter (quadratischer) Fehler des Schätzers:
E[( Rˆ ( f ) R)2 ]
Lässt sich zerlegen in Bias und Varianz
E[( Rˆ ( f ) R) 2 ] E[ Rˆ ( f ) 2 2 RRˆ ( f ) R 2 ]
E[ Rˆ ( f ) 2 ] 2 RE[ Rˆ ( f )] R 2
Linearität Erwartungswert
Verschiebungssatz
E[ Rˆ ( f )]2 2 RE[ Rˆ ( f )] R 2 E[ Rˆ ( f ) 2 ] E[ Rˆ ( f )]2
( E[ Rˆ ( f )] R) 2 Var[ Rˆ ( f )]
Bias[ Rˆ ( f )]2 Var[ Rˆ ( f )]
15
Risikoschätzer auf den Trainingsdaten
Hypothese f, trainiert auf L (x1 , y1 ),...,(xm , ym )
Empirisches Risiko gemessen auf Trainingsdaten
Sawade/Landwehr/Scheffer, Maschinelles Lernen
Welche Menge T verwenden?
1. Versuch: Trainingsdaten L
1 m
Rˆ L ( f ) j 1 ( y j , f (x j ))
m
Ist dieses empirische Risiko ein
erwartungstreuer
optimistischer
pessimistischer
Schätzer für das echte Risiko und warum?
16
Risikoschätzer auf den Trainingsdaten
Empirisches Risiko auf den Trainingsdaten ist ein
optimistischer Schätzer des echten Risikos
Empirisches Risiko aller möglichen Hypothesen für ein
festes L?
Aufgrund von Zufallseffekten gilt für einige Hypothesen f ,
dass Rˆ L ( f ) R( f ) und für andere Hypothesen f , dass
Rˆ L ( f ) R( f ) .
Lernalgorithmus wählt eine Hypothese f L mit kleinem
empirischen Risiko Rˆ L ( f L )
Sawade/Landwehr/Scheffer, Maschinelles Lernen
Wahrscheinlich, dass Rˆ L ( f L ) R( f L ) (Risiko unterschätzt)
17
Risikoschätzer auf den Trainingsdaten
Sawade/Landwehr/Scheffer, Maschinelles Lernen
Empirisches Risiko der vom Lerner gewählten Hypothese auf
den Trainingsdaten („Trainingsfehler“) ist ein optimistischer
Schätzer des echten Risikos:
E[ Rˆ L ( f L )] R( f L )
Problem ist die Abhängigkeit von gewählter Hypothese und
zur Fehlerschätzung verwendeten Daten
Ansatz: Testdaten verwenden, die von den Trainingsdaten
unabhängig sind.
18
Holdout-Testing
Idee: Fehlerschätzung auf unabhängigen Testdaten
Gegeben: Daten D (x1 , y1 ),...,(xd , yd )
Teile Daten auf in
Sawade/Landwehr/Scheffer, Maschinelles Lernen
Trainingsdaten L (x1 , y1 ),...,(xm , ym ) und
Testdaten T (xm1 , ym1 ),...,(xd , yd )
L
T
19
Holdout-Testing
Starte Lernalgorithmus mit Daten L, gewinne so
Hypothese f L .
Ermittle empirisches Risiko RˆT ( f L ) auf Daten T.
Starte Lernalgorithmus auf Daten D, gewinne so
Hypothese f D .
Ausgabe: Hypothese f D , benutze RˆT ( f L ) als
Schätzer für das Risiko von f D
L
T
Sawade/Landwehr/Scheffer, Maschinelles Lernen
20
Holdout-Testing: Analyse
Ist der Schätzer
RˆT ( f L )
für Risiko der Hypothese
Sawade/Landwehr/Scheffer, Maschinelles Lernen
fD
erwartungstreu,
optimistisch,
pessimistisch?
21
Holdout-Testing: Analyse
Schätzer
RˆT ( f L )
RˆT ( f L )
ist pessimistisch für R( f D ) :
Sawade/Landwehr/Scheffer, Maschinelles Lernen
ist erwartungstreu für f L
fL
wurde mit weniger Trainingsdaten gelernt als f D
und hat daher im Erwartungswert ein höheres Risiko
Aber Schätzer RˆT ( f L ) ist in der Praxis brauchbar,
während Rˆ L ( f L ) meist 0 (oder nahe 0) ist.
22
Holdout-Testing: Analyse
Warum wird Hypothese f D trainiert und
zurückgeliefert?
Rückgegebene Hypothese f D und nicht f L , weil
ein geringeres Risiko hat, also besser ist.
Sawade/Landwehr/Scheffer, Maschinelles Lernen
fD
23
Holdout-Testing: Analyse
Was sind die Vorteile/Nachteile wenn Testmenge T
Sawade/Landwehr/Scheffer, Maschinelles Lernen
möglichst groß
möglichst klein
gewählt wird?
T möglichst groß, damit Risikoschätzer RˆT ( f L ) geringe
Varianz hat.
T möglichst klein, damit Risikoschätzer RˆT ( f L ) geringen
Bias hat, also nicht so stark pessimistisch ist.
Braucht viele Daten, um gute Schätzungen zu
bekommen
Wird praktisch nur verwendet, wenn sehr viele Daten zur
Verfügung stehen.
Cross-Validation meist besser (siehe unten)
24
Cross-Validation
Gegeben: Daten D (x1 , y1 ),..., (xd , yd )
Teile D in n gleich große Abschnitte D1,..., Dn
n
D
mit
i1 Di und Di D j 0
Wiederhole für i=1..n
Sawade/Landwehr/Scheffer, Maschinelles Lernen
Trainiere fi mit Li =D \ Di.
Bestimme empirisches Risiko Rˆ D ( f i ) auf Di.
i
D1
D2
D3
D4
Training examples
25
Cross-Validation
Mittle empirische Risikoschätzungen auf den
jeweiligen Testmengen Di :
R
1
n
Sawade/Landwehr/Scheffer, Maschinelles Lernen
ˆ (f )
R
i
i 1 Di
n
Trainiere fD auf allen Daten D.
Liefere Hypothese fD und Schätzer R .
Training examples
26
Leave-One-Out Cross-Validation
Spezialfall n=d heisst auch leave-one-out
Fehlerschätzung
Sawade/Landwehr/Scheffer, Maschinelles Lernen
d
27
Cross-Validation: Analyse
Ist der Schätzer
Sawade/Landwehr/Scheffer, Maschinelles Lernen
Optimistisch / pessimistisch / erwartungstreu?
28
Cross-Validation: Analyse
Ist der Schätzer
Sawade/Landwehr/Scheffer, Maschinelles Lernen
Optimistisch / pessimistisch / erwartungstreu?
Schätzer ist pessimistisch:
Hypothesen fi werden auf Anteil (n-1)/n der verfügbaren
Daten trainiert.
Hypothese fD wird auf den gesamten Daten trainiert
Holdout
Cross-Validation
Training examples
29
Cross-Validation: Analyse
Bias/Varianz der Risikoschätzung im Vergleich zu HoldoutTesting?
Varianz ist geringer als beim Holdout-Testing
Mittelung über mehrere Holdout-Experimente, das
reduziert die Varianz
Alle Daten fließen in den Schätzer ein
Bias ähnlich wie beim Holdout-Testing, je nach SplitVerhältnissen.
Sawade/Landwehr/Scheffer, Maschinelles Lernen
Holdout
Cross-Validation
Training examples
30
Überblick
Hypothesenbewertung, Risikoschätzung
Anwendungen/Beispiele
Sawade/Landwehr/Scheffer, Maschinelles Lernen
31
Anwendungen/Beispiele
Hypothesenevaluierung
Wir wollen/müssen aus Anwendungsgründen
wissen, wie gut Hypothese ist
Sawade/Landwehr/Scheffer, Maschinelles Lernen
Macht es überhaupt Sinn, maschinelles Lernen in der
Anwendung zu verwenden?
Mit wie vielen falschen Vorhersagen müssen wir
rechnen?
Wir wollen mehrere verschiedene Lernansätze
vergleichen
Sollte man Entscheidungsbäume verwenden?
SVMs?
Logistische Regression?
Naive Bayes?
32
Anwendungen Hypothesenevaluierung
Verfahren hat einen Parameter, den wir einstellen
müssen
Regularisierungsparameter
f w* arg min fw
( f w (xi ), yi ) || w ||2
i
Sawade/Landwehr/Scheffer, Maschinelles Lernen
=?
(Hyper)Parameter, der Modellklasse bestimmt, z.B.
Polynomgrad bei polynomieller Regression
M
f w ( x) wi x i
M=?
i 0
In allen diesen Fällen ist der Trainingsfehler kein
geeignetes Entscheidungskriterium!
Fehlerschätzung mit Holdout-Menge oder CrossValidation
33
Beispiel: Polynomgrad bei polynomieller
Regression
M
Polynommodell vom Grad M: f w ( x) wi xi
i 0
Wir lernen Modell durch Minimierung des quadratischen
Verlustes (unregularisiert – schlecht)
m
w* arg min w ( f w ( xi ) yi )
i 1
2
Trainingsdaten
L ( x1 , y1 ),...,( xm , ym )
Polynomgrad M=3
Gelerntes Modell
Echtes Modell
Datenpunkte = echtes
Modell plus Gaußsches
Rauschen
34
Sawade/Landwehr/Scheffer, Maschinelles Lernen
Beispiel polynomielle Regression:
Training vs. Testfehler
Erfolg des Lernens hängt vom gewählten Polynomgrad M ab,
der Komplexität des Modells kontrolliert
Sawade/Landwehr/Scheffer, Maschinelles Lernen
35
Beispiel polynomielle Regression:
Training vs. Testfehler
Trainingsfehler vs. Testfehler für unterschiedliche
Polynomgrade
Testfehler z.B. mit grosser Holdout-Menge gemessen
Phänomen der Überanpassung
(„Overfitting“):
Trainingsfehler sinkt monoton mit
M, aber Testfehler steigt für große
M wieder
36
Sawade/Landwehr/Scheffer, Maschinelles Lernen
Beispiel polynomielle Regression:
Training vs. Testfehler
Problem der Überanpassung (Overfitting) wird
geringer, wenn mehr Daten verfügbar
10 Beispiele, M = 9
Sawade/Landwehr/Scheffer, Maschinelles Lernen
100 Beispiele, M = 9
In der Praxis verfügbare Daten begrenzt
Modell muss regularisiert werden
37
Regularisierte Polynomielle Regression
M
i
Polynommodell vom Grad M=9: f ( x) wi x
Sawade/Landwehr/Scheffer, Maschinelles Lernen
i 0
Lerne Modell durch Minimierung des regularisierten
quadratischen Verlustes
M
w* arg min w ( f w ( xi ) yi ) w
2
i 1
M 9,
Gelerntes Modell
Echtes Modell
Trainingsdaten
2
L ( x1 , y1 ),...,( xm , ym )
ln 18
Regularisiertes Modell
vom Grad M=9 verhält
sich wie Polynom
niedrigerer Ordnung.
Regularisierer
verhindert Overfitting
38
Regularisierte Polynomielle Regression
Jetzt müssen wir einstellen
Regularisierungsparameter kontrolliert Komplexität
ähnlich wie Polynomgrad M
M 9
M 9
ln
ln 18
Sawade/Landwehr/Scheffer, Maschinelles Lernen
M 9
ln 0
39
Regularisierte Polynomielle Regression
Trainingsfehler vs. Testfehler für unterschiedliche Werte des
Regularisierungsparameters
Testfehler z.B. mit grosser Holdout-Menge gemessen
Trainingsfehler minimal
ohne Regularisierung,
aber Testfehler besser
für regularisiertes Modell
Umgekehrtes Verhalten wie
für unterschiedliche
Polynomgrade
0
40
Sawade/Landwehr/Scheffer, Maschinelles Lernen
Regularisierte Polynomielle Regression
Regularisierer wirkt wie eine Begrenzung der
Modellkomplexität und verhindert Überanpassung
In der Praxis am besten, Modellkomplexität durch
Regularisierung zu kontrollieren (direkter Parameter wie
bei Polynomen oft nicht verfügbar)
Regularisierer kann durch Fehlerschätzung (HoldoutTesting oder Cross-Validation) eingestellt werden.
Sawade/Landwehr/Scheffer, Maschinelles Lernen
41