INTELLIGENTE DATENANALYSE IN MATLAB Evaluation & Exploitation von Modellen
Überblick Sh Schritte der Datenanalyse: Datenvorverarbeitung Problemanalyse Problemlösung Anwendung der Lösung Aggregation und Selektion von Daten. Integration und Säuberung der Daten. Feature- Extraktion. Bestimmen von gegeb./gesuchten Größen. Wahl des Performanzmaß/ Zielkriteriums. Modellraum und Modellannahmen. Algorithmen für das Optimieren des Zielkriteriums finden. Implementieren der Algorithmen. Modell-Selektion & -Anpassung. Training & Evaluation des Modells auf gegebenen Daten. Vorhersage für neue Daten. 2
Überblick Evaluation von Lernverfahren. Selektion und Anpassung von Modellen. Evaluation von Klassifikatoren. Exploitation von Modellen. 3
Evaluation von Lernverfahren Ziel: Qualitätsbewertung der Modelle eines Lernverfahrens. Nachdem wir Problem analysiert haben und Verfahren identifiziert & implementiert haben. Qualität eines Modells: Wie gut sind die Vorhersagen des Modells? Was genau heißt gut? Wie berechnet/schätzt man die Genauigkeit der Vorhersagen (für zukünftige Daten)? 4
Evaluation von Lernverfahren Problemstellung Gegeben: Repräsentative Evaluierungsdaten E mit bekannter Zielgröße. Bewertungsmaß (Verlustfunktion) welche Qualität einer Vorhersage misst, z.b. Muss nicht identisch sein zur Verlustfunktion des Lernverfahrens Klassifikation: Anzahl falsch klassifizierter Beispiele (Fehlerrate). prediction prediction l( y, y ) y y Regression: Mittlerer quadratischer Fehler. prediction 2 l( y prediction, y) y y Ranking: Mittlerer Abstand zw. echter und vorhergesagter Position. 5
Evaluation von Lernverfahren Problemstellung Eingabe: Lernverfahren welches ein Modell h ausgibt. Ziel: Bewertung der mittleren Qualität des Lernverfahrens. Theoretischer Mittelwert des Verlusts auf der Testverteilung. R E l ( h ( X ), Y ) p ( x, y )( l h ( x ), y ) theo Aber: Testverteilung p( XY, ) unbekannt! Evaluierungsdaten E x1, y1,, xn, yn sind repräsentativ aus p( XY, ) gezogen theoretischen Mittelwert durch empirischen Mittelwert (empirisches Risiko) schätzen: xy, n 1 emp i i n i 1 R l( h( x ), y ) 6
Evaluation von Lernverfahren Problemstellung Wlh Welche Daten für Evaluation verwenden: Daten auf welchen das Modell trainiert wurde? Nein! Empirischer i Verlust auf diesen Daten meist 0. Daten auf welche das Modell angewendet werden soll? Idee: Nein! Zielgröße für diese Daten unbekannt. Gelabelte Trainingsdaten aufteilen in Lerndaten zum Lernen eines Modells, und Evaluierungsdaten zum Evaluieren des Modells. 7
Evaluation von Lernverfahren Aufteilung der Trainingsdaten: Holdout Validation Gegeben: Trainingsdaten i D x, y,, x, y. Aufteilen der Daten in Lerndaten L x1, y1,, xk, yk und Evaluierungsdaten E x, y,, x, y. Lerne Modell h auf Daten L und bestimme empirisches n 1 Risiko auf Daten E E: R ( h ) l ( h ( x ), y ) Lerne Modell h auf Daten D. 1 1 k1 k1 n n emp i i n k i k 1 Ausgabe: Modell h mit Risiko-Schätzer Rˆ ( h) R ( h). n emp n emp Pessimistische Schätzung 8
Evaluation von Lernverfahren Aufteilung der Trainingsdaten: Cross Validation Gegeben: Trainingsdaten i D x, y,, x, y. Aufteilen der Daten in p Blöcke Di xi, y 1 i,, x, 1 i y k ik mit D D und D D für 2 verschiedene Blöcke. i j i i Wiederhole für i = 1 p Trainiere i Modell h i auf Daten D\D i. Berechne empirisches Risiko auf D i : Lerne Modell h auf Daten D. 1 1 n n k 1 R ( h) l( h( x ), y ) emp i i i j i k j 1 Ausgabe: Modell h mit mittlerem Risiko Rˆ ( h) R ( h). 1 emp emp i p i 1 p j 9
Evaluation von Lernverfahren Aufteilung der Trainingsdaten: Leave-One-Out Validation Gegeben: Trainingsdaten i D x, y,, x, y. Spezialfall von Cross Validation mit D x, y. Wiederhole für i = 1 n 1 1 Trainiere Modell h i auf Daten D\ x, y. Berechne empirisches i Risiko ik für x, y : Lerne Modell h auf Daten D. i i i i n n i i i R ( h) l( h( x ), y ) emp i i i i Ausgabe: Modell h mit Loo-Fehler Rˆ ( h) R ( h). I.d.R. aufwendig zu berechnen. 1 emp emp i n i 1 Für einige Probleme existiert analytische Lösung für Loo-Fehler. n 10
Evaluation von Lernverfahren Signifikanz des empirischen Risikos Wie gut ist der Schätzer Rˆ ( emp h ) für das echte Risiko R h? theo ( ) Idee: m-malige Validation ergibt m Shät Schätzwerte t für empirisches Risiko mit Mittelwert R. Standardfehler (Standardabw. des Schätzers): Test der Hypothese R ( h) R ( h) : theo ˆ emp R R 1 m 1 ( ) ˆ ( ) 1 ( ) ˆ ( ) ˆ ( ) ( ) theo emp theo emp emp theo p R h R h p R h R h p R h R h 12 2 R Dichtefunktion der Normalverteilung R 11
Evaluation von Lernverfahren Signifikanz des empirischen Risikos Test der Hypothese R ˆ theo ( h) Remp ( h) mit Signifikanz- ifik niverau 5% (signifikantes Ereignis). Beispiel: 10-malige Wiederholung einer Leave-One- Out-Validation (auf 10 verschiedenen Datensätzen). 10 Schätzwerte mit Mittelwert R = 8% R = 0,09. Gesucht ist mit Konfidenzintervall 1 und = 5%: 0,975 p R ˆ theo( h) Remp ( h) 0,950 z 2 z 0,835 120,09 0,950 z 123,33 0,975 0,68%, 123,33 R 8, 0 0,68% 12
Selektion und Anpassung von Modellen Ziel: Hohe Qualität des Modells durch Selektion/ Anpassung des Modells bzw. Lernverfahrens. Anpassen von Modellkomponenten (z.b. Verlustfunktion/Regularisierung, Splitting-Kriterium). Parameter des Lernverfahrens (z.b. maximale Anzahl Iterationen). Parameter der Verlustfunktion (z.b. Klassen-Kosten). Kosten) Parameter des Regularisierers (z.b. des 2 -Regularsierers). Parameter der Daten-Transformation bzw. des Kernels (z.b. des RBF-Kernels). 13
Selektion und Anpassung von Modellen Grid-Suche Idee: Stichprobenartig aus der Menge aller möglichen Parameter bzw. Parameterkombinationen ziehen. Für jede gezogene Kombination mittels Cross-Validation (CV) Schätzer für R ( ) theo h bestimmen. Parameter wählen mit minimalem Risiko. Beispiel für Parameter-Auswahl: Grid-Suche 2 2 1 0 1 2 1 Für jeden Grid-Punkt Schätzer für das Risiko berechnen mittels CV. 2 10 0 10 2 10 14
Selektion und Anpassung von Modellen Aufteilung der Lerndaten Wlh Welche Daten für MdllA Modell-Anpassung verwenden: Daten auf welchen das Modell evaluiert wird? Idee: Nein! Evaluierung des Modells wäre zu optimistisch. i Lerndaten aufteilen in Daten für Learning: zum Lernen eines Modells mit festen Parametern und Tuning: zum Anpassen der Modellparameter. Art der Aufteilung: Holdout-Validation. Cross-Validation. Loo-Validation. 15
Selektion und Anpassung von Modellen Aufteilung der Lerndaten Beispiel: i Geschachtelte h Cross-Validation. i Aufteilen der Trainingsdaten D in p Blöcke D i. Wiederhole für i =1 1 pp Aufteilen der Lerndaten L=D\D i in q Blöcke L j. Wiederhole für alle Modell-Parameterkombinationen Wiederhole für j = 1 q Trainiere für aktuelle Parameterkombination ein Modell auf L\L j. Berechne empirisches Risiko auf L j. j Bestimme mittleres empirisches Risiko für aktuelle Parameterkombination. Trainiere für beste Parameterkombination Modell h i auf D\D i. Berechne empirisches Risiko auf D i. Trainiere für beste Parameterkombination Modell h auf D. 16
Evaluation von Klassifikatoren Ziel: Bewertung eines konkreten k Modells für binäre Klassifikation. Nachdem wir Problem analysiert haben, Verfahren identifiziert & implementiert haben, und Klassifikations- Modell (Klassifikator) trainiert haben. Qualität eines Klassifikators: Precision/Recall-Analyse. ROC-Analyse. 17
Evaluation von Klassifikatoren Definitionen (für binäre Klassifikation) Entscheidungsfunktion: i Ordnet einer Eingabe x einen m numerischen Wert zu, f :. Beispiel: T f ( x ) x w Klassifikationsfunktion: Ordnet einem Entscheidungs- funktionswert f ( x ) ein Klassenlabel zu, g : Y. Beispiel: Kontingenztafel: g( f( x)) sign( f( x) ) Klassifikations-Schwellwert Tatsächlich positiv Tatsächlich negativ Positiv vorhergesagt TP (true positives) FP (false positives) Negativ vorhergesagt FN (false negatives) TN (true negatives) 18
Evaluation von Klassifikatoren Definitionen (für binäre Klassifikation) Beispiel i HIV-Erkrankungen k in Deutschland (2008): In Deutschland leben 82.099.232 Menschen. Davon sind 63.554 Menschen an HIV erkrankt. kt Ein HIV-Test ergab (hochgerechnet auf alle Menschen): Tatsächlich h positiv i Tatsächlich h negativ Summe Positiv vorhergesagt 63.487 114.276 177.763 Negativ vorhergesagt 67 81.921.402 81.921.469 Summe 63.554 82.035.678 82.099.232 False Negatives: fälschlicherweise h i als HIV-negativ klassifiziert False Positives: fälschlicherweise h i als HIV-positiv klassifiziert 19
Evaluation von Klassifikatoren Qualität eines Klassifikators Gegeben: Repräsentative Evaluierungsdaten E mit bekannter Zielgröße. Et Entscheidungs- hid und Klassifikationsfunktion. f kti Gesucht: Bewertung der Entscheidungsfunktion. Beispiele: Precision/Recall-Kurve, ROC-Kurve. Bewertung der Klassifikationsfunktion (Entscheidungsfunktion für einen konkreten Schwellwert). Beispiele: Fehlerrate, F-Maß. 20
Evaluation von Klassifikatoren Qualität eines Klassifikators Für jeden Klassifikations-Schwellwert i ll ergibt sich eine Kontigenztafel, d.h. Werte für TP, FP, TN und FN. Ut Unterschiedliche hidlih Bewertungsmaße für einen Klassifikator (für einen konkreten Schwellwert): Trefferquote (Recall): Genauigkeit (Precision): Ausfallquote (Fallout): TP 63.487 99,89% TP FN 63.487 67 TP 63.487 35, 71% TP FP 63.487 114.276 FP 114.276 0,14% TN FP 81.921.402 114.276 21
Evaluation von Klassifikatoren Qualität eines Klassifikators Tatsächlich positiv Tatsächlich negativ Summe Positiv vorhergesagt 63.487 114.276 177.763 Negativ vorhergesagt 67 81.921.402 81.921.469 Summe 63.554 82.035.678 82.099.232 Trefferquote (Recall): Genauigkeit (Precision): Ausfallquote (Fallout): TP 63.487 99,89% TP FN 63.487 67 TP 63.487 35, 71% TP FP 63.487 114.276 FP 114.276 0,14% TN FP 81.921.402 114.276 22
Evaluation von Klassifikatoren Recall versus Precision Kombinierte i Bewertungsmaße aus Recall und Precision: i Sensitivität (Sensitivity): Recall bzgl. positiver Beispiele. Spezifität (Specificity): Recall bzgl. negativer Beispiele. F-Maß (F-score): Harmonisches Mittel aus Precision & Recall. Precision Recall 35, 71% 99,89% F-score 2 2 52, 61% Precision Recall 35, 71% 99,89% Spezielle Schwellwerte : Gewinnschwelle (Break-Even-Point): Schwellwert für welchen Precision = Recall. F-Schwellwert (Maximal F-score): Schwellwert für welchen F-score maximal ist. 23
Evaluation von Klassifikatoren Recall versus Precision Precision/Recall-Kurve: i Precision i vs. Recall für unterschiedliche Schwellwerte. 1,00 BEP Break-Even-Point 0,75 Maximal F-score F Precision 0,50 0,25 AUC PR (Area Under Curve: Precision/Recall) 0 Vorheriges Beispiel Recall = 99,89% Precision = 35,71% 24 0,00 0,25 0,50 0,75 1,00 Recall
Evaluation von Klassifikatoren Recall versus Fallout Receiver-Operating-Characteristic i i i (ROC): Bewertung der Entscheidungsfunktion unabhängig vom Schwellwert durch Fallout statt Precision. Großer Schwellwert: Mehr positive Beispiel falsch klassifiziert. Kleiner Schwellwert: Mehr negative Beispiel falsch klassifiziert. Fläche unter der ROC-Kurve (AUC ROC ) bewertet Entscheidungsfunktion. Analog zur Fläche unter Precision/Recall-Kurve. 25
Evaluation von Klassifikatoren Recall versus Fallout ROC-Kurve bzw. Recall/Fallout-Kurve: Recall (True Positives Rate) vs. Fallout (False Positives Rate). 1,00 0 Vorheriges Beispiel 0,75 Recall = 99,89% Fallout = 0,14% Recall 0,50 0,25 AUC ROC (Area Under Curve: ROC) 26 0,00 0,25 0,50 0,75 1,00 Fallout
Evaluation von Klassifikatoren Recall versus Fallout Algorithmus zur Bestimmung des AUC ROC -Wertes. AUC_ROC(f, y) Sortiere Paare (f i, y i ) f Vektor mit n Entscheidungsfunktionswerten aufsteigend nach f y Vektor mit zugehörigen Klassenlabels i Setze TN = 0, FN = 0, AUC = 0 FOR i = 1 n IF y i > 0 THEN ELSE FN = FN + 1 AUC = AUC + TN TN = TN + 1 AUC = AUC/(FN * TN) RETURN AUC 27
Exploitation von Modellen Anwenden von Modellen in der Praxis: Einstellen von Modellparametern nach dem Lernen (z.b. Schwellwerte, Default-Klasse). Kombination mehrerer gelernter Modelle (z.b. Verwendung mehrerer Spam-Filter). Integration des Modells in bestehende Softwarearchitektur. Monitoren der Qualität (Verteilung der Eingabedaten ändert sich oft über die Zeit Qualität verringert sich). 28
Zusammenfassung Qualität von Lernverfahren/Modellen messen Auf Evaluierungsdaten; nicht auf Trainingsdaten! Signifikanz des Ergebnisses prüfen. Modell-Seleketion/-Anpassung Auf Tuningdaten; nicht auf Evaluierungsdaten! Modellparameter z.b. durch Grid-Suche + Cross-Validation. Bewertung eines Klassifikators durch Recall, Precision, Fallout, F-Maß usw. Bewertung einer Entscheidungsfunktion durch (Fläche unter der) Precision/Recall-Kurve i oder ROC-Kurve. 29