ML_Geron_01 Flashcards
Was sind die zwei verbreitetsten Aufgaben beim überwachten Lernen?
Die zwei verbreitetsten Aufgaben beim überwachten Lernen sind Regression und Klassifikation.
Welche Art Algorithmus würden Sie verwenden, um Ihre Kunden in unterschiedliche Gruppen einzuteilen?
Wenn Sie nicht wissen, wie Sie die Gruppen definieren sollen, können Sie ein Clustering-Verfahren verwenden (unüberwachtes Lernen), um Ihre Kunden in Cluster jeweils ähnlicher Kunden zu segmentieren.
Wenn Sie dagegen die gewünschten Gruppen bereits kennen, können Sie einem Klassifikationsalgorithmus viele Beispiele aus jeder Gruppe zeigen (überwachtes Lernen) und alle Kunden in diese Gruppen einordnen lassen.
Was ist der Unterschied zwischen einem Modellparameter und einem Hyperparameter eines Lernalgorithmus?
Ein Modell besitzt einen oder mehr Modellparameter, die festlegen, wie Vorhersagen für einen neuen Datenpunkt getroffen werden (z.B. die Steigung eines linearen Modells).
Ein Lernalgorithmus versucht, optimale Werte für diese Parameter zu finden, sodass das Modell bei neuen Daten gut verallgemeinern kann.
Ein Hyperparameter ist ein Parameter des Lernalgorithmus selbst, nicht des Modells (z.B. die Menge zu verwendender Regularisierung).
Angenommen, Sie möchten Bilder als innen/außen und Tag/Nacht klassifizieren.
Sollten Sie zwei Klassifikatoren mit logistischer Regression oder einen Klassifikator mit Softmax-Regression erstellen?
Wenn Sie Bilder als außen/innen und Tag/Nacht klassifizieren möchten, schließen sich die Kategorien nicht gegenseitig aus (d.h., alle vier Kombinationen sind möglich).
Sie sollten daher zwei Klassifikatoren mit logistischer Regression trainieren.
Kann das Gradientenverfahren bei einem logistischen Regressionsmodell in
einem lokalen Minimum stecken bleiben?
Das Gradientenverfahren kann beim Trainieren eines logistischen Regressionsmodells nicht in einem lokalen Minimum stecken bleiben, weil die Kostenfunktion konvex ist.
Nehmen wir an, Sie hätten einen SVM-Klassifikator mit RBF-Kernel trainiert.
Es sieht so aus, als würde Underfitting der Trainingsdaten vorliegen: Sollten
Sie γ (gamma) erhöhen oder senken? Wie sieht es mit C aus?
Wenn ein mit einem RBF-Kernel trainierter SVM-Klassifikator die Trainingsdaten underfittet, gibt es möglicherweise zu viel Regularisierung.
Um diese zu senken, müssen Sie gamma oder C erhöhen (oder beide).
Sie verwenden eine polynomielle Regression, plotten die Lernkurven und
bemerken, dass es zwischen dem Trainingsfehler und dem Validierungsfehler
einen großen Unterschied gibt. Was passiert? Nennen Sie drei Möglichkeiten,
dies zu beheben.
Wenn der Validierungsfehler deutlich höher als der Trainingsfehler ist, liegt es daran, dass Ihr Modell die Trainingsdaten overfittet.
Dies lässt sich beheben, indem Sie den Grad des Polynoms senken: Ein Modell mit weniger Freiheitsgraden neigt weniger zu Overfitting.
Sie können auch versuchen, das Modell zu regularisieren – beispielsweise über einen ℓ2 -Strafterm (Ridge) oder einen ℓ1 -Strafterm (Lasso), der zur Kostenfunktion addiert wird. Damit reduzieren Sie auch die Freiheitsgrade des Modells.
Schließlich können Sie auch die Größe des Trainingsdatensatzes erhöhen.
Was ist ein gelabelter Trainingsdatensatz?
Ein gelabelter Trainingsdatensatz ist ein Trainingsdatensatz, der die gewünschte Lösung (das Label) für jeden Datenpunkt enthält.
Was ist Out-of-Core-Lernen?
Out-of-Core-Algorithmen können riesige Datenmengen verarbeiten, die nicht in den Hauptspeicher des Computers passen.
Ein Out-of-Core-Lernalgorithmus teilt die Daten in Mini-Batches ein und verwendet Techniken aus dem Online-Learning, um aus diesen Mini-Batches zu lernen.
Wie würden Sie Machine Learning definieren?
Beim Machine Learning geht es um das Konstruieren von Systemen, die aus Daten lernen können. Lernen bedeutet, sich bei einer Aufgabe anhand eines Qualitätsmaßes zu verbessern.
Welches Problem liegt vor, wenn Ihr Modell auf den Trainingsdaten eine sehr gute Leistung erbringt, aber schlecht auf neue Daten verallgemeinert?
Nennen Sie drei Lösungsansätze.
Wenn ein Modell auf den Trainingsdaten herausragend abschneidet, aber schlecht auf neue Datenpunkte verallgemeinert, liegt vermutlich Overfitting der Trainingsdaten vor (oder wir hatten bei den Trainingsdaten eine Menge Glück).
Gegenmaßnahmen bei Overfitting sind das
- Beschaffen zusätzlicher Daten,
- das Vereinfachen des Modells (Auswählen eines einfacheren Algorithmus, Reduzieren der Parameteranzahl oder Regularisierung des Modells) oder das
- Verringern des Rauschens in den Trainingsdaten
Führen alle Algorithmen für das Gradientenverfahren zum gleichen Modell,
vorausgesetzt, sie laufen lange genug?
Wenn das Optimierungsproblem konvex (wie bei der linearen oder logistischen Regression) und die Lernrate nicht zu hoch ist, finden sämtliche algorithmischen Varianten des Gradientenverfahrens das globale Optimum und führen zu sehr ähnlichen Modellen.
Allerdings konvergieren das stochastische und das Mini-Batch-Gradientenverfahren nicht wirklich (es sei denn, Sie reduzieren die Lernrate), sondern springen um das globale Optimum herum. Das bedeutet, dass diese Algorithmen geringfügig unterschiedliche Modelle hervorbringen, selbst wenn Sie sie lange laufen lassen.
Was ist Kreuzvalidierung, und warum sollten Sie diese einem Validierungsdatensatz vorziehen?
Kreuzvalidierung ist eine Technik, mit der Sie Modelle vergleichen können (zur Parameterauswahl und zum Einstellen von Hyperparametern), ohne dass Sie einen separaten Validierungsdatensatz benötigen.
Damit sparen Sie wertvolle Trainingsdaten ein.
Was ist ein Online-Lernsystem?
Ein Online-Lernsystem kann im Gegensatz zu einem Batch-Lernsystem inkrementell lernen.
Dadurch ist es in der Lage, sich sowohl an sich schnell ändernde Daten oder autonome Systeme anzupassen als auch sehr große Mengen an Trainingsdaten zu verarbeiten.
Können Sie vier Arten von Aufgaben nennen, für die Machine Learning gut geeignet ist?
- Machine Learning ist zum Lösen komplexer Aufgaben geeignet, bei denen es keine algorithmische Lösung gibt,
- zum Ersetzen langer Listen händisch erstellter Regeln,
- zum Erstellen von Systemen, die sich an wechselnde Bedingungen anpassen und schließlich dazu,
- Menschen beim Lernen zu helfen (z.B. beim Data Mining).
Ist es eine gute Idee, das Mini-Batch-Gradientenverfahren sofort zu unterbrechen, sobald der Validierungsfehler steigt?
Wegen des Zufallselements gibt es weder beim stochastischen noch beim Mini-Batch-Gradientenverfahren eine Garantie für Fortschritte bei jeder Iteration.
Wenn Sie also das Trainieren abbrechen, sobald der Validierungsfehler steigt, kann es passieren, dass Sie vor Erreichen des Optimums abbrechen.
Es ist günstiger, das Modell in regelmäßigen Abständen abzuspeichern und das beste gespeicherte Modell aufzugreifen, falls es sich eine längere Zeit nicht verbessert (es also vermutlich den eigenen Rekord nicht knacken wird).
Was kann schiefgehen, wenn Sie Hyperparameter mithilfe der Testdaten einstellen?
Wenn Sie Hyperparameter mit den Testdaten einstellen, riskieren Sie ein Overfitting des Testdatensatzes.
Der gemessene Verallgemeinerungsfehler ist dann zu niedrig angesetzt (Sie könnten in diesem Fall also ein Modell einsetzen, das schlechter funktioniert als erwartet).
Können Sie vier verbreitete Aufgaben für unüberwachtes Lernen nennen?
Verbreitete unüberwachte Lernaufgaben sind
- Clustering,
- Visualisierung,
- Dimensionsreduktion und das
- Erlernen von Assoziationsregeln.
Können Sie vier der wichtigsten Herausforderungen beim Machine Learning benennen?
Zu den Hauptschwierigkeiten beim Machine Learning gehören
- fehlende Daten,
- mangelhafte Datenqualität,
- nicht repräsentative Daten,
- nicht informative Merkmale,
- übermäßig einfache Modelle, die die Trainingsdaten underfitten und
- übermäßig komplexe Modelle, die die Trainingsdaten overfitten.
Nehmen Sie an, dass die Merkmale in Ihrem Trainingsdatensatz unterschiedlich skaliert sind. Welche Algorithmen würden dadurch in Mitleidenschaft
gezogen und in welcher Weise? Was können Sie dagegen tun?
- Wenn die Merkmale in Ihrem Trainingsdatensatz sehr unterschiedlich skaliert sind, hat die Kostenfunktion die Gestalt einer länglichen Schüssel. Deshalb benötigen die Algorithmen für das Gradientenverfahren lange zum Konvergieren. Um dieses Problem zu beheben, sollten Sie die Daten skalieren, bevor Sie das Modell trainieren.
- Die Normalengleichung funktioniert auch ohne Skalierung.
- Darüber hinaus können regularisierte Modelle mit nicht skalierten Merkmalen bei einer suboptimalen Lösung konvergieren: Weil die Regularisierung große Gewichte abstraft, werden Merkmale mit geringen Beträgen im Vergleich zu Merkmalen mit großen Beträgen tendenziell ignoriert.