Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

SS 2009Maschinelles Lernen und Neural Computation 83 Kapitel 5: Der praktische Umgang mit komplexen Lernern.

Ähnliche Präsentationen


Präsentation zum Thema: "SS 2009Maschinelles Lernen und Neural Computation 83 Kapitel 5: Der praktische Umgang mit komplexen Lernern."—  Präsentation transkript:

1 SS 2009Maschinelles Lernen und Neural Computation 83 Kapitel 5: Der praktische Umgang mit komplexen Lernern

2 SS 2009Maschinelles Lernen und Neural Computation 84 Neuronale Netze als semiparametrische Verfahren Neuronale Netze sind sehr flexibel, aber haben eine große Anzahl an Freiheitsgraden (Gewichten) sie benötigen sehr viele Daten für eine vernünftige Modellschätzung Modelle sollten möglichst klein gehalten werden Occams Razor: wenn zwei Modelle das gleiche vorhersagen, bevorzuge das kleinere Neuronale Netze unterliegen dem Fluch der Dimension (nicht beliebig viele Inputs)

3 SS 2009Maschinelles Lernen und Neural Computation 85 Overfitting Bei zu wenigen Trainingsdaten: Das NN versucht, das Rauschen mitzumodellieren Überanpassung (Overfitting): schlechtere Performanz auf neuen Daten (quadratischer Abstand wird größer) 50 Bsp., 15 H.U.

4 SS 2009Maschinelles Lernen und Neural Computation 86 Vermeidung von Overfitting So viel Daten wie möglich (gute Abdeckung der Verteilung!) Modell (Netz) so klein wie möglich halten Allgemein: Regularisierung (= Einschränken der effektiven Anzahl der Freiheitsgrade): –Mehrere Durchläufe, Durchschnitt bilden –Strafterm für große Netze, z.B.: –Pruning (Entfernen von Verbindungen) –Early stopping

5 SS 2009Maschinelles Lernen und Neural Computation 87 Überbestimmung des Modells Wenn weniger Daten (Beispiele) als Gewichte: Modell ist unterbestimmt (Gewichte könnten frei gewählt werden) mindestens so viele Beispiele wie Gewichte Da Probleme stochastisch: jedes Beispiel trägt nur einen kleinen Teil zum Modell bei (Rauschverteilung) ein Vielfaches an Beispielen notwendig Heuristik: n Beispiele > 10n Gewichte Beispiel: 9 Inputs, 500 Beispiele, 1 Output n Gewichte = n HU *(9+1), max. 50 Gewichte max. 5 Hidden Units Auch wenn benötigtes Modell komplexer ist: es lässt sich mit diesem Datenmaterial nicht ausnutzen

6 SS 2009Maschinelles Lernen und Neural Computation 88 Der Fluch der Dimension Auch bei neuronalen Netzen steigt der Bedarf an Beispielen überlinear mit der Dimension (Inputs) (~ quadratisch) Zahl der Inputmerkmale sollte so klein wie möglich sein Obige Heuristik gilt eigentlich nur für kleine Inputanzahl (darüber noch größeres Vielfaches nehmen) Merkmalselektion

7 SS 2009Maschinelles Lernen und Neural Computation 89 Die wesentlichen Schritte Aufgrund ihrer Eigenschaften erfordern neuronale Netze eine saubere Vorgangsweise: 1.Datensichtung 2.Datenvorverarbeitung 3.Merkmalsselektion 4.Modellschätzung und Modellselektion 5.Vergleich mit einfachen Verfahren 6.Testen auf unabhängigen Daten 7.Interpretation der Ergebnisse

8 SS 2009Maschinelles Lernen und Neural Computation 90 Schritt 1: Datensichtung Wichtig: sich ein Bild von den Daten machen Z.B.: Plotten jedes einzelnen Inputmerkmals Ausreißer identifizieren Fälle eliminieren oder auf Werte auf Maximalwert setzen Attribute mit wenig Informationsgehalt eliminieren (z.B. wenn es fast immer den gleichen Wert hat) Fehlende Werte identifizieren Fälle eliminieren oder auf Werte auf Durchschnitt setzen

9 SS 2009Maschinelles Lernen und Neural Computation 91 Hauptkomponentenanalyse Principal Component Analysis (PCA): finde die Achsen (Hauptkomponenten), die die größte Varianz abdecken (~ Koordinatentransformation) Mathematisch: Eigenvektoren der Kovarianzmatrix Ermöglicht (tw.) Visualisierung der Daten PC1 PC2 Bsp: Pima Indian Daten

10 SS 2009Maschinelles Lernen und Neural Computation 92 Schritt 2: Vorverarbeitung Frage: enthalten Inputmerkmale die richtige Information? Transformation (Differenzenbildung, Quotient, komplexere Merkmalsberechnung, etc.) Sichtung der neuen Merkmale Normalisierung (pro Merkmal): Mittelwert 0, Standardabweichung 1 (sonst ist Modellschätzung schwierig)

11 SS 2009Maschinelles Lernen und Neural Computation 93 Schritt 3: Merkmalsselektion So wenig Inputdimensionen wie möglich! 1. Heuristik: Korrelationsanalyse: –Nur diejenigen, die hoch korrelieren –Merkmale weglassen, die mit anderen hoch korrelieren –Aber: nur First order Statistik, suboptimal Klasse Merkmale 2. Heuristik: PCA –Eigenwerte geben an, wieviel Varianz abgedeckt –z.B. Pima Indian: 2.1, 1.73, 1.03, 0.88, 0.76, 0.68, 0.42, 0.4 –Nimm Hauptkomponenten als Input aber: keine Outputinformation; kann suboptimal sein

12 SS 2009Maschinelles Lernen und Neural Computation 94 Verfahren zur feature selection Filters: betrachten einfache Auswahlmodelle (z.B. linear) Wrappers: Betrachten das Zielmodell (siehe Modellselektion) Suchverfahren: –inkrementelles Hinzunehmen –inkrementelles Wegnehmen –branch and bound Bayessche Evidenz Optimale Selektion nur, wenn alle Kombinationen betrachtet!

13 SS 2009Maschinelles Lernen und Neural Computation 95 Schritt 4a: Modellschätzung (Training) Konj. Gradient oder Quasi-Newton Fortschritt des Trainings: Lernkurve (Fehler über Lernzyklen) 1 Zyklus (epoch): ganzes Trainingsset (batch) Mehrere Initialisierungen: lokale Minima erkennbar Fehler auf unabhängigen Datenset beobachtbar: Early Stopping: Abbrechen, wenn Validierungsfehler ansteigt (= overfitting) Lokales Minimum

14 SS 2009Maschinelles Lernen und Neural Computation 96 Schritt 4b: Modellselektion Ziel: optimale Modellkomplexität (Anzahl der Hidden Units) Da optimales Modell unbekannt: ausprobieren und vergleichen Immer auf unabhängigen Daten validieren Ein einzelner Trainingsdurchlauf hat Bias (zu sehr vom Trainingsset abhängig zu optimistisch/pessimistisch) Mehrere Durchläufe (mit verschiedenen Trainingssets) notwendig!

15 SS 2009Maschinelles Lernen und Neural Computation 97 Bei beschränkten Datensätzen: n-fache Kreuzvalidierung Das ganze n mal (Validierungsset jeweils disjunkt, Trainingssets nicht) n Durchläufe, n Netze, n Performanzen auf Validierungssets Durchschnitt (Schätzung ohne Bias), NICHT das beste Netz! Standardabweichung (Konfidenzintervall) Die n-fache Kreuzvalidierung... n-1 Teile zum Training n. Teil zum Testen (Validierung) n Teile

16 SS 2009Maschinelles Lernen und Neural Computation 98 Statistisches Testen Vergleich zweier Modelle anhand des Durchschnitts Frage: Ist der Unterschied signifikant (oder zufällig)? statistischer Signifikanztest notwendig Z.B.: t-test (Test auf Gleichheit der Mittelwerte, setzt Normalverteilung voraus) Nullhypothese: Mittelwerte sind gleich T-Wert in Tabelle p-Wert (1-Wahrscheinlichkeit, dass Nullhypothese abgelehnt werden kann) Freiheitsgrade Anzahl Beobachtungen Varianz

17 SS 2009Maschinelles Lernen und Neural Computation 99 Signifikanztests: Allgemeines P-Wert sollte maximal 5% sein: p<0.05 Je niedriger, desto signifikanter Wenn keine Signifikanz erreicht: mehr Beobachtungen = Erhöhung von n Abstand wird geringer werden Multiples Testen: bei p<0.05: Unter 20 Tests ist im Durchschnitt einer dabei, der fälschlicherweise Signifikanz vorhersagt korrigieren oder höheres Niveau verlangen (z.B. p<0.01)

18 SS 2009Maschinelles Lernen und Neural Computation 100 Modellselektion Strategie zur optimalen Wahl der Modellkomplexität: –Klein beginnen (z.B. 1 oder 2 Hidden Units) –n-fache Kreuzvalidierung –Jeweils eine Hidden Unit hinzufügen –Akzeptieren, solange (signifikante) Verbesserung Keine Regularisierung notwendig Overfitting wird durch Kreuzvalidierung abgefangen (Durchschnittsbildung) zu viele Hidden Units zu große Varianz keine Signifikanz Das gleiche Verfahren kann auch zur Merkmalsselektion verwendet werden (wrapper)

19 SS 2009Maschinelles Lernen und Neural Computation 101 Schritt 5: Vergleich mit einfachen Verfahren Neuronales Netz sollte immer auch mit einfacher Alternative verglichen werden z.B.: lineares Verfahren, k-nearest neighbor Wie bei Modelleslektion: –n-fache Kreuzvalidierung –Vergleich der Mittelwerte –Signifikanztest Bei kleinen Datensätzen ist lineares Verfahren oft nicht unterlegen!

20 SS 2009Maschinelles Lernen und Neural Computation 102 Schritt 6: Testen auf unabhängigen Daten Ein Teil der Daten (zufällig gewählt) sollte bis jetzt aufgehoben worden sein Testen des besten Modells auf diese Daten Nach Kreuzvalidierung: am besten alle n Netze mit Durchschnittsbildung! (= Komitee) Jetzt nochmalige n-fache Kreuzvalidierung mit besten Modell (Komitee) Schätzung der Routineperformanz + Konfidenzintervall

21 SS 2009Maschinelles Lernen und Neural Computation 103 Schritt 7: Interpretation der Ergebnisse Quadratischer Fehler alleine sagt oft wenig aus Rückrechnen auf Originalwerte Berechnen der Auswirkungen (z.B. Ersparnis) Regressionsgerade, Scatter Plot: –Güte –Ausreißer

22 SS 2009Maschinelles Lernen und Neural Computation 104 Auswertung von Klassifikationsergebnissen Wenn Klassen ungleich verteilt (unterschiedliche a priori Wahrscheinlichkeiten): Gesamtperformanz ist nicht aussagekräftig z.B.: p(c 1 )=0.2, p(c 2 )=0.8 Immer Klasse 2 sagen (naïve rater) bringt 80% korrekt Unterscheiden zwischen –Sensitivität (korrekt klassifizierte Positive – z.B. Klasse 1) –Spezifität (korrekt klassifizierte Negative – z.B. Klasse 2) Wenn 1 Gesamtperformanz notwendig (z.B. zum Vergleich): Durchschnitt der beiden Werte naïve rater: Sens=0%, Spez=100%, Durchschnitt: 50% Guter Klassifizierer: Sens=80%, Spez=80%, Durchschnitt: 80%

23 SS 2009Maschinelles Lernen und Neural Computation 105 Die ROC-Kurve Ob höhere Sensitivität oder höhere Spezifität besser ist, entscheidet Anwendung Sens. vs. Spez. plotten zeigt den gesamten Bereich des Klassifizierers an naive rater: 45º Gerade Je weiter davon entfernt, desto besser Gesamtgüte: Fläche unter der ROC-Kurve receiver operated characteristics

24 SS 2009Maschinelles Lernen und Neural Computation 106 Zusammenfassung Komplexe Lerner erfordern Sorgfalt und saubere Validierung Viele Trainingsdurchgänge nötig Komplexe Lerner sollten nie blind auf Daten angewandt werden Bei kleinen Datensätzen sind komplexe Lerner oft nicht überlegen (auch wenn das Problem theoretisch nichtlinear ist)


Herunterladen ppt "SS 2009Maschinelles Lernen und Neural Computation 83 Kapitel 5: Der praktische Umgang mit komplexen Lernern."

Ähnliche Präsentationen


Google-Anzeigen