Kara za pomost a regularyzacja elastycznej sieci

22

Niektóre funkcje karne i przybliżenia są dobrze zbadane, takie jak LASSO ( L1 ) i Grzbiet ( L2 ) i ich porównanie w regresji.

Czytałem o karie za most, która jest karą uogólnioną βjγ . Porównaj to z LASSO, który ma γ=1 , i Grzbietem, zγ=2 , co czyni je szczególnymi przypadkami.

Wenjiang [ 1 ] porównał karę za brydż, gdy z LASSO, ale nie mogłem znaleźć porównania z regularyzacją elastycznej siatki, kombinacją kar LASSO i Ridge, podanych jakoλ 2β 2 + λ 1β 1γ1λ2β2+λ1β1 .

To interesujące pytanie, ponieważ elastyczna siatka i ten konkretny most mają podobne formy ograniczeń. Porównaj te koła jednostek za pomocą różnych wskaźników ( to potęga odległości Minkowskiego ):p

Jednostka krąży wokół różnych mocy odległości Minkowskiego

p=1 odpowiada LASSO, na Grzbiecie, a p = 1,4 na jednym możliwym moście. Siatka elastyczna została wygenerowana z jednakowym obciążeniem karami L_1 i L_2 . Liczby te są przydatne na przykład do identyfikacji rzadkości (której mostu wyraźnie brakuje, podczas gdy elastyczna sieć chroni go przed LASSO).p = 1,4 l 1 l 2p=2p=1.4L1L2

Jak więc działa Bridge z1<γ<2 wypada w porównaniu do Elastic Net pod względem regularyzacji (innej niż rzadkość)? Szczególnie interesuje mnie nadzorowane uczenie się, więc być może dyskusja na temat wyboru / ważenia funkcji jest istotna. Argumentacja geometryczna jest również mile widziana.

Być może, co ważniejsze, czy elastyczna siatka jest zawsze bardziej pożądana w tym przypadku?


[1] Fu, WJ (1998). Regresy karane: most kontra lasso. Dziennik statystyki obliczeniowej i graficznej, 7 (3), 397-416.


EDYCJA: Jest to pytanie Jak zdecydować, który środek karny zastosować? wszelkie ogólne wytyczne lub kciuki wykluczające z podręcznika, które powierzchownie wspominają LASSO, Ridge, Bridge i Elastic Net, ale nie ma prób ich porównania.

Firebug
źródło
4
Jedynie luźno, lecz jeżeli normą kara jest oszacowanie MAP Bayesowskiego regresji z niezależnymi priors Laplace na współczynnikach i L 2 są takie same dla priors Gaussa, ciekawe czy kara Bridge równoważne Subbotin wcześniej. .. stats.stackexchange.com/questions/201038/…L1L2
Sycorax mówi Przywróć Monikę
@RichardHardy Nie ma potrzeby pisać lasso wszystkimi literami, patrz mój komentarz tutaj .
ameba mówi Przywróć Monikę
2
Należy pamiętać, że regresja mostka pozwala na co daje regresję niewypukłą. Przydają się one zwłaszcza podczas wybierania grup zmiennych towarzyszących, zwłaszcza z rzadkich danych. Lub w ogóle nie można było uprzednio zdefiniowanych grup współzmiennych, które będzie L 2 regulować tak, że określona grupa nie jest duża, a następnie L 1 współczynników jednej grupy regulować, aby osiągnąć sparsity. Tj. Jeśli napiszesz β = ( a 1 , , a k ) , gdzie a i = ( β i 1 , βγ<1L2L1β=(a1,,ak), a następnie można było wykonaćλ1β γ I +λ2Σii ν I . ai=(βi1,βi2,,,βir)λ1βγi+λ2iaiνi
Alex R.,
@AlexR. Powinienem właściwie wyjaśnić, że mam na myśli . Nie wiedziałem, że γ < 1 był również nazywany mostem. γ1γ<1
Firebug
1
@amoeba, OK, w porządku. Zwykle nie edytuję, czy użycie wielkich liter jest spójne w całym poście, ale tym razem były to zarówno „LASSO”, jak i „lasso”, więc po prostu wybrałem „LASSO”, który był pierwszą formą w poście. Zawsze myślę o akronimie, dlatego użyłem wszystkich wielkich liter; ale jak mówisz, proste „lasso” może być lepsze.
Richard Hardy,

Odpowiedzi:

20

Różnice między regresją mostową a elastyczną siatką to fascynujące pytanie, biorąc pod uwagę ich podobnie wyglądające kary. Oto jedno możliwe podejście. Załóżmy, że rozwiązujemy problem regresji pomostowej. Możemy następnie zapytać, jak różni się rozwiązanie elastycznej siatki. Patrząc na gradienty dwóch funkcji strat, możemy powiedzieć coś na ten temat.

Regresja pomostowa

Powiedzmy jest macierzą zawierającą wartości zmiennej niezależnej ( n punktów x d wymiary), Y jest wektor zawierający wartości zmiennej zależnej i W jest wektorem wagi.Xndyw

Funkcja strat karze normę odważników o wielkości λ b :qλb

Lb(w)=yXw22+λbwqq

Gradient funkcji straty wynosi:

wLb(w)=2XT(yXw)+λbq|w|(q1)sgn(w)

vc denotes the Hadamard (i.e. element-wise) power, which gives a vector whose ith element is vic. sgn(w) is the sign function (applied to each element of w). The gradient may be undefined at zero for some values of q.

Elastic net

The loss function is:

Le(w)=yXw22+λ1w1+λ2w22

This penalizes the 1 norm of the weights with magnitude λ1 and the 2 norm with magnitude λ2. The elastic net paper calls minimizing this loss function the 'naive elastic net' because it doubly shrinks the weights. They describe an improved procedure where the weights are later rescaled to compensate for the double shrinkage, but I'm just going to analyze the naive version. That's a caveat to keep in mind.

The gradient of the loss function is:

wLe(w)=2XT(yXw)+λ1sgn(w)+2λ2w

The gradient is undefined at zero when λ1>0 because the absolute value in the 1 penalty isn't differentiable there.

Approach

Say we select weights w that solve the bridge regression problem. This means the the bridge regression gradient is zero at this point:

wLb(w)=2XT(yXw)+λbq|w|(q1)sgn(w)=0

Therefore:

2XT(yXw)=λbq|w|(q1)sgn(w)

We can substitute this into the elastic net gradient, to get an expression for the elastic net gradient at w. Fortunately, it no longer depends directly on the data:

wLe(w)=λ1sgn(w)+2λ2wλbq|w|(q1)sgn(w)

Looking at the elastic net gradient at w tells us: Given that bridge regression has converged to weights w, how would the elastic net want to change these weights?

It gives us the local direction and magnitude of the desired change, because the gradient points in the direction of steepest ascent and the loss function will decrease as we move in the direction opposite to the gradient. The gradient might not point directly toward the elastic net solution. But, because the elastic net loss function is convex, the local direction/magnitude gives some information about how the elastic net solution will differ from the bridge regression solution.

Case 1: Sanity check

(λb=0,λ1=0,λ2=1). Bridge regression in this case is equivalent to ordinary least squares (OLS), because the penalty magnitude is zero. The elastic net is equivalent ridge regression, because only the 2 norm is penalized. The following plots show different bridge regression solutions and how the elastic net gradient behaves for each.

enter image description here

Left plot: Elastic net gradient vs. bridge regression weight along each dimension

The x axis represents one component of a set of weights w selected by bridge regression. The y axis represents the corresponding component of the elastic net gradient, evaluated at w. Note that the weights are multidimensional, but we're just looking at the weights/gradient along a single dimension.

Right plot: Elastic net changes to bridge regression weights (2d)

Each point represents a set of 2d weights w selected by bridge regression. For each choice of w, a vector is plotted pointing in the direction opposite the elastic net gradient, with magnitude proportional to that of the gradient. That is, the plotted vectors show how the elastic net wants to change the bridge regression solution.

These plots show that, compared to bridge regression (OLS in this case), elastic net (ridge regression in this case) wants to shrink weights toward zero. The desired amount of shrinkage increases with the magnitude of the weights. If the weights are zero, the solutions are the same. The interpretation is that we want to move in the direction opposite to the gradient to reduce the loss function. For example, say bridge regression converged to a positive value for one of the weights. The elastic net gradient is positive at this point, so elastic net wants to decrease this weight. If using gradient descent, we'd take steps proportional in size to the gradient (of course, we can't technically use gradient descent to solve the elastic net because of the non-differentiability at zero, but subgradient descent would give numerically similar results).

Case 2: Matching bridge & elastic net

(q=1.4,λb=1,λ1=0.629,λ2=0.355). I chose the bridge penalty parameters to match the example from the question. I chose the elastic net parameters to give the best matching elastic net penalty. Here, best-matching means, given a particular distribution of weights, we find the elastic net penalty parameters that minimize the expected squared difference between the bridge and elastic net penalties:

minλ1,λ2E[(λ1w1+λ2w22λbwqq)2]

Here, I considered weights with all entries drawn i.i.d. from the uniform distribution on [2,2] (i.e. within a hypercube centered at the origin). The best-matching elastic net parameters were similar for 2 to 1000 dimensions. Although they don't appear to be sensitive to the dimensionality, the best-matching parameters do depend on the scale of the distribution.

Penalty surface

Here's a contour plot of the total penalty imposed by bridge regression (q=1.4,λb=100) and best-matching elastic net (λ1=0.629,λ2=0.355) as a function of the weights (for the 2d case):

enter image description here

Gradient behavior

enter image description here

We can see the following:

  • Let wj be the chosen bridge regression weight along dimension j.
  • If |wj|<0.25, elastic net wants to shrink the weight toward zero.
  • If |wj|0.25, the bridge regression and elastic net solutions are the same. But, elastic net wants to move away if the weight differs even slightly.
  • If 0.25<|wj|<1.31, elastic net wants to grow the weight.
  • If |wj|1.31, the bridge regression and elastic net solutions are the same. Elastic net wants to move toward this point from nearby weights.
  • If |wj|>1.31, elastic net wants to shrink the weight.

The results are qualitatively similar if we change the the value of q and/or λb and find the corresponding best λ1,λ2. The points where the bridge and elastic net solutions coincide change slightly, but the behavior of the gradients are otherwise similar.

Case 3: Mismatched bridge & elastic net

(q=1.8,λb=1,λ1=0.765,λ2=0.225). In this regime, bridge regression behaves similar to ridge regression. I found the best-matching λ1,λ2, but then swapped them so that the elastic net behaves more like lasso (1 penalty greater than 2 penalty).

enter image description here

Relative to bridge regression, elastic net wants to shrink small weights toward zero and increase larger weights. There's a single set of weights in each quadrant where the bridge regression and elastic net solutions coincide, but elastic net wants to move away from this point if the weights differ even slightly.

(q=1.2,λb=1,λ1=173,λ2=0.816). In this regime, the bridge penalty is more similar to an 1 penalty (although bridge regression may not produce sparse solutions with q>1, as mentioned in the elastic net paper). I found the best-matching λ1,λ2, but then swapped them so that the elastic net behaves more like ridge regression (2 penalty greater than 1 penalty).

enter image description here

Relative to bridge regression, elastic net wants to grow small weights and shrink larger weights. There's a point in each quadrant where the bridge regression and elastic net solutions coincide, and elastic net wants to move toward these weights from neighboring points.

user20160
źródło
3
(+1) Great answer, thanks for the effort! Could you address one last thing: "is the Elastic Net always more desirable?". No need to be lengthy;
Firebug
6
Bridge regression and elastic net are equivalent to MAP estimation with different kinds of priors on the weights. From this perspective, it seems like the better choice would be the prior that better matches the data-generating process, and that neither method could be better in all cases.
user20160
2
+6, very nice answer. Regarding your above comment: what prior yields bridge regression? I know that Gaussian prior corresponds to ridge and Laplace prior to lasso. Can one somehow combine these priors to get something that corresponds to elastic net?
amoeba says Reinstate Monica
2
@amoeba The question wasn't directed to me, I know, but as GeneralAbrial said in the question, bridge probably corresponds to a Subbotin prior. Elastic net, as expected, is between Gaussian and Laplacian priors. See Li, Q., & Lin, N. (2010). The Bayesian elastic net. Bayesian Analysis, 5(1), 151-170. and Zou, H., & Hastie, T. (2005). Regularization and variable selection via the elastic net. Journal of the Royal Statistical Society: Series B (Statistical Methodology), 67(2), 301-320. for a brief comparison between elastic net and bridge regression.
Firebug
2
@amoeba thanks for the bounty and drawing attention to this post, likewise for the other post about PCA vs. nonlinear dimensionality reduction. It's admirable that you use your rep to promote others' questions/answers, and it makes me glad if this post is at least of some small value to people. Others, thanks too for the kind words.
user20160,