Was ist Regularisierung im Klartext?

Im Gegensatz zu anderen Artikeln fand ich den Eintrag wikipedia für dieses Thema für einen Nicht-Leser unlesbar -math Person (wie ich).

Ich habe die Grundidee verstanden, dass Sie Modelle mit weniger Regeln bevorzugen. Was ich nicht verstehe, ist, wie Sie von einem Regelwerk zu einem „Regularisierungswert“ gelangen, mit dem Sie die Modelle von der geringsten bis zur größten Überanpassung sortieren können.

Können Sie eine einfache Regularisierungsmethode beschreiben? ?

Ich interessiere mich für den Kontext der Analyse statistischer Handelssysteme. Es wäre großartig, wenn Sie beschreiben könnten, ob / wie ich die Regularisierung anwenden kann, um die folgenden zwei Vorhersagemodelle zu analysieren:

Modell 1 – Preis steigt, wenn:

  • exp_moving_avg ( Preis, Zeitraum = 50)> exp_moving_avg (Preis, Zeitraum = 200)

Modell 2 – Preis steigt, wenn:

  • Preis [n] < Preis [n-1] 10 Mal hintereinander
  • exp_moving_avg (Preis, Zeitraum = 200) steigt

Aber Ich bin mehr daran interessiert, ein Gefühl dafür zu bekommen, wie Sie Regularisierung durchführen. Wenn Sie also bessere Modelle zur Erklärung kennen, tun Sie dies bitte.

Kommentare

  • Ein Beispiel ist die Gratregression, bei der es sich um eine OLS mit einer Grenze für die Summe der quadratischen Koeffizienten handelt. Dies führt zu einer Verzerrung des Modells, verringert jedoch die Varianz der Koeffizienten, manchmal erheblich. LASSO ist eine andere verwandte Methode, setzt jedoch eine L1 Einschränkung der Größe der Koeffizienten. Dies hat den Vorteil, dass Koeffizienten fallengelassen werden. Dies ist nützlich für p > n Situationen In gewisser Weise bedeutet Regularisieren “ Schrumpfen “ das Modell, um eine Überanpassung zu vermeiden (und die Koeffizientenvarianz zu verringern), wodurch normalerweise die Vorhersageleistung des Modells ‚ verbessert wird.
  • @HairyBeast Sie sollten Geben Sie Ihren netten Kommentar als Antwort ein. Versuchen Sie nach Möglichkeit, ein anschauliches Beispiel hinzuzufügen, damit das OP herausfinden kann, wie es sich auf das jeweilige Problem auswirkt.
  • @HairyBeast. Ich kann also sagen, dass die Regularisierung nur eine Methode ist, um die Idee von umzusetzen Bias-Varianz-Kompromiss ?
  • Ich fand dieses Video sehr hilfreich, insbesondere bei der Visualisierung der verschiedenen Formen der Lp-Regularisierung: youtube. com / watch? v = sO4ZirJh9ds
  • Die Regularisierung dient dazu, die Überanpassung im erlernten Modell zu beheben. Versucht, in einfachem Englisch und visuell zu erklären. Es folgt der Link zum Artikel medium.com/@vamsi149/…

Antwort

In einfachen Worten bedeutet Regularisierung, die bevorzugte Ebene der Modellkomplexität zu optimieren oder auszuwählen, damit Ihre Modelle besser vorhersagen (verallgemeinern) können. Wenn Sie dies nicht tun, sind Ihre Modelle möglicherweise zu komplex und überanpassend oder zu einfach und unterangepasst, was zu schlechten Vorhersagen führt.

Wenn Sie die kleinsten Quadrate eines komplexen Modells an einen kleinen Satz von Trainingsdaten anpassen Sie werden wahrscheinlich überanpassen, dies ist die häufigste Situation. Die optimale Komplexität des Modells hängt von der Art des zu modellierenden Prozesses und der Qualität der Daten ab, sodass keine a priori korrekte Komplexität vorliegt

Um zu regulieren, benötigen Sie zwei Dinge:

  1. Eine Methode zum Testen der Vorhersagefähigkeit Ihrer Modelle, z. B. mithilfe einer Kreuzvalidierung oder einer Reihe von Validierungsdaten (Sie) kann den Anpassungsfehler dafür nicht verwenden).
  2. Ein Optimierungsparameter, mit dem Sie die Komplexität oder Glätte des Modells oder eine Auswahl von Modellen mit unterschiedlicher Komplexität / Glätte ändern können.

Grundsätzlich passen Sie den Komplexitätsparameter an (oder ändern das Modell) und ermitteln den Wert, der die besten Modellvorhersagen liefert.

Beachten Sie, dass der optimierte Regularisierungsfehler keine genaue Schätzung der Gesamtvorhersage darstellt Fehler Nach der Regularisierung müssen Sie schließlich einen zusätzlichen Validierungsdatensatz verwenden oder eine zusätzliche statistische Analyse durchführen, um einen unvoreingenommenen Vorhersagefehler zu erhalten.

Eine Alternative zur Verwendung von (Kreuz-) Validierungstests ist die Verwendung von Bayesian Priors oder andere Methoden zur Bestrafung von Komplexität oder Nichtglätte erfordern jedoch mehr statistische Raffinesse und Kenntnis der Problem- und Modellmerkmale.

Kommentare

  • +1 von mir. Ich finde es gut, dass diese Antwort am Anfang beginnt und so einfach zu verstehen ist …
  • Wird Regularisierung wirklich jemals verwendet, um die Unteranpassung zu reduzieren? Nach meiner Erfahrung wird die Regularisierung auf ein komplexes / sensitives Modell angewendet, um die Komplexität / Sensitivität zu verringern, jedoch niemals auf ein einfaches / unempfindliches Modell, um die Komplexität / Sensitivität zu erhöhen.
  • Diese Antwort ist mittlerweile ziemlich alt, aber ich gehe davon aus, dass Toby sich darauf bezog, dass Regularisierung ein prinzipieller Weg ist, um ein Modell von angemessener Komplexität angesichts der Datenmenge anzupassen. Dies ist eine Alternative sowohl zur Auswahl eines Modells von vornherein mit zu wenigen (oder falschen) Parametern als auch zur Auswahl eines Modells, das zu komplex ist und zu gut passt.

Antwort

Angenommen, Sie führen das Lernen über eine empirische Risikominimierung durch.

Genauer gesagt:

  • Sie haben Ihre nicht negative Verlustfunktion $ L (\ text {tatsächlicher Wert}, \ text {vorhergesagter Wert}) $, die charakterisiert, wie schlecht Ihre Vorhersagen sind
  • Sie möchten Ihr Modell so anpassen, dass seine Vorhersagen den Mittelwert der Verlustfunktion minimieren, berechnet nur anhand von Trainingsdaten (den einzigen Daten, die Sie haben)

Dann ist das Ziel des Lernprozesses, $ \ text {Modell} = \ text {argmin} \ sum L (\ text {aktuell}, \ text {vorhergesagt} (\ text {Modell})) $ (dies zu finden Die Methode wird als empirische Risikominimierung bezeichnet.

Wenn Sie jedoch nicht genügend Daten haben und Ihr Modell eine große Anzahl von Variablen enthält, ist es sehr wahrscheinlich, dass Sie ein solches Modell finden, das nicht nur Muster erklärt erklärt aber auch zufälliges Rauschen in Ihren Daten. Dieser Effekt wird als Überanpassung bezeichnet und führt zu einer Verschlechterung der Generalisierungsfähigkeit Ihres Modells.

Um eine Überanpassung zu vermeiden, wird ein Regularisierungsterm in die Zielfunktion eingeführt: $ \ text {Model} = \ text {argmin} \ sum L (\ text {actua l}, \ text {vorhergesagt} (\ text {Modell})) + \ lambda R (\ text {Modell}) $

Normalerweise wird dieser Begriff $ R (\ text {Modell}) $ auferlegt eine besondere Strafe für komplexe Modelle. Zum Beispiel bei Modellen mit großen Koeffizienten (L2-Regularisierung, $ R $ = Summe der Koeffizientenquadrate) oder mit vielen Koeffizienten ungleich Null (L1-Regularisierung, $ R $ = Summe der absoluten Koeffizientenwerte). Wenn wir den Entscheidungsbaum trainieren, kann $ R $ seine Tiefe sein.

Ein weiterer Gesichtspunkt ist, dass $ R $ unser Vorwissen über eine Form des besten Modells einführt („das hat es auch nicht“ große Koeffizienten „,“ es ist fast orthogonal zu $ \ bar a $ „)

Antwort

Einfach ausgedrückt, Regularisierung geht es darum, die Lösungen zu nutzen, die Sie erwarten würden. Wie Sie bereits erwähnt haben, können Sie beispielsweise von „einfachen“ Lösungen profitieren, um die Einfachheit zu definieren. Wenn Ihr Problem Regeln enthält, kann eine Definition weniger Regeln enthalten. Dies ist jedoch problemabhängig.

Sie stellen jedoch die richtige Frage. Zum Beispiel in Support Vector Machines ergibt sich diese „Einfachheit“ aus dem Aufbrechen von Bindungen in Richtung „maximaler Rand“. Dieser Rand ist Dies ist eine sehr gute geometrische Ableitung im SVM-Artikel in Wikipedia . Es stellt sich heraus, dass der Regularisierungsbegriff lautet Zumindest die „geheime Sauce“ von SVMs.

Wie machen Sie die Regularisierung? Im Allgemeinen ist dies mit der von Ihnen verwendeten Methode verbunden. Wenn Sie SVMs verwenden, führen Sie die L2-Regularisierung durch, wenn Sie diese verwenden LASSO Sie führen eine L1-Regularisierung durch (siehe, was Hairybeast sagt). Wenn Sie jedoch Ihre eigene Methode entwickeln, müssen Sie wissen, wie Sie wünschenswert sagen Lösungen von unerwünschten und haben eine Funktion, die dies quantifiziert. Am Ende haben Sie einen Kosten- und einen Regularisierungsbegriff und möchten die Summe von beiden optimieren.

Antwort

Regularisierungstechniken sind Techniken, die auf Modelle des maschinellen Lernens angewendet werden und die Entscheidungsgrenze / das angepasste Modell glatter machen. Diese Techniken tragen dazu bei, eine Überanpassung zu verhindern.

Beispiele: L1, L2, Ausfall, Gewichtsabnahme in neuronalen Netzen. Parameter $ C $ in SVMs.

Antwort

Kurz gesagt, Regularisierung ist eine Technik, um eine Überanpassung beim Training des maschinellen Lernens zu vermeiden Algorithmen: Wenn Sie einen Algorithmus mit genügend freien Parametern haben, können Sie Ihre Stichprobe sehr detailliert interpolieren. Beispiele, die außerhalb der Stichprobe liegen, folgen möglicherweise nicht dieser Detailinterpolation, da nur Rauschen oder zufällige Unregelmäßigkeiten in der Stichprobe anstelle des tatsächlichen Trends erfasst werden.

Eine Überanpassung wird vermieden, indem der Absolutwert der Parameter im Modell begrenzt wird. Dies kann durch Hinzufügen eines Terms zum Kostenfunktion, die eine Strafe basierend auf der Größe der Modellparameter auferlegt. Wenn die Größe in der L1-Norm gemessen wird, wird dies als „L1-Regularisierung“ bezeichnet (und führt normalerweise zu spärlichen Modellen). Wenn sie in der L2-Norm gemessen wird, wird dies als „L2-Regularisierung“ bezeichnet und so weiter.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.