Lineare Regression¶
In diesem Abschnitt werden wir die Konzepte von linearen ML-Algorithmen weiter erforschen, aber jetzt wird unsere Aufgabe sich auf die Vorhersage von Antworten in Bezug auf kontinuierliche Werte konzentrieren, anstatt diskrete Klassen, wie wir es in der linearen Klassifizierung taten. Unter der in der Einleitung an ML z.B. genannten ML-Anwendung wollen wir nun vorhersagen wieviel ist die Menge einer in Wasser gelösten chemischen Substanz, anstatt nur, wenn sie gelöst oder nicht (binäre Klassifikation).
Die lineare Regression konzentriert sich auf die Modellierung der Beziehung zwischen Eingangsgrößen (Features) und einer kontinuierlichen Zielgröße. Er nimmt einen linearen Zusammenhang zwischen den Eingangsmerkmalen und der Zielgröße an.
Hier ist unser Ziel wieder, die am besten passende Linie (oder Hyperplane in höheren Dimensionen) zu finden, die den Unterschied zwischen vorhergesagten und tatsächlichen Zielwerten minimiert. Zu diesem Zweck werden wir abdecken:
Mindestplatzkriterium zur Quantifizierung des Trainingsfehlers bei linearer Regression
Der stochastische Gradientenabstieg (SDG) Algorithmus, der beim Training eines linearen Regressionsmodells verwendet wird
Der Regularisierungsbegriff für lineare Regression
Die Fehlerquellen bei linearer Regression
Empirische Risikominimierung (ERM)¶
Zielfunktion¶
Wie wir in der Einführung an ML] gesehen haben, besteht das Ziel von ML darin, die Zielfunktion durch Anpassung der Parameter des Modells durch Techniken (d.h. Optimierungsalgorithmen) wie Gradientenabstieg zu minimieren.
Eine der objektiven Funktionen, die wir bei der linearen Regression nutzen können, ist Empirisches Risiko (). Wir drücken das empirische Risiko in Bezug auf eine Verlustmaßnahme aus, die nur die Abweichung zwischen Modellvorhersagungen und den Zielwerten (oder Etiketten) unseres Trainingsdatensatzes widerspiegelt und somit keine Regularisierung berücksichtigt. Ziel der empirischen Risikominimierung () (ERM) ist es, ein Modell zu finden, das die Diskrepanz zwischen Vorhersagen und Beobachtungen auf den Trainingsdaten minimiert, mit der Annahme, dass es sich gut auf ungesehene Daten verallgemeinern wird. So können wir folgendermaßen definieren:
ist die Anzahl der Ausbildungsbeispiele, ist das -th-Training Beispiel (Feature-Vektor bzw. Etikett) und ist eine generische Verlustfunktion. Beachten Sie, dass $\cdot§ ein Punktprodukt bedeutet.
Eine häufige Möglichkeit, Abweichungen zwischen Vorhersagen und Beobachtungen zu den Trainingsdaten auszudrücken, besteht darin, den quadratischen Fehler zu berechnen, der die gewöhnlichesten Quadrate (OLS)-Zielfunktion ergibt:
Know more
Aus mehreren Gründen ist es üblich, die Abweichungen zwischen Modellvorhersagungen und Etikettenwerten zur Verwendung als Verlustfunktion bei Optimierungsproblemen zu streichen:
Einfachheit: Durch die Streichung der Abweichungen wird die mathematische Formulierung der Verlustfunktion vereinfacht. Es entfällt die Notwendigkeit, die Richtung der Abweichung (positive oder negative) zu berücksichtigen und sicherzustellen, dass alle Abweichungen positiv zum Verlust beitragen. Zusätzlich bewahrt Squaring die schönen mathematischen Eigenschaften, die für die Optimierung erforderlich sind, wie differenzierbar und konvex.
Betonung großer Fehler: Die Streichung der Abweichungen verstärkt die Auswirkungen größerer Fehler im Vergleich zu kleineren Fehlern. Durch die Squrierung der Abweichungen penalisiert die Verlustfunktion signifikante Abweichungen stärker, was in vielen Anwendungen wünschenswert sein kann. Dieser Schwerpunkt auf großen Fehlern kann den Optimierungsprozess zur Reduzierung von Ausreißern und zur Verbesserung der Gesamtgenauigkeit führen.
Differenzierbarkeit: Durch die Streichung der Abweichungen wird die Verlustfunktion differenzierbar, was für Optimierungsalgorithmen von entscheidender Bedeutung ist, die sich auf Gradienten verlassen, um die Modellparameter zu aktualisieren. Die Fähigkeit, Derivate zu berechnen, ermöglicht eine effiziente Optimierung mit gradientenbasierten Methoden wie Gradientenabstieg oder stochastische Gradientenabstieg. Diese Methoden passen die Modellparameter iterativ in die Richtung, die den Verlust minimiert.
Konvexität: Quadratische Verlust ist eine konvexe Funktion, d.h. es hat ein einziges globales Minimum. Die Konvexität vereinfacht den Optimierungsprozess, da sie gewährleistet, dass die Verlustfunktion eine einzigartige Lösung hat und Optimierungsalgorithmen zuverlässig mit dieser Lösung zusammenkommen können. Nicht-Convex-Verlustfunktionen können mehrere lokale Minima haben, die die Optimierung anspruchsvoller machen können.
Lernalgorithmus¶
Nun verwenden wir den stochastischen Gradientenabstieg (SDG)-Algorithmus, um unser Modell zu aktualisieren. Beachten Sie, dass wir dies tun, indem wir die Modellparameter mit dem Gradienten unserer Zielfunktion, d.h. empirisches Risiko, an jedem Trainingsbeispiel ausgewertet. So kreuzen wir in Richtung der Richtung gegenüber dem Gradienten . Beachten Sie, dass die Funktion oben, definiert mit dem quadratischen Fehler als Verlustfunktion, überall differenzierbar ist. Wir berechnen den Gradienten des empirischen Risikos, das ergibt:
So können wir unseren Lernalgorithmus als:
Initialisieren
Zufällige Auswahl
Update , so dass:
wo die Lernrate ist.
Beachten Sie, dass dieser Lernalgorithmus demjenigen für den Fall der linearen Klassifizierung sehr ähnlich ist.
Reglementierung: Ridge Regression¶
Zielfunktion¶
Bisher hat sich unser Optimierungsproblem für die Ausbildung eines linearen Regressionsmodells nur auf die Minimierung des Trainingsfehlers (Empirische Risikominimierung oder ERM) konzentriert. Allerdings ist in den meisten Fällen ein regulärer Begriff von entscheidender Bedeutung, sonst kann unser Modell nicht für andere Datensätze verallgemeinern (neben dem Trainingsdatensatz in den Händen). Daher werden wir jetzt einen Regelbegriff für unsere Zielfunktion einführen, der nun ein Kühlregression-Problem darstellt. Ridge Regression führt einen regulären Begriff ein, oft die “Kühle Strafe” oder “L2 Strafe” auf die gewöhnliche am wenigsten Quadrate (OLS) objektive Funktion genannt. Dieser Straftermin () steuert die Komplexität des Modells durch Schrumpfung (d.h. Regressionskoeffizienten) auf Null. So ist die Zielfunktion für die Regression des Grats:
wobei der Regelparameter ist, den wir in der Lineare Klassifizierung erfasst haben.
Lernalgorithmus¶
Wie wir in der Empirical Risk Minimization (ERM) Methode taten, können wir auch den stochastischen Gradienten-Abstiegsalgorithmus in der Gratregression anwenden, nur jetzt müssen wir den Gradienten der neuen Zielfunktion () nehmen und es verwenden, um an jeder Iteration über den Trainingsdatensatz zu aktualisieren.
Erweitern wir zunächst alle Bedingungen von :
Der Gradient kann nun als:
So können wir unseren Lernalgorithmus als:
Initialisieren
Zufällige Auswahl
Update , so dass:
wo die Lernrate ist.
Beachten Sie, dass wir durch die Hinzufügung eines Regelbegriffs zu unserer Zielfunktion nun ein optimales Modell finden, das es anstatt die Trainingsdaten perfekt anzupassen, auch auf andere Datensätze verallgemeinert werden kann. Wir tun dies, weil wir glauben, dass das Modell nicht auf jedes einzelne Stück von schwachen Beweisen oder Geräuschen im Trainingsdatensatz angepasst werden sollte. Stattdessen stellen wir den Regularisierungsparameter ein, der verhindert, dass ändert, außer wenn der Nachweis stark genug ist, um einen Anstieg von zu werten. Mit steigendem Wert von erhöht sich auch der Trainingsfehler, aber mit der Hoffnung, dass unser Modell besser verallgemeinert und einen geringeren Testfehler ergibt.
Struktur gegen Schätzfehler¶
Bei der Auswahl eines ML-Algorithmus machen wir bestimmte Annahmen über die Beziehung zwischen den Merkmalen und den Etiketten. Bei linearer Regression wird davon ausgegangen, dass der Zusammenhang zwischen den Merkmalen und den Etiketten durch eine lineare Gleichung dargestellt werden kann. Wenn diese Annahme verletzt wird, wie wenn die wahre Beziehung nicht linear ist, dann wird unser Modell einen hohen Strukturfehler haben, weil es die zugrunde liegenden Muster in den Daten nicht genau erfassen kann. Somit umfasst der strukturelle Fehler die Einschränkungen oder Annahmen des gewählten Modells, und er stellt den irreduzierbaren Fehler dar, der unabhängig von der Menge der Trainingsdaten nicht beseitigt werden kann. Schätzungsfehler hingegen ergibt sich aus der endlichen Natur der Trainingsdaten und der daraus resultierenden Unfähigkeit unseres Modells, aus diesen Daten zu passen oder zu verallgemeinern. Schätzungsfehler können auftreten, wenn die verfügbaren Trainingsdaten begrenzt sind oder die tatsächlich zugrunde liegende Verteilung des Problems nicht ausreichend darstellt. In solchen Fällen kann das Modell kämpfen, um die wahren Muster und Zusammenhänge in den Daten zu erfassen, was zu höheren Schätzungsfehlern führt.