Kostenfunktion in der linearen OLS-Regression


31

Ich bin ein bisschen verwirrt mit einem Vortrag über lineare Regression von Andrew Ng über Coursera über maschinelles Lernen. Dort gab er eine Kostenfunktion an, die die Quadratsumme wie folgt minimiert:

12mi=1m(hθ(X(i))Y(i))2

Ich verstehe, woher das kommt. Ich denke, er hat es so gemacht, dass, wenn er eine Ableitung des quadratischen Terms ausführte, die 2 im quadratischen Term mit der Hälfte storniert würde. Aber ich verstehe nicht, woher die kommen.121m

Warum müssen wir ? In der linearen Standardregression haben wir es nicht, wir minimieren einfach die Residuen. Warum brauchen wir es hier?1m


1 / 2m hilft, den durchschnittlichen Fehler pro Datenpunkt zu finden, und m repräsentiert die Gesamtbeobachtungen oder die Anzahl der Beobachtungen.
Krishnan Achary

Antworten:


33

Wie Sie zu bemerken scheinen, benötigen wir den Faktor sicherlich nicht , um eine lineare Regression zu erhalten. Die Minimierer werden natürlich mit oder ohne dieselben sein. Ein typischer Grund für die Normalisierung mit m ist, dass wir die Kostenfunktion als eine Annäherung an den "Generalisierungsfehler" betrachten können, der der erwartete quadratische Verlust für ein zufällig ausgewähltes neues Beispiel ist (nicht im Trainingssatz enthalten):1/mm

Angenommen, werden aus einer Verteilung abgetastet. Dann erwarten wir für großes m , dass 1(X,Y),(X(1),Y(1)),,(X(m),Y(m))m

1mi=1m(hθ(X(i))Y(i))2E(hθ(X)Y)2.

Genauer gesagt gilt nach dem starken Gesetz der großen Zahlen mitWahrscheinlichkeit1.

limm1mi=1m(hθ(X(i))Y(i))2=E(hθ(X)Y)2

Anmerkung: Jede der obigen Aussagen gilt für ein bestimmtes , das ausgewählt wurde, ohne den Trainingssatz zu betrachten. Für maschinelles Lernen, wollen wir diese Aussagen zu halten , für einige θ auf der Grundlage seiner guten Leistung auf dem Trainingssatz gewählt. Diese Behauptungen können in diesem Fall immer noch gelten, obwohl wir einige Annahmen über die Menge der Funktionen { h θ treffen müssenθθ^ , und wir brauchen etwas Stärkeres als das Gesetz der großen Zahlen. {hθ|θΘ}


1
@StudentT Dies ist wahrscheinlich der beste Grund für die Verwendung des Durchschnittsfehlers über der Gesamtsumme. Meine Erklärung ist eigentlich nur eine oberflächliche Folge des tieferen Grundes von DavidR.
Matthew Drury

28

Sie müssen nicht haben zu. Die Verlustfunktion hat das gleiche Minimum, unabhängig davon, ob Sie die 1 einschließen oder unterdrücken. Wenn Sie es jedoch einschließen, erhalten Sie die nette Interpretation der Minimierung (der Hälfte) desdurchschnittlichenFehlers pro Datenpunkt. Anders ausgedrückt, der Fehler werden minimiertRateanstelle des Gesamtfehlers.1m

Vergleichen Sie die Leistung für zwei Datensätze unterschiedlicher Größe. Die rohe Summe der quadratischen Fehler ist nicht direkt vergleichbar, da größere Datensätze aufgrund ihrer Größe tendenziell mehr Gesamtfehler aufweisen. Auf der anderen Seite, der durchschnittliche Fehler pro Datenpunkt ist .

Können Sie etwas näher darauf eingehen?

Sicher. Ihr Datensatz ist eine Sammlung von Datenpunkten . Wenn Sie ein Modell h haben , ist der Fehler der kleinsten Quadrate von h für einen einzelnen Datenpunkt{xi,yi}hh

(h(xi)yi)2

Dies ist natürlich für jeden Datenpunkt anders. Wenn wir nun einfach die Fehler zusammenfassen (und aus dem von Ihnen beschriebenen Grund mit der Hälfte multiplizieren), erhalten wir den Gesamtfehler

12i(h(xi)yi)2

Wenn wir aber durch die Anzahl der Summanden dividieren, erhalten wir den durchschnittlichen Fehler pro Datenpunkt

12mi(h(xi)yi)2

Der Nutzen des durchschnittlichen Fehlers ist , dass , wenn wir zwei Datensätze und { x ' i , y ' i } von Größen differeing , dann können wir die durchschnittlichen Fehler vergleichen , nicht aber die Gesamtfehler. Wenn der zweite Datensatz beispielsweise zehnmal so groß ist wie der erste, ist der Gesamtfehler für dasselbe Modell etwa zehnmal so groß. Auf der anderen Seite teilt der durchschnittliche Fehler die Auswirkung der Größe des Datensatzes auf, sodass wir erwarten würden, dass Modelle mit ähnlicher Leistung ähnliche durchschnittliche Fehler in verschiedenen Datensätzen aufweisen.{xi,yi}{xi,yi}


1
Ich kann dir irgendwie folgen, kannst du etwas näher darauf eingehen? Tut mir leid, ich bin neu im maschinellen Lernen!
SmallChess

@StudentT Ich habe versucht, meine Antwort zu präzisieren.
Matthew Drury

1
Gleiches gilt auch, wenn Sie beim stochastischen Gradientenabstieg, der bei der Arbeit mit großen Datensätzen am häufigsten vorkommt, zufällig mit der Mini-Batch-Größe experimentieren: Sie können den Fehler einfacher vergleichen.
Jasonszhao
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.