Kapitel II II. Grundlagen K Spezifikation von Lernproblemen K Performance Measures K Lernen aus Beispielen 1 Spezifikation von Lernproblemen Bemerkungen: Allgemeines Modell für Klassifikationsprobleme K Entscheidungsprobleme sind also Klassifikationsprobleme mit nur zwei Klassen. K Das Halteproblem für Turingmaschinen ist ein unentscheidbares Klassifikationsproblem. Situation: K O sei ein Universum von Objekten. K C sei eine Menge von Klassen. K Eine Funktion c : O → C heißt Klassifikator für O. K Ein Klassifikationsproblem ist die Feststellung der Klasse c(o) ∈ C für gegebene o ∈ O. Problem: Die Funktion c ist meist unbekannt! Idee: Bestimmung eines möglichst ähnlichen c : O → C auf Basis einer Sammlung von bekannten Objektklassifikationen. § Geeignete Modellierung als Voraussetzung einer Automatisierung 2 Spezifikation von Lernproblemen Charakterisierung der Objekte in O durch Attribute (Merkmale) K Wähle eine Menge von Attributen A = {A1 , ..., An }. Beispiel: A = {„Farbe“, „Durchmesser in cm“}. K Lege die Wertebereiche der Attribute fest. Beispiel: „Farbe“ = {rot, gelb, grün, blau, violett, orange}, „Durchmesser in cm“ = {0, 1, 2, 3, ...}. K Ordne jedem Objekt o ∈ O den Vektor seiner Attributausprägungen bzgl. A zu. ( rot , 4 ) Welches Probleme können bei der Abbildung auftreten? 3 LF: II Grundlagen c LETTMANN 2005-06 Spezifikation von Lernproblemen Bemerkungen: Charakterisierung der Objekte in O durch Attributausprägungen Mögliche Skalen für Attribute sind K Nominalskalen: = und = K Ordinalskalen: =, = und < K Intervallskalen: =, =, < und feste Einheiten, also − K Ratioskalen (Verhältnisskalen): reelle Zahlen, alle Operationen K Als Werte von intervall- oder ratioskalierten Attributen verwenden wir nur reelle Zahlen. K Auch Werte ordinal- oder nominalskalierter Attribute können durch reelle Zahlen codiert werden. K Nominalskalierte Attribute heißen auch kategorisch, intervall- oder ratioskalierten Attribute heißen auch numerisch. Attributwerte sind K diskret (Nominalskalen, Ordinalskalen) oder K stetig (Intervallskalen, Ratioskalen). Welche Skalen können von welchen Lernverfahren bearbeitet werden? 4 Spezifikation von Lernproblemen Probleme bei der Behandlung von Datenmengen K Vielzahl von Datentypen: Die verschiedenen Skalen erlauben unterschiedliche Verarbeitungsmethoden ihrer Werte. K Nonstandard-Daten: Die Vektoren zur Beschreibung der Objekte haben unterschiedliche Struktur und/oder Länge. K Inhomogenität: Unterschiedliche Zusammenhänge zwischen Variablen gelten in verschiedenen Teilen des Instanzenraum. K Dimensionalität: Die benötigte Anzahl von Datenpunkten für eine bestimmte Dichte wächst exponentiell mit der Dimension des Datenraumes (Curse of Dimensionality). 5 Spezifikation von Lernproblemen Modell für Klassifikationsprobleme Situation: K X sei ein Instanzenraum (Merkmalsraum). K C = {1, ..., J } sei eine Menge von Klassen. K c : X → C sei der zu lernende (Ziel-) Klassifikator für X. K D = {(x1 , c(x1 )), ..., (xN , c(xN ))} ⊆ X × C sei eine Menge von Lernbeispielen. Ein Lernalgorithmus bestimmt auf Basis von D einen Klassifikator c : X → C. Problem: Wie gut ist c im Vergleich zu c ? § Wie sehen geeignete Gütemaße (Performance Measures) aus? 6 LF: II Grundlagen c LETTMANN 2005-06 Performance Measures Gütemaße Für einen Klassifikator c : X → C und ein zu lernendes Konzept c bezeichnet R∗ (c, c) die „wahre Missklassifikationsrate“. ∗ Für endliches X ist R (c, c) = |{x ∈ X|c(x) = c(x)}| |X| Problem: Die Funktion c ist meist unbekannt. § Schätzung von R∗ (c, c) durch Auswertung von c auf einer Testmenge. Da c im Kontext immer fest gewählt ist, verwenden wir R∗ ( c) statt R∗ (c, c). 7 Performance Measures Wahrscheinlichkeitstheoretische Fundierung Situation: K P sei ein Wahrscheinlichkeitsmaß auf X × C. K P (A, j) für A ⊆ X und j ∈ C sei die Wahrscheinlichkeit, dass ein zufällig gezogenes x ∈ X in die Menge A fällt und zur Klasse j gehört. K D = {(x1 , c(x1 )), ..., (xN , c(xN ))} ⊆ X × C sei eine Menge von aus X × C nach der Verteilung P unabhängig voneinander gezogenen Beispielen. K c : X → C sei der vom Lernalgorithmus auf Basis von D bestimmte Klassifikator. K (x0 , c(x0 )) sei unabhängig von D nach P gezogen, d.h. P (x0 ∈ A, c(x0 ) = j) = P (A, j) und (x0 , c(x0 )) unabhängig von D. c) = P (c(x0 ) = c(x0 ) | D) Missklassifikationsrate: R∗ ( c)? § Wie bestimmt man R∗ ( 8 Performance Measures Resubstitutionsfehler (Trainingsfehler) Situation: K Trainingsmenge D = {(x1 , c(x1 )), ..., (xN , c(xN ))} ⊆ X × C. K c : X → C sei der vom Lernalgorithmus auf Basis von D bestimmte Klassifikator. Resubstitutionsfehler (Missklassifikationsrate auf der Trainingsmenge): Rtr ( c) = |{i ∈ {1, ..., N}|c(xi ) = c(xi )}| N Problem: K Missklassifikationsrate wird für die Menge von Beispielen bestimmt, die schon zum Lernen benutzt wurden. § Auswendiglernen führt zu minimalem Resubstitutionsfehler. K Resubstitutionsfehler ist meist eine zu optimistische Schätzung. 9 LF: II Grundlagen c LETTMANN 2005-06 Performance Measures Bemerkungen: K Holdout–Schätzung (Missklassifikationsrate auf Testdaten) Situation: K Bei der Aufteilung in Trainings- und Testmenge muss darauf geachtet werden, dass die Verteilung erhalten bleibt, z.B. in beiden Mengen die Objektklassen in gleicher relativer Häufigkeit auftreten (Stratifizierung). Trainingsmenge D = {(x1 , c(x1 )), ..., (xN , c(xN ))} ⊆ X × C. K c : X → C sei auf Basis von D gelernte Klassifikator. K Testmenge DT = {(x1 , c(x1 )), ..., (xN , c(xN ))} ⊆ X × C. Missklassifikationsrate auf der Testmenge: Rts ( c) = |{i ∈ {1, ..., N }|c(xi ) = c(xi )}| N Meist werden die Ausgangsdaten im Verhältnis 2:1 in Trainingsmenge D und Testmenge DT aufgeteilt. Problem: K Testdaten und Trainingsdaten müssen unabhängig nach der gleichen Verteilung gezogen sein. K Für gute Ergebnisse müssen Testdatenmenge und Trainingsdatenmenge groß sein. 10 Performance Measures K-fache Kreuzvalidierung (K-fold cross-validation) Bessere Vorgehensweise bei kleinen Beispielmengen: K Für K ∈ N zerlege D in möglichst gleichgroße, disjunkte Teilmengen D1 , ..., DK . K Für jedes k ∈ {1, ..., K} – wende das Lernverfahren an auf D \ Dk und bestimme ck : X → C und – bestimme Rts ( ck ) = K |{(x,j)∈Dk |c k (x)=j}| . |Dk | Wende das Lernverfahren an auf D und bestimme c : X → C. Missklassifikationsrate bei Kreuzvalidierung: c) = Rcv ( K 1 Rts ( ck ) K k=1 Grundannahme: ck ) nahe bei R∗ ( c). Für großes K ist D \ Dk fast so groß wie D und damit R∗ ( K = 10 ist oft eine gute Wahl (bei Entscheidungsbäumen). 11 Performance Measures Leave–One–Out–Kreuzvalidierung (leave one out cross-validation) Spezialfall der Kreuzvalidierung mit K = N: K Bestimme die Missklassifikationsrate bei Kreuzvalidierung für die Mengen Dk = D \ {(xk , c(xk ))} und Tk = {(xk , c(xk ))} mit k ∈ {1, ..., N} . Problem: K Großer Rechenaufwand bei größeren Beispielmengen. K Einelementige Testmengen sind nicht stratifiziert (nur eine Klasse). K Fehlerüberschätzungen sind möglich. Lernverfahren „Mehrheitsentscheidung auf Trainingsmenge“ liefert 100% Missklassifikationsrate bei Beispielmenge mit zwei Klassen und gleicher Beispielanzahl für jede Klasse. 12 LF: II Grundlagen c LETTMANN 2005-06 Performance Measures Bemerkung: Bootstrapping K Ausgangspunkt Lernmenge D mit N Beispielen K Für k = 1, ..., K K Die Wahrscheinlichkeit, dass ein Beispiel mindestens einmal gezogen wird, ist 1 − (1 − 1/N )N . K Für N groß, gilt 1 − (1 − 1/N )N ≈ 1 − 1/e ≈ 0.632. K In jeder Lernmenge sind etwa 63.2% der Beispiele in D. K Man kann die Klassifikatoren c 1 , ..., c K auch zu einem Ensemble zusammenfassen und durch Mehrheitsentscheid die Klasse eines Beispiels festlegen: – ziehe aus D insgesamt N Beispiele mit Zurücklegen und bilde daraus die Lernmenge Dk , c(x) := – wende das Lernverfahren an auf Dk und bestimme ck : X → C und – bestimme Rts ( ck ) = K argmax j∈{1,...,J } |{k ∈ {1, ..., K} : c k (x) = j}| Verbesserungen der Fehlerrate von 20% bis 47% bei Anwendung mit Entscheidungsbäumen gegenüber einfachem Entscheidungsbaumlernen wurden beobachtet. |{(x,j)∈Dk |c k (x)=j}| . |Dk | Wende das Lernverfahren an auf D und bestimme c : X → C. Missklassifikationsrate bei Bootstrapping: Rbt ( c) = K 1 Rts ( ck ) K k=1 13 Lernen aus Beispielen Bemerkungen: Allgemeines Modell des (Maschinellen) Lernens aus Beispielen Komponenten: K Ein Generator G für Zufallsvektoren x ∈ Rn , die unabhängig voneinander nach einer festen, jedoch unbekannten Wahrscheinlichkeitsverteilung F (x) gezogen werden. K Ein Überwacher (Supervisor) S, der für jeden Eingangsvektor x einen Ausgabewert y zurückgibt, der entsprechend einer festen, aber unbekannten bedingten Verteilungsfunktion F (y|x) gezogen wird. K Ein Lernalgorithmus LA, der fähig ist, eine Menge von Funktionen fα (x) mit α ∈ Λ zu beschreiben für eine Menge Λ von Parametern. Der Supervisor S kann je nach Lernaufgabe eine Funktion f zur Bestimmung von y benutzen: y = f (x). Im allgemeinen jedoch kann der Wert y fehlerbehaftet sein, beispielsweise durch Ablesefehler. K Die zur Parametrisierung verwendeten Werte α ∈ Λ sind nicht als Vektoren und damit als zusätzliche Argumente zu sehen, sondern abstrakt, so daß die fα (x) jede Funktion darstellen können. y x Generator K Supervisor Lernalgorithmus ^y 14 Lernen aus Beispielen Allgemeines Modell des (Maschinellen) Lernens aus Beispielen Lernphase: Dem Lernalgorithmus LA steht zur Verfügung eine endliche Trainingsmenge D von Paaren D = {(x1 , y1 ), ..., (xN , yN )} Die Beispiele sind unabhängig und gleichverteilt gezogen entsprechend der Verteilungsfunktion F (x, y) = F (x) · F (y|x). Passend für diese Trainingsmenge wird ein α ∈ Λ durch LA ausgegewählt. Arbeitsphase: LA antwortet auf eine beliebige Eingabe x mit dem Wert ŷ = fα (x) entsprechend der in der Trainingsphase gewählten Funktion fα . Ziel: Auswahl einer Funktion fα (x), die die Antworten des Supervisors S möglichst gut approximiert. 15 LF: II Grundlagen c LETTMANN 2005-06 Lernen aus Beispielen Bemerkung: R∗ (fα ) ist natürlich von der Lernaufgabe abhängig, genauer von der Funktion f . Diese Abhängigkeit wird in der Bezeichnung nicht erwähnt. Allgemeines Modell des (Maschinellen) Lernens aus Beispielen K K L(y, fα (x)) Verlust oder Unterschied als Maß für die Abstand zwischen Antwort des Supervisors S und der Antwort fα (x) der Lernmaschine LA bei Eingabe x. R∗ (fα ) = L(y, fα (x))dF (x, y) Die Verteilungsfunktion F (x, y) ist der Lernmaschine unbekannt. Die einzige verfügbare Information ist in der Trainingsmenge enthalten. Erwarteter Verlust als Maß für die Güte der Approximation. § Ziel ist die Bestimmung einer Funktion fα0 (x), die das Risiko-Funktional R∗ (fα ) über der Menge {fα (x)|α ∈ Λ} minimiert. 16 Lernen aus Beispielen Bemerkung: Falls die Regressionsfunktion f (x) bei der Regressionsschätzung nicht unter den Kandidaten fα (x), α ∈ Λ ist, so minimiert die Funktion fα0 (x) das Risiko-Funktional, die bezüglich der Metrik von L2 (F ) die Funktion f (x) am besten approximiert Problemklassen für das Maschinelle Lernen K Pattern Recognition (Muster-Erkennung, Klassifikation) Die Antwort y des Supervisors S nimmt nur die Werte −1 und 1 an, y ∈ {−1, 1}. Der Fall y = fα (x) heißt Klassifikationsfehler. Die Funktionen fα (x), α ∈ Λ heißen Indikatorfunktionen. Mit der Verlustfunktion 1 1 für y = fα (x) L(y, fα (x) = = (y − fα (x)) 0 sonst 2 (f (x) − fα0 (x))2 dF (x) ρ(f (x), fα0 (x)) = gibt das Risiko-Funktional R∗ (fα ) die Wahrscheinlichkeit eines Klassifikationsfehlers an. K Regression Estimation (Regressionsschätzung) Die Antwort y von S ist reellwertig. Die Regressionsfunktion fα0 (x) = ydF (y|x) sei in {fα (x)|α ∈ Λ} enthalten. fα0 (x) minimiert das Risiko-Funktional für die Verlustfunktion 2 L(y, fα (x)) = (y − fα (x)) 17 Lernen aus Beispielen Bemerkung: Für das Pattern Matching erhält man Prinzip der Empirische Risiko-Minimierung (ERM-Prinzip) Remp (fα ) = 1. Ersetzung des Risiko-Funktionals R∗ (fα ) durch das empirische Risiko-Funktional N 1 2k (yi − fa lpha(xi )). i=1 Für die Regressionsschätzung erhält man N 1 Remp (fα ) = L(yi , fα (xi )) k i=1 Remp (fα ) = N 1 k 2 (yi − fα (xi )) . i=1 basierend z.B. auf der Trainingsmenge. 2. Approximation der Funktion fα0 (x) durch die Funktion fα (x), die das empirische Risiko-Funktional Remp (fα ) minimiert. 18 LF: II Grundlagen c LETTMANN 2005-06 Lernen aus Beispielen Fragen zum ERM-Prinzip K Konsistenz von Lernverfahren Unter welchen Bedingungen ist ein auf dem ERM-Prinzip basierendes Lernverfahren konsistent (die Abweichung durch die empirische Schätzung minimal)? K Konvergenzrate von Lernverfahren Wie schnell konvergiert das Lernverfahren (als Funktion der Größe der Trainingsmenge)? K Kontrolle der Generalisierungsfähigkeit von Lernverfahren Wie kann die Konvergenz des Lernverfahrens kontrolliert werden? K Konstruktion von Lernverfahren Wie kann man Algorithmen konstruieren, die die Generalisierungsfähigkeit kontrollieren? 19 LF: II Grundlagen c LETTMANN 2005-06