Rückentwicklung
Hinweis
Weitere Details finden Sie auf der Registerkarte "Text und Bilder ".
Regressionsmodelle werden trainiert, um numerische Beschriftungswerte basierend auf Schulungsdaten vorherzusagen, die sowohl Features als auch bekannte Bezeichnungen enthalten. Der Prozess zum Trainieren eines Regressionsmodells (oder tatsächlich eines überwachten maschinellen Lernmodells) umfasst mehrere Iterationen, bei denen Sie einen geeigneten Algorithmus (in der Regel mit parametrisierten Einstellungen) verwenden, um ein Modell zu trainieren, die prädiktive Leistung des Modells auszuwerten und das Modell zu verfeinern, indem Sie den Schulungsprozess mit verschiedenen Algorithmen und Parametern wiederholen, bis Sie eine akzeptable Stufe der prädiktiven Genauigkeit erzielen.
Das Diagramm zeigt vier Schlüsselelemente des Schulungsprozesses für überwachte Machine Learning-Modelle:
- Teilen Sie die Schulungsdaten (zufällig) auf, um ein Dataset zu erstellen, mit dem das Modell trainiert werden soll, während Sie eine Teilmenge der Daten zurückhalten, die Sie zum Validieren des trainierten Modells verwenden.
- Verwenden Sie einen Algorithmus, um die Schulungsdaten an ein Modell anzupassen. Verwenden Sie im Fall eines Regressionsmodells einen Regressionsalgorithmus wie die lineare Regression.
- Verwenden Sie die Überprüfungsdaten, die Sie zurückgehalten haben, um das Modell zu testen, indem Sie Bezeichnungen für die Features vorhersagen.
- Vergleichen Sie die bekannten tatsächlichen Bezeichnungen im Validierungsdatenset mit den Beschriftungen, die das Modell vorhergesagt hat. Aggregieren Sie dann die Unterschiede zwischen den vorhergesagten und tatsächlichen Bezeichnungswerten, um eine Metrik zu berechnen, die angibt, wie genau das Modell für die Validierungsdaten vorhergesagt wurde.
Nach jedem Trainieren, Überprüfen und Auswerten der Iteration können Sie den Prozess mit verschiedenen Algorithmen und Parametern wiederholen, bis eine akzeptable Auswertungsmetrik erreicht ist.
Beispiel : Regression
Sehen wir uns die Regression mit einem vereinfachten Beispiel an, in dem wir ein Modell trainieren, um eine numerische Beschriftung (y) basierend auf einem einzelnen Featurewert (x) vorherzusagen. Die meisten realen Szenarien umfassen mehrere Featurewerte, was eine gewisse Komplexität hinzufügt; aber das Prinzip ist identisch.
In unserem Beispiel bleiben wir beim zuvor besprochenen Eisverkaufsbeispiel. Für unser Feature betrachten wir die Temperatur (angenommen, der Wert ist die maximale Temperatur an einem bestimmten Tag), und das Etikett, das wir trainieren möchten, um vorherzusagen, ist die Anzahl der verkauften Eiscremes an diesem Tag. Wir beginnen mit ein paar historischen Daten, die Datensätze zu Tagestemperaturen (x) und Eisverkäufen (y) enthalten:
|
|
|---|---|
| Temperatur (x) | Eisverkäufe (y) |
| 51 | 1 |
| 52 | 0 |
| 67 | 14 |
| 65 | 14 |
| 70 | 23 |
| 69 | 20 |
| 72 | 23 |
| 75 | 26 |
| 73 | 22 |
| 81 | 30 |
| 78 | 26 |
| 83 | 36 |
Schulung eines Regressionsmodells
Wir beginnen, indem wir die Daten aufteilen und eine Teilmenge davon verwenden, um ein Modell zu trainieren. Hier sehen Sie das Schulungsdatenset:
| Temperatur (x) | Eiscreme-Verkäufe (y) |
|---|---|
| 51 | 1 |
| 65 | 14 |
| 69 | 20 |
| 72 | 23 |
| 75 | 26 |
| 81 | 30 |
Um einen Einblick zu erhalten, wie sich diese x - und y-Werte miteinander in Beziehung setzen können, können wir sie wie folgt als Koordinaten entlang zweier Achsen darstellen:
Jetzt können wir einen Algorithmus auf unsere Schulungsdaten anwenden und auf eine Funktion anpassen, die einen Vorgang auf x anwendet, um y zu berechnen. Ein solcher Algorithmus ist eine lineare Regression, die funktioniert, indem eine Funktion abgeleitet wird, die eine gerade Linie durch die Schnittmengen der x - und y-Werte erzeugt, während der durchschnittliche Abstand zwischen der Linie und den gezeichneten Punkten minimiert wird, wie folgt:
Die Linie ist eine visuelle Darstellung der Funktion, in der die Steigung der Linie beschreibt, wie der Wert von y für einen bestimmten Wert von x berechnet wird. Die Linie fängt die x-Achse bei 50 ab, also ist x 50, y ist 0. Wie Sie an den Achsenmarkierungen im Diagramm sehen können, ist die Linienneigung so, dass jede Erhöhung von 5 entlang der x-Achse zu einer Erhöhung von 5 auf der y-Achse führt; also wenn x 55 ist, ist y 5; wenn x 60 ist, ist y 10, und so weiter. Um einen Wert von y für einen bestimmten Wert von x zu berechnen, subtrahiert die Funktion einfach 50; Mit anderen Worten, die Funktion kann wie folgt ausgedrückt werden:
f(x) = x-50
Sie können diese Funktion verwenden, um die Anzahl der am Tag verkauften Eiscremes mit jeder bestimmten Temperatur vorherzusagen. Angenommen, die Wettervorhersage sagt uns, dass es morgen 77 Grad beträgt. Wir können unser Modell anwenden, um 77-50 zu berechnen und vorherzusagen, dass wir morgen 27 Eiscremes verkaufen werden.
Aber wie genau ist unser Modell?
Auswerten eines Regressionsmodells
Um das Modell zu überprüfen und zu bewerten, wie gut es vorhergesagt wird, hielten wir einige Daten zurück, für die wir den Bezeichnungswert (y) kennen. Hier sind die Daten, die wir zurückgehalten haben:
| Temperatur (x) | Eiscreme-Verkäufe (y) |
|---|---|
| 52 | 0 |
| 67 | 14 |
| 70 | 23 |
| 73 | 22 |
| 78 | 26 |
| 83 | 36 |
Wir können das Modell verwenden, um die Beschriftung für jede der Beobachtungen in diesem Dataset basierend auf dem Featurewert (x) vorherzusagen; und vergleichen Sie dann die vorhergesagte Beschriftung (ŷ) mit dem bekannten tatsächlichen Beschriftungswert (y).
Mit dem zuvor trainierten Modell, das die Funktion f(x) = x-50 kapselt, ergeben sich die folgenden Vorhersagen:
| Temperatur (x) | Ist-Umsatz (y) | Prognostizierter Umsatz (ŷ) |
|---|---|---|
| 52 | 0 | 2 |
| 67 | 14 | 17 |
| 70 | 23 | 20 |
| 73 | 22 | 23 |
| 78 | 26 | 28 |
| 83 | 36 | 33 |
Wir können sowohl die vorhergesagten als auch die tatsächlichen Labels gegen die Featurewerte wie folgt plotten:
Die vorhergesagten Beschriftungen werden vom Modell berechnet, sodass sie sich in der Funktionszeile befinden, aber es gibt eine Varianz zwischen den ŷ Werten, die von der Funktion und den tatsächlichen y-Werten aus dem Validierungsdatensatz berechnet werden; die auf der Zeichnung als Linie zwischen den Werten ŷ und y angegeben wird, die zeigen, wie weit die Vorhersage vom tatsächlichen Wert entfernt war.
Regressionsauswertungsmetriken
Basierend auf den Unterschieden zwischen den vorhergesagten und tatsächlichen Werten können Sie einige gängige Metriken berechnen, die zum Auswerten eines Regressionsmodells verwendet werden.
Mittlere absolute Abweichung (Mean Absolute Error, MAE)
Die Varianz in diesem Beispiel zeigt, um wie viele Eiskugeln jede Vorhersage danebenlag. Es spielt keine Rolle, ob die Vorhersage über oder unter dem tatsächlichen Wert lag (z. B. -3 und +3 geben beide eine Varianz von 3 an). Diese Metrik wird als absoluter Fehler für jede Vorhersage bezeichnet und kann für den gesamten Gültigkeitsprüfungssatz als mittlerer absoluter Fehler (MAE) zusammengefasst werden.
Im Eiscremebeispiel beträgt der Mittelwert (Mittelwert) der absoluten Fehler (2, 3, 3, 1, 2 und 3) 2,33.
Mittlere quadratische Abweichung (MQA)
Die Metrik für den mittleren absoluten Fehler berücksichtigt alle Abweichungen zwischen vorhergesagten und tatsächlichen Beschriftungen gleichermaßen. Es kann jedoch wünschenswerter sein, ein Modell zu haben, das durch einen kleinen Betrag konsistent falsch ist als ein Modell, das weniger, aber größere Fehler macht. Eine Möglichkeit, eine Metrik zu erzeugen, die größere Fehler "amplifiziert", besteht darin, die einzelnen Fehler zu quadrieren und den Mittelwert der quadrierten Werte zu berechnen. Diese Metrik wird als mittlerer Quadratfehler () bezeichnet.
In unserem Eisbeispiel ist der Mittelwert der quadratischen Absolutenwerte (4, 9, 9, 1, 4 und 9) 6.
Mittlere quadratische Gesamtabweichung (Root Mean Squared Error, RMSE)
Die mittlere quadratische Abweichung hilft dabei, die Größe von Abweichungen zu berücksichtigen. Da die Abweichungen quadratisch dargestellt werden, stellt die resultierende Metrik nicht mehr die durch die Bezeichnung gemessene Menge dar. Mit anderen Worten, wir können sagen, dass das MSE unseres Modells 6 beträgt, aber das misst nicht die Genauigkeit in Bezug auf die Anzahl der Eissorten, die falsch vorhergesagt wurden; 6 ist nur ein numerischer Wert, der das Fehlerniveau in den Validierungsvorhersagen angibt.
Wenn wir den Fehler in Bezug auf die Anzahl der Eiscremes messen möchten, müssen wir die Quadratwurzel des MSE berechnen; dies ergibt eine Metrik, die wenig überraschend als "Root Mean Squared Error" bezeichnet wird. In diesem Fall ergibt √6, was 2,45 (Eiscremes) ist.
Koeffizienten der Bestimmung (R2)
Alle Metriken vergleichen bisher die Diskrepanz zwischen den vorhergesagten und tatsächlichen Werten, um das Modell auszuwerten. Tatsächlich gibt es jedoch eine natürliche zufällige Varianz im täglichen Verkauf von Eis, die das Modell berücksichtigt. In einem linearen Regressionsmodell passt der Schulungsalgorithmus zu einer geraden Linie, die die mittlere Varianz zwischen der Funktion und den bekannten Bezeichnungswerten minimiert. Der Koeffizienten der Bestimmung (allgemein als R2 oder R-Quadratd bezeichnet) ist eine Metrik, die den Anteil der Varianz in den Validierungsergebnissen misst, die durch das Modell erklärt werden können, im Gegensatz zu einigen anomalien Aspekt der Validierungsdaten (z. B. ein Tag mit einer sehr ungewöhnlichen Anzahl von Eisverkäufen aufgrund eines lokalen Festivals).
Die Berechnung für R2 ist komplexer als für die vorherigen Metriken. Es vergleicht die Summe der quadratischen Unterschiede zwischen vorhergesagten und tatsächlichen Beschriftungen mit der Summe der Quadratunterschiede zwischen den tatsächlichen Bezeichnungswerten und dem Mittelwert der tatsächlichen Beschriftungswerte, wie hier:
R2 = 1- ∑(y-ŷ)2 ÷ ∑(y-ȳ)2
Machen Sie sich keine Sorgen, wenn das kompliziert aussieht; Die meisten Machine Learning-Tools können die Metrik für Sie berechnen. Der wichtigste Punkt ist, dass das Ergebnis ein Wert zwischen 0 und 1 ist, der den Vom Modell erläuterten Anteil der Varianz beschreibt. In einfachen Worten, je näher 1 dieser Wert ist, desto besser passt das Modell an die Validierungsdaten. Im Fall des Eisregressionsmodells beträgt der aus den Validierungsdaten berechnete R20,95.
Iterative Schulung
Die oben beschriebenen Metriken werden häufig verwendet, um ein Regressionsmodell auszuwerten. In den meisten realen Szenarien wird ein Datenwissenschaftler einen iterativen Prozess verwenden, um ein Modell zu trainieren und zu bewerten, das unterschiedlich ist:
- Featureauswahl und -vorbereitung (Auswählen der features, die in das Modell aufgenommen werden sollen, und Berechnungen, die auf sie angewendet werden, um eine bessere Anpassung zu gewährleisten).
- Algorithmusauswahl (Wir haben die lineare Regression im vorherigen Beispiel untersucht, aber es gibt viele andere Regressionsalgorithmen)
- Algorithmusparameter (numerische Einstellungen zum Steuern des Algorithmusverhaltens, genauer als Hyperparameter bezeichnet, um sie von den X - und Y-Parametern zu unterscheiden).
Nach mehreren Iterationen wird das Modell ausgewählt, das zu der besten Auswertungsmetrik führt, die für das spezifische Szenario akzeptabel ist.