Kapitel 5: Der praktische Umgang mit komplexen Lernern

Slides:



Advertisements
Ähnliche Präsentationen
Vorlesung Programmieren II
Advertisements

Heute 1.F – Test zur Varianzhomogenität 2.Bartlett-Test zur Varianzhomogenität 3.Chi – Quadrat Tests für Häufigkeiten 4.Chi – Quadrat Tests zur Verteilungsanpassung.
TECHNISCHE UNIVERSITÄT DARMSTADT Naive Bayes for Ranking
Maschinelles Lernen   Präsenzübung.
ISWeb - Information Systems & Semantic Web Marcin Grzegorzek 5.3 Karhunen-Loeve-Transformation Minimalität und Orthogonalität innerhalb.
Regression und Korrelation
Sortierverfahren Richard Göbel.
Forschungsstatistik I Prof. Dr. G. Meinhardt WS 2004/2005 Fachbereich Sozialwissenschaften, Psychologisches Institut Johannes Gutenberg Universität Mainz.
Demoprogramm: Clustering Eine graphische Demonstration verschiedener Clusteringalgorithmen anhand des Clusterings von Punkten im zweidimensionalen Raum.
Tutorium
Tutorium
Tutorium
Tutorium Aufgabe 1 Informationen in Designmatrix in: - Darin sind die Prädiktoren enthalten - Aber sagt uns noch mehr! Untersuchungsdesign darin.
Neuronale Netzwerke am Beispiel eines MLP
Bayes‘sche Verfahren (Mitchell Kap. 6), Teil 1
Maschinelles Lernen und automatische Textklassifikation
Maschinelles Lernen Bayessche Verfahren (Mitchell Kap. 6), Teil 1.
Vorlesung: ANOVA I
Eigenschaften der OLS-Schätzer
Multikollinearität Wann spricht man von Multikollinearität?
Wiederholung: Einfache Regressionsgleichung
Christian Schulz, Marc Thielbeer, Sebastian Boldt
Globale Interpolations- und Prädiktionsverfahren
Quantum Computing Hartmut Klauck Universität Frankfurt WS 05/
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Hartmut Klauck Universität Frankfurt SS
Neuronale Netze Nachtrag Perzeptron



STATISIK LV Nr.: 0028 SS Mai 2005.
Statistik: Mehr zur Regression.
Kapitel 10 Multikollinearität
Multivariate Statistische Verfahren
Statistik – Regression - Korrelation
Entscheidungstheorie für Unentschlossene Indecision Theory.

SS 2009Maschinelles Lernen und Neural Computation 133 Kapitel 7: Ensemble Methoden.
EIN NEUES ENSEMBLE- KLASSIFIKATIONSVERFAHREN Tim Schneider Rotation Forest.
PCA Principal Component Analysis. Gliederung PCA – Warum eigentlich? PCA – Was ist zu tun? Was passiert eigentlich? Anwendungen Zusammenfassung.
TU Darmstadt FB 20 Informatik Bayes Decision Theory von Martin Tschirsich, Shuo Yang & Zijad Maxuti Hausübung 5: Erläuterung Anwendung.
Prognose von Zeitreihen Hans Nübel Hans Nübel Prognose von Zeitreihen Aufbau 1.Motivation 2.Holt-Winters-Verfahren 3.Prognose.
Independent Component Analysis: Analyse natürlicher Bilder Friedrich Rau.
Kapitel 2: Testtheorie / Testmodelle  Multivariate (p-variate) Normalverteil- ung :  Mittelwertstruktur: p Mittelwerte  Kovarianzstruktur: p·(p+1)/2.
1. 2 Das Grundproblem der Beurteilenden Statistik ● Wir haben uns bisher mit Problemen der Wahrscheinlichkeitsrechnung beschäftigt: – Die Wahrscheinlichkeit.
Exkurs: Chi-quadrat und Modellgüte 1. ist ein Distanzmaß, welches die Distanz zwischen Modellvorhersage und Daten misst.  Je kleiner desto besser ist.
Methoden der Psychologie
Mathematik LK oder GK?.
Emanuel Mistretta Lukas Schönbächler
HCS Übung 3 Von: Patrick Denk Oleg Arenz
DAS ARITHMETISCHE MITTEL
Ausgleich nach der Methode der kleinsten Quadrate
Multivariate Analysemethoden Johannes Gutenberg Universität Mainz
Transformationskurve und Opportunitätskosten
Die einfache/multiple lineare Regression
Signifikanz – was ist das überhaupt?
MLDM Übung 6 - Evaluation
Kapitel 2: Klassifikation
Maschinelles Lernen und Neural Computation
Stochastik in der MUED (c) A. Warmeling
Kapitel 2: Testtheorie / Testmodelle
Mathematik LK oder GK?.
Big Data Anwendungen ... selbst gedacht.
12 Das lineare Regressionsmodell
ReduSoft Ltd. Kurzbeschreibungen zu einigen Modulen, die im Programm MathProf 5.0 unter dem Themenbereich Stochastik implementiert sind.
Kapitel 2: Testtheorie / Testmodelle
Konfidenzintervalle und Tests auf Normalverteilung
ANOVA für unabhängige Daten.
Multivariate Analysemethoden Johannes Gutenberg Universität Mainz
 Präsentation transkript:

Kapitel 5: Der praktische Umgang mit komplexen Lernern Maschinelles Lernen und Neural Computation

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) Maschinelles Lernen und Neural Computation

und Neural Computation 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. Maschinelles Lernen und Neural Computation

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 Maschinelles Lernen und Neural Computation

Ü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: nBeispiele > 10nGewichte Beispiel: 9 Inputs, 500 Beispiele, 1 Output nGewichte = nHU*(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 Maschinelles Lernen und Neural Computation

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 Maschinelles Lernen und Neural Computation

Die wesentlichen Schritte Aufgrund ihrer Eigenschaften erfordern neuronale Netze eine saubere Vorgangsweise: Datensichtung Datenvorverarbeitung Merkmalsselektion Modellschätzung und Modellselektion Vergleich mit einfachen Verfahren Testen auf unabhängigen Daten Interpretation der Ergebnisse Maschinelles Lernen und Neural Computation

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 Maschinelles Lernen und Neural Computation

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 Bsp: Pima Indian Daten PC2 PC1 Maschinelles Lernen und Neural Computation

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) Maschinelles Lernen und Neural Computation

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 Merkmale Klasse 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 Maschinelles Lernen und Neural Computation

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” Bayes‘sche Evidenz Optimale Selektion nur, wenn alle Kombinationen betrachtet! Maschinelles Lernen und Neural Computation

Schritt 4: 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! Maschinelles Lernen und Neural Computation

Die n-fache Kreuzvalidierung 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) ... n-1 Teile zum Training n. Teil zum Testen (Validierung) n Teile Maschinelles Lernen und Neural Computation

und Neural Computation 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) Anzahl Beobachtungen Varianz Freiheitsgrade Maschinelles Lernen und Neural Computation

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 (z.B. p<0.05/k, k … Anzahl der Tests) Maschinelles Lernen und Neural Computation

und Neural Computation 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 Idealerweise ganze Strategie kreuzvalidieren (inklusive Feature Selection) Danach beste Strategie auf alle Daten anwenden Maschinelles Lernen und Neural Computation

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! Maschinelles Lernen und Neural Computation

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: Neu geschätztes Modell auf allen Trainingsdaten Alternative: alle n Netze mit Durchschnittsbildung (= „Komitee“) Jetzt nochmalige n-fache Kreuzvalidierung mit besten Modell  Schätzung der Routineperformanz + Konfidenzintervall Maschinelles Lernen und Neural Computation

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 Maschinelles Lernen und Neural Computation

Auswertung von Klassifikationsergebnissen Wenn Klassen ungleich verteilt (unterschiedliche a priori Wahrscheinlichkeiten): Gesamtperformanz ist nicht aussagekräftig z.B.: p(c1)=0.2, p(c2)=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% Maschinelles Lernen und Neural Computation

und Neural Computation 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“ Maschinelles Lernen und Neural Computation

und Neural Computation 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) Maschinelles Lernen und Neural Computation