In den Vorlesungsnotizen der dritten Woche der Coursera Machine Learning-Klasse von Andrew Ng wird der Kostenfunktion ein Begriff hinzugefügt, um die Regularisierung zu implementieren:
In den Vorlesungsunterlagen heißt es:
Wir könnten auch alle unsere Theta-Parameter in einer einzigen Summe regulieren:
wird später auf den Regularisierungsterm neuronaler Netze angewendet :
Denken Sie daran, dass die Kostenfunktion für die regulierte logistische Regression war:
Für neuronale Netze wird es etwas komplizierter sein:
- Warum wird hier die konstante Hälfte verwendet? Damit es in der Ableitung aufgehoben wird ?
- Warum die Aufteilung nach Trainingsbeispielen? Wie wirkt sich die Anzahl der Trainingsbeispiele auf die Dinge aus?
regularization
Tom Hale
quelle
quelle
Antworten:
Angenommen, Sie haben 10 Beispiele und teilen die L2-Regularisierungskosten nicht durch die Anzahl der Beispiele m . Dann beträgt eine "Dominanz" der L2-Regularisierungskosten im Vergleich zu Kreuzentropiekosten 10: 1, da jedes Trainingsbeispiel proportional zu 1 / m = 1/10 zu den Gesamtkosten beitragen kann .
Wenn Sie mehr Beispiele haben, sagen wir 100, dann beträgt die "Dominanz" der L2-Regularisierungskosten ungefähr 100: 1, sodass Sie ein λ entsprechend verringern müssen , was unpraktisch ist. Es ist besser, λ unabhängig von einer Chargengröße konstant zu halten.
Update: Um dieses Argument zu verstärken, habe ich ein Jupyter-Notizbuch erstellt .
quelle
Die Verlustfunktion auf dem Trainingssatz ist im Allgemeinen eine Summe über die Muster, aus denen der Trainingssatz besteht. Wenn der Trainingssatz größer wird, skaliert der erste Term im Wesentlichen linear mit . Wir können den Bereich verengen für seraching für einen guten Wert von ein gutes Stück , wenn wir zuerst die Regularisierungsterm durch dividieren die Abhängigkeit der zum Ausgleich auf . Die 2 liegt natürlich tatsächlich im Nenner, um die Ableitungen zu vereinfachen, die für den Opimierungsalgorithmus benötigt werden, der zur Bestimmung des optimalen .m λ m J ( θ ) m θJ.( θ ) m λ m J.( θ ) m θ
quelle
Ich habe mich bei diesem Kurs über genau das Gleiche gewundert und am Ende ein bisschen nachgeforscht. Ich werde hier eine kurze Antwort geben, aber Sie können eine detailliertere Übersicht in einem Blog-Beitrag lesen, den ich darüber geschrieben habe .
Ich glaube, dass zumindest ein Teil des Grundes für diese Skalierungskoeffizienten darin besteht, dass die L²-Regularisierung wahrscheinlich durch die Einführung des verwandten, aber nicht identischen Konzepts des Gewichtsabfalls in das Feld des tiefen Lernens eingetreten ist.
Der Faktor 0,5 ist dann da, um einen schönen Nur-λ-Koeffizienten für den Gewichtsabfall im Gradienten und die Skalierung um m zu erhalten. Nun , es gibt mindestens 5 verschiedene Motivationen, die ich gefunden oder mir ausgedacht habe:
grez
zeigt, dass dies die Leistung in der Praxis verbessert.quelle
Ich war auch verwirrt darüber, aber dann in einem Vortrag zum Deeplearning.ai Andrew schlägt vor, dass dies nur eine Skalierungskonstante ist:
http://www.youtube.com/watch?v=6g0t3Phly2M&t=2m50s
Vielleicht gibt es einen tieferen Grund für die Verwendung von 1 / 2m, aber ich vermute, es ist einfach ein Hyperparameter.
quelle