To wydaje się nieco zdezorientowane. Na początku zakładamy ograniczenie t aw rozwiązaniu wprowadzamy parametr γ . Zgaduję, że zamierzasz połączyć tych dwóch poprzez podwójny problem, ale może możesz wyjaśnić, czego szukasz.
kardynał
2
Częściowa odpowiedź na @cardinal, znalezienie β która minimalizuje (Y−Xβ)′(Y−Xβ) zastrzeżeniem ∥β∥1≤t jest równoważne znalezieniu β która minimalizuje (Y−Xβ)′(Y−Xβ)+γ∑j|βj|. Jest 1-1 zależność pomiędzy t i γ . Aby „łatwo” zrozumieć, dlaczego tak jest w przypadku miękkiego progu, zaleciłbym rozwiązanie drugiego wyrażenia (w moim komentarzu).
2
Kolejna uwaga, znajdując β która minimalizuje (Y−Xβ)′(Y−Xβ)+γ∑j|βj|, podziel problem na przypadki \ beta_j> 0βj>0 , βj<0 i β=0 .
2
@ kardynał Ah tak, 1-1 jest niepoprawny. Korekta: dla każdego t≥0 można znaleźć γ≥0 .
3
Dzięki za wspaniałą dyskusję! Natknąłem się na ten film na Coursera - Wyprowadzanie aktualizacji zejścia współrzędnych lasso , która jest bardzo istotna w tej dyskusji i bardzo elegancko omawia rozwiązanie. Może być pomocny dla przyszłych gości :-)
Poniżej znajduje się dość elementarny alternatywny argument.
Rozwiązanie najmniejszych kwadratów dla projektu ortogonalnego
Załóżmy, że składa się z kolumn ortogonalnych. Zatem rozwiązaniem najmniejszych kwadratów jest
X
β^LS=(XTX)−1XTy=XTy.
Niektóre równoważne problemy
Poprzez formularz Lagrangian łatwo jest zauważyć, że problemem równoważnym do rozważanego w pytaniu jest
minβ12∥y−Xβ∥22+γ∥β∥1.
Rozszerzając pierwszy termin otrzymujemy a ponieważ nie zawiera żadnych zmiennych będących przedmiotem zainteresowania, możemy je odrzucić i rozważyć kolejny równoważny problem,
12yTy−yTXβ+12βTβyTy
minβ(−yTXβ+12∥β∥2)+γ∥β∥1.
Zwracając uwagę, że , poprzedni problem można przepisać jako
β^LS=XTy
minβ∑i=1p−β^LSiβi+12β2i+γ|βi|.
Nasza funkcja celu jest teraz sumą celów, z których każdy odpowiada osobnej zmiennej , więc każdy z nich można rozwiązać indywidualnie.βi
Całość jest równa sumie jej części
Napraw niektóre . Następnie chcemy zminimalizować
i
Li=−β^LSiβi+12β2i+γ|βi|.
Jeśli , to musimy mieć ponieważ w przeciwnym razie moglibyśmy przerzucić jego znak i uzyskać niższą wartość dla funkcji celu. Podobnie, jeśli , to musimy wybrać .β^LSi>0βi≥0β^LSi<0βi≤0
Przypadek 1 : . Od ,
i różnicując to w odniesieniu do i ustawienia równego zeru , otrzymujemy i jest to wykonalne tylko wtedy, gdy prawa strona jest nieujemna, więc w tym przypadku faktycznym rozwiązaniem jest
β^LSi>0βi≥0
Li=−β^LSiβi+12β2i+γβi,
βiβi=β^LSi−γ
β^lassoi=(β^LSi−γ)+=sgn(β^LSi)(|β^LSi|−γ)+.
Przypadek 2 : . Oznacza to, że musimy mieć a więc
Rozróżniając względem i ustawiając wartość równą zero, otrzymujemy . Ale znowu, aby upewnić się, że jest to wykonalne, potrzebujemy , co osiąga się przyjmując
β^LSi≤0βi≤0
Li=−β^LSiβi+12β2i−γβi.
βiβi=β^LSi+γ=sgn(β^LSi)(|β^LSi|−γ)βi≤0
β^lassoi=sgn(β^LSi)(|β^LSi|−γ)+.
W obu przypadkach otrzymujemy pożądaną formę, więc gotowe.
Uwagi końcowe
Zauważ, że wraz ze wzrostem , każdy zniekoniecznie maleje, dlatego też . Gdy , odzyskujemy rozwiązania OLS, a dla, otrzymujemy dla wszystkich .γ|β^lassoi|∥β^lasso∥1γ=0γ>maxi|β^LSi|β^lassoi=0i
+1 Całą drugą połowę można zastąpić prostą obserwacją, że funkcją celu jest połączenie części dwóch wypukłych parabol z wierzchołkami w , gdzie znak ujemny jest brany dla a dodatni w przeciwnym razie. Formuła jest tylko fantazyjnym sposobem wyboru niższego wierzchołka. β→12β2+(±γ−β^)β±γ−β^β<0
whuber
Jeśli to możliwe, chciałbym zobaczyć pochodne przy użyciu warunków optymalności KKT. Jakie są inne sposoby uzyskania tego wyniku?
user1137731,
5
@Cardinal: dzięki za fajną pochodną. Jedna obserwacja. O ile pamiętam, macierz z kolumnami ortogonalnymi nie jest tym samym co macierz ortogonalna (inaczej ortonormalna). Następnie dla pewnej macierzy diagonalnej (niekoniecznie macierz identyczności). Przy założeniu macierzy ortogonalnej (jak w pierwotnym pytaniu) mamy i wszystko wygląda świetnie :)X′X=DDX′X=I
Oleg Melnikov
@ cardinal Nie rozumiem, dlaczego mówisz „ponieważ w przeciwnym razie moglibyśmy odwrócić jego znak i uzyskać niższą wartość dla funkcji celu”. Bierzemy pochodną funkcji celu. A co jeśli funkcja celu jest wyższa lub niższa, kogo to obchodzi. Jedyne, na czym nam zależy, to pochodne ustawione na zero, dbamy o ekstremum. To, czy jest ona wyższa czy niższa o stałą, nie wpływa na argmin.
user13985,
7
Załóżmy, że zmienne , kolumny , są znormalizowane tak, że . Jest to dla wygody później: bez tego notacja staje się coraz cięższa, ponieważ jest tylko przekątna. Dalej zakładamy, że . Jest to niezbędne założenie do utrzymania wyniku. Zdefiniuj estymator najmniejszych kwadratów . Następnie (forma Lagrange'a) estymatora lasso
xjX∈Rn×pXTX=IXTXn≥pβ^OLS=argminβ∥y−Xβ∥22
β^λ=argminβ12n∥y−Xβ∥22+λ∥β∥1=argminβ12n∥Xβ^OLS−Xβ∥22+λ∥β∥1=argminβ12n∥β^OLS−β∥22+λ∥β∥1=argminβ12∥β^OLS−β∥22+nλ∥β∥1=proxnλ∥⋅∥1(β^OLS)=Snλ(β^OLS),(defn.)(OLS is projection)(XTX=I)(algebra)(defn.)(takes some work)
\ end {align *}
gdzie jest bliższym operatorem funkcji i miękkich progów o wartośćproxffSαα.
Jest to wyprowadzenie, które pomija szczegółowe wyprowadzenie bliższego operatora, które opracowuje Kardynał, ale mam nadzieję, że wyjaśnia główne kroki, które umożliwiają zamknięcie formularza.
Odpowiedzi:
Można to zaatakować na wiele sposobów, w tym dość ekonomiczne podejście w warunkach Karusha-Kuhna-Tuckera .
Poniżej znajduje się dość elementarny alternatywny argument.
Rozwiązanie najmniejszych kwadratów dla projektu ortogonalnego
Załóżmy, że składa się z kolumn ortogonalnych. Zatem rozwiązaniem najmniejszych kwadratów jestX
Niektóre równoważne problemy
Poprzez formularz Lagrangian łatwo jest zauważyć, że problemem równoważnym do rozważanego w pytaniu jest
Rozszerzając pierwszy termin otrzymujemy a ponieważ nie zawiera żadnych zmiennych będących przedmiotem zainteresowania, możemy je odrzucić i rozważyć kolejny równoważny problem,12yTy−yTXβ+12βTβ yTy
Zwracając uwagę, że , poprzedni problem można przepisać jakoβ^LS=XTy
Nasza funkcja celu jest teraz sumą celów, z których każdy odpowiada osobnej zmiennej , więc każdy z nich można rozwiązać indywidualnie.βi
Całość jest równa sumie jej części
Napraw niektóre . Następnie chcemy zminimalizowaći
Jeśli , to musimy mieć ponieważ w przeciwnym razie moglibyśmy przerzucić jego znak i uzyskać niższą wartość dla funkcji celu. Podobnie, jeśli , to musimy wybrać .β^LSi>0 βi≥0 β^LSi<0 βi≤0
Przypadek 1 : . Od , i różnicując to w odniesieniu do i ustawienia równego zeru , otrzymujemy i jest to wykonalne tylko wtedy, gdy prawa strona jest nieujemna, więc w tym przypadku faktycznym rozwiązaniem jestβ^LSi>0 βi≥0
Przypadek 2 : . Oznacza to, że musimy mieć a więc Rozróżniając względem i ustawiając wartość równą zero, otrzymujemy . Ale znowu, aby upewnić się, że jest to wykonalne, potrzebujemy , co osiąga się przyjmującβ^LSi≤0 βi≤0
W obu przypadkach otrzymujemy pożądaną formę, więc gotowe.
Uwagi końcowe
Zauważ, że wraz ze wzrostem , każdy zniekoniecznie maleje, dlatego też . Gdy , odzyskujemy rozwiązania OLS, a dla, otrzymujemy dla wszystkich .γ |β^lassoi| ∥β^lasso∥1 γ=0 γ>maxi|β^LSi| β^lassoi=0 i
źródło
Załóżmy, że zmienne , kolumny , są znormalizowane tak, że . Jest to dla wygody później: bez tego notacja staje się coraz cięższa, ponieważ jest tylko przekątna. Dalej zakładamy, że . Jest to niezbędne założenie do utrzymania wyniku. Zdefiniuj estymator najmniejszych kwadratów . Następnie (forma Lagrange'a) estymatora lassoxj X∈Rn×p XTX=I XTX n≥p β^OLS=argminβ∥y−Xβ∥22
Jest to wyprowadzenie, które pomija szczegółowe wyprowadzenie bliższego operatora, które opracowuje Kardynał, ale mam nadzieję, że wyjaśnia główne kroki, które umożliwiają zamknięcie formularza.
źródło