Inwiefern sich Brückenregression und elastisches Netz unterscheiden, ist angesichts ihrer ähnlich aussehenden Strafen eine faszinierende Frage. Hier ist ein möglicher Ansatz. Angenommen, wir lösen das Brückenregressionsproblem. Wir können dann fragen, wie sich die elastische Netzlösung unterscheiden würde. Ein Blick auf die Gradienten der beiden Verlustfunktionen kann dazu etwas sagen.
Brückenregression
Angenommen, ist eine Matrix, die Werte der unabhängigen Variablen enthält ( Punkte x Dimensionen), ist ein Vektor, der Werte der abhängigen Variablen enthält, und ist der Gewichtsvektor.n dXndwyw
Die Verlustfunktion bestraft die Norm der Gewichte mit der Größe :λ bℓqλb
Lb(w)=∥y−Xw∥22+λb∥w∥qq
Der Gradient der Verlustfunktion ist:
∇wLb(w)=−2XT(y−Xw)+λbq|w|∘(q−1)sgn(w)
i v c i sgn ( w ) w qv∘c bezeichnet die Hadamard-Potenz (dh die elementweise Potenz), die einen Vektor ergibt, dessen tes Element . ist die Vorzeichenfunktion (angewendet auf jedes Element von ). Der Gradient kann für einige Werte von bei Null undefiniert sein .ivcisgn(w)wq
Elastisches Netz
Die Verlustfunktion ist:
Le(w)=∥y−Xw∥22+λ1∥w∥1+λ2∥w∥22
Dies bestraft die Norm der Gewichte mit der Größe und die Norm mit der Größe . Das elastische Netzpapier nennt die Minimierung dieser Verlustfunktion das "naive elastische Netz", weil es die Gewichte doppelt schrumpft. Sie beschreiben ein verbessertes Verfahren, bei dem die Gewichte später neu skaliert werden, um die doppelte Schrumpfung zu kompensieren, aber ich werde nur die naive Version analysieren. Das ist ein Vorbehalt zu beachten.λ 1 ≤ 2 λ 2ℓ1λ1ℓ2λ2
Der Gradient der Verlustfunktion ist:
∇wLe(w)=−2XT(y−Xw)+λ1sgn(w)+2λ2w
Bei der Gradient bei Null undefiniert, da der Absolutwert in der Strafe dort nicht differenzierbar ist.ℓ 1λ1>0ℓ1
Ansatz
Nehmen wir an, wir wählen Gewichte , die das Brückenregressionsproblem lösen. Dies bedeutet, dass der Brückenregressionsgradient an diesem Punkt Null ist:w∗
∇wLb(w∗)=−2XT(y−Xw∗)+λbq|w∗|∘(q−1)sgn(w∗)=0⃗
Deshalb:
2XT(y−Xw∗)=λbq|w∗|∘(q−1)sgn(w∗)
Wir können dies in den elastischen Nettogradienten einsetzen, um einen Ausdruck für den elastischen Nettogradienten bei . Zum Glück kommt es nicht mehr direkt auf die Daten an:w∗
∇wLe(w∗)=λ1sgn(w∗)+2λ2w∗−λbq|w∗|∘(q−1)sgn(w∗)
Wenn wir den Gradienten des elastischen Netzes bei , sehen wir, dass die Brückenregression gegen die Gewichte konvergiert hat. Wie würde das elastische Netz diese Gewichte ändern wollen?w∗w∗
Sie gibt uns die lokale Richtung und Größe der gewünschten Änderung an, da der Gradient in Richtung des steilsten Aufstiegs zeigt und die Verlustfunktion abnimmt, wenn wir uns in die dem Gradienten entgegengesetzte Richtung bewegen. Der Gradient zeigt möglicherweise nicht direkt auf die elastische Netzlösung. Da die elastische Nettoverlustfunktion jedoch konvex ist, gibt die lokale Richtung / Größe einige Informationen darüber, wie sich die elastische Nettolösung von der Brückenregressionslösung unterscheidet.
Fall 1: Überprüfung der geistigen Gesundheit
( ). In diesem Fall entspricht die Brückenregression gewöhnlichen kleinsten Quadraten (OLS), da die Strafgröße Null ist. Das elastische Netz ist eine äquivalente Gratregression, da nur die Norm bestraft wird. Die folgenden Diagramme zeigen verschiedene Brückenregressionslösungen und wie sich der elastische Netzgradient für jede dieser Lösungen verhält.λb=0,λ1=0,λ2=1ℓ2
Linke Darstellung: Elastischer Netzgradient gegen Brückenregressionsgewicht entlang jeder Dimension
Die x-Achse repräsentiert eine Komponente einer Menge von Gewichten die durch Brückenregression ausgewählt wurden. Die y-Achse stellt die entsprechende Komponente des elastischen Nettogradienten dar, der bei ausgewertet wird . Beachten Sie, dass die Gewichte mehrdimensional sind, aber wir betrachten nur die Gewichte / Verläufe entlang einer einzelnen Dimension.w∗w∗
Rechtes Diagramm: Elastische Nettoveränderungen der Brückenregressionsgewichte (2d)
Jeder Punkt repräsentiert eine Menge von 2D-Gewichten die durch Brückenregression ausgewählt wurden. Für jede Wahl von wird ein Vektor aufgetragen, der in die dem elastischen Nettogradienten entgegengesetzte Richtung zeigt, wobei die Größe proportional zu der des Gradienten ist. Das heißt, die eingezeichneten Vektoren zeigen, wie das elastische Netz die Brückenregressionslösung ändern möchte.w∗w∗
Diese Diagramme zeigen, dass das elastische Netz (in diesem Fall die Gratregression) im Vergleich zur Brückenregression (in diesem Fall OLS) die Gewichte gegen Null schrumpfen möchte. Der gewünschte Schrumpfbetrag nimmt mit der Größe der Gewichte zu. Wenn die Gewichte Null sind, sind die Lösungen gleich. Die Interpretation ist, dass wir uns in die dem Gradienten entgegengesetzte Richtung bewegen wollen, um die Verlustfunktion zu reduzieren. Angenommen, die Brückenregression hat sich einem positiven Wert für eine der Gewichte angenähert. Der Gradient des elastischen Netzes ist an dieser Stelle positiv, daher möchte das elastische Netz dieses Gewicht verringern. Wenn Sie den Gradientenabstieg verwenden, gehen Sie proportional zum Gradienten vor (technisch können wir den Gradientenabstieg natürlich nicht verwenden, um das elastische Netz zu lösen, da bei Null keine Differenzierbarkeit vorliegt.
Fall 2: Passende Brücke & elastisches Netz
( ). Ich habe die Bridge-Penalty-Parameter so gewählt, dass sie mit dem Beispiel aus der Frage übereinstimmen. Ich habe die Parameter für das elastische Netz gewählt, um die bestmögliche Strafe für das elastische Netz zu erhalten. Hier finden wir die Parameter für die elastische Nettostrafung, die bei einer bestimmten Verteilung der Gewichte die erwartete quadratische Differenz zwischen der Brücke und den elastischen Nettostrafungen minimieren:q=1.4,λb=1,λ1=0.629,λ2=0.355
minλ1,λ2E[(λ1∥w∥1+λ2∥w∥22−λb∥w∥qq)2]
Hier habe ich Gewichtungen berücksichtigt, bei denen alle Einträge aus der Gleichverteilung auf (dh innerhalb eines am Ursprung zentrierten Hyperwürfels) stammen. Die am besten passenden elastischen Netzparameter waren für 2 bis 1000 Dimensionen ähnlich. Obwohl sie nicht empfindlich auf die Dimensionalität zu reagieren scheinen, hängen die am besten passenden Parameter vom Maßstab der Verteilung ab.[−2,2]
Strafraum
Hier ist eine der Gesamtstrafe, die durch die Brückenregression ( ) und das am besten passende elastische Netz ( ) als Funktion der Gewichte (für den 2d-Fall) auferlegt wurde ):q=1.4,λb=100λ1=0.629,λ2=0.355
Gradientenverhalten
Wir können folgendes sehen:
- Sei das gewählte Brückenregressionsgewicht entlang der Dimension .w∗jj
- Wenn , möchte das elastische Netz das Gewicht gegen Null schrumpfen.|w∗j|<0.25
- Wenn , die Brückenregression und die elastischen Netzlösungen sind gleich. Das elastische Netz will sich jedoch entfernen, wenn sich das Gewicht nur geringfügig unterscheidet.|w∗j|≈0.25
- Wenn , elastisches Netz will das Gewicht erhöhen.0.25<|w∗j|<1.31
- Wenn sind die Brückenregression und die elastischen Netzlösungen gleich. Das elastische Netz möchte sich von nahegelegenen Gewichten auf diesen Punkt zubewegen.|w∗j|≈1.31
- Wenn , elastisches Netz will das Gewicht schrumpfen.|w∗j|>1.31
Die Ergebnisse sind qualitativ ähnlich, wenn wir den Wert von und / oder und das entsprechende beste . Die Punkte, an denen die Brücken- und elastischen Netzlösungen zusammenfallen, ändern sich geringfügig, aber das Verhalten der Gradienten ist ansonsten ähnlich.qλbλ1,λ2
Fall 3: Nicht übereinstimmende Brücke und elastisches Netz
λ 1 , λ 2 l 1 l 2(q=1.8,λb=1,λ1=0.765,λ2=0.225) . In diesem Regime verhält sich die Brückenregression ähnlich wie die Gratregression. Ich habe das am besten passende , aber dann vertauscht, sodass sich das elastische Netz eher wie ein Lasso verhält ( Strafe größer als Strafe).λ1,λ2ℓ1ℓ2
Im Verhältnis zur Brückenregression möchte das elastische Netz kleine Gewichte gegen Null schrumpfen und größere Gewichte erhöhen. In jedem Quadranten gibt es einen Satz von Gewichten, bei denen die Brückenregression und die elastischen Netzlösungen zusammenfallen. Das elastische Netz möchte sich jedoch von diesem Punkt entfernen, wenn sich die Gewichte nur geringfügig unterscheiden.
≤ 1 q > 1 λ 1 , λ 2 ≤ 2 ≤ 1(q=1.2,λb=1,λ1=173,λ2=0.816) . In diesem Regime ist die Brückenstrafe einer Strafe ähnlicher (obwohl die Brückenregression möglicherweise keine spärlichen Lösungen mit , wie im elastischen erwähnt). Ich habe das am besten passende , aber dann vertauscht, sodass sich das elastische Netz eher wie eine verhält ( Strafe größer als Strafe).ℓ1q>1λ1,λ2ℓ2ℓ1
Im Verhältnis zur Brückenregression möchte das elastische Netz kleine Gewichte wachsen lassen und größere Gewichte schrumpfen lassen. In jedem Quadranten gibt es einen Punkt, an dem die Brückenregression und die elastischen Netzlösungen zusammenfallen, und das elastische Netz möchte sich von benachbarten Punkten auf diese Gewichte zubewegen.