Як регресія мосту та еластична сітка відрізняються - захоплююче питання, враховуючи схожі на них покарання. Ось один можливий підхід. Припустимо, ми вирішили проблему мостової регресії. Тоді ми можемо запитати, як би відрізнявся еластичний сітчастий розчин. Дивлячись на градієнти двох функцій втрат, можна сказати нам щось про це.
Мост регресії
Скажімо, - матриця, що містить значення незалежної змінної ( n точок x d розмірів), y - вектор, що містить значення залежної змінної, а w - ваговий вектор.Xndyw
Функція втрат карає норму ваг з величиною λ b :ℓqλb
Lb(w)=∥y−Xw∥22+λb∥w∥qq
Градієнт функції втрат:
∇wLb(w)=−2XT(y−Xw)+λbq|w|∘(q−1)sgn(w)
позначає Адамара (тобто поелементно) потужності, що дає вектор, я й елемент V з I . sgn ( w ) - функція знаку (застосовується до кожного елемента w ). Для деяких значень q градієнт може бути невизначений при нулі.v∘civcisgn(w)wq
Еластична сітка
Функція втрат:
Le(w)=∥y−Xw∥22+λ1∥w∥1+λ2∥w∥22
Це карає норму ваг величиною λ 1 та норму ℓ 2 величиною λ 2 . Папір з еластичної сітки називає мінімізацію цієї функції втрат «наївною еластичною сіткою», оскільки вона вдвічі скорочує ваги. Вони описують вдосконалену процедуру, коли ваги згодом змінюються, щоб компенсувати подвійне усадку, але я просто збираюся проаналізувати наївну версію. Це застереження, про яке слід пам’ятати.ℓ1λ1ℓ2λ2
Градієнт функції втрат:
∇wLe(w)=−2XT(y−Xw)+λ1sgn(w)+2λ2w
Градієнт не визначений при нулі, коли оскільки абсолютне значення в шкалі ℓ 1 там не диференційоване.λ1>0ℓ1
Підхід
Скажімо, ми вибираємо ваги які вирішують задачу регресії моста. Це означає, що градієнт мосту регресії в цій точці дорівнює нулю:w∗
∇wLb(w∗)=−2XT(y−Xw∗)+λbq|w∗|∘(q−1)sgn(w∗)=0⃗
Тому:
2XT(y−Xw∗)=λbq|w∗|∘(q−1)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∗|∘(q−1)sgn(w∗)
Дивлячись на градієнт пружної сітки в нам кажуть: З огляду на те, що регресія моста сходилася до ваг w ∗ , як би еластична сітка хотіла змінити ці ваги?w∗w∗
Це дає нам локальний напрямок та величину бажаної зміни, оскільки точки градієнта у напрямку найкрутішого підйому та функції втрати зменшуватимуться, коли ми рухатимемось у напрямку, протилежному градієнту. Градієнт може не вказувати безпосередньо на розчин еластичної сітки. Але, оскільки функція втрати пружної сітки є опуклою, локальний напрямок / величина дає деяку інформацію про те, як рішення еластичної сітки буде відрізнятися від мостового регресійного рішення.
Випадок 1: Перевірка обгрунтованості
λb=0,λ1=0,λ2=1ℓ2
Лівий графік: Еластичний градієнт сітки та вага регресії мосту вздовж кожного виміру
w∗w∗
Правильний сюжет: Еластичні зміни сітки до мостових регресійних ваг (2d)
w∗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[(λ1∥w∥1+λ2∥w∥22−λb∥w∥qq)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):
Gradient behavior
We can see the following:
- Let w∗j be the chosen bridge regression weight along dimension j.
- If |w∗j| <0,25, еластична сітка хоче зменшити вагу до нуля.
- Якщо | ш∗j| ≈0,25, регресія моста та еластичні сітчасті рішення однакові. Але еластична сітка хоче відсунутися, якщо вага відрізняється навіть незначно.
- Якщо 0,25 < | ш∗j| <1,31, еластична сітка хоче збільшити вагу.
- Якщо | ш∗j| ≈1,31, регресія моста та еластичні сітчасті рішення однакові. Еластична сітка хоче рухатися до цієї точки з сусідніх ваг.
- Якщо | ш∗j| >1,31, еластична сітка хоче зменшити вагу.
Результати якісно схожі, якщо ми змінимо значення q та / або λб і знайти відповідне найкраще λ1, λ2. Точки, де збігаються мостові та еластичні сітчасті рішення, незначно змінюються, але поведінка градієнтів інакше схожа.
Випадок 3: Збірна містка та еластична сітка
( q= 1,8 , λб= 1 , λ1= 0,765 , λ2= 0,225 ). У цьому режимі мостова регресія поводиться аналогічно регресії хребта. Я знайшов найкращу відповідністьλ1, λ2, але потім поміняв їх так, що еластична сітка поводиться більше як ласо (ℓ1 штраф, більший за ℓ2 штраф).
Відносно мостової регресії, еластична сітка хоче зменшити невеликі ваги до нуля і збільшити більшу вагу. У кожному квадранті є один набір ваг, де регресія мосту та рішення еластичної сітки збігаються, але еластична сітка хоче відійти від цієї точки, якщо ваги навіть незначно відрізняються.
( q= 1,2 , λб= 1 , λ1= 173 , λ2= 0,816 ). У цьому режимі мостове покарання більше схоже на аналогічнеℓ1 штраф (хоча моста регресія може не виробляти рідкісні рішення з q> 1, як згадується в еластичній чистій папері). Я знайшов найкращу відповідністьλ1, λ2, але потім поміняв їх так, що еластична сітка поводиться більше як регресія хребта (ℓ2 штраф, більший за ℓ1 штраф).
Відносно мостової регресії, еластична сітка хоче вирощувати невеликі ваги та зменшувати великі ваги. У кожному квадранті є точка, де регресія мосту та еластичні сітчасті рішення співпадають, а еластична сітка хоче рухатися до цих ваг із сусідніх точок.