Różnica między regresją pierwotną, podwójną i regresją jądra

18

Jaka jest różnica między regresją pierwotną , podwójną i regresją jądra ? Ludzie używają wszystkich trzech, a ze względu na odmienną notację, którą wszyscy używają z różnych źródeł, trudno mi się naśladować.

Więc czy ktoś może mi powiedzieć prostymi słowami, jaka jest różnica między tymi trzema? Ponadto, jakie mogą być zalety lub wady każdego z nich i jaka może być ich złożoność?

Jim Blum
źródło

Odpowiedzi:

39

Krótka odpowiedź: bez różnicy między Primal i Dual - chodzi tylko o sposób dotarcia do rozwiązania. Regresja grzbietu jądra jest zasadniczo taka sama jak zwykła regresja grzbietu, ale wykorzystuje sztuczkę jądra, aby przejść nieliniowo.

Regresja liniowa

Po pierwsze, zwykła regresja liniowa metodą najmniejszych kwadratów próbuje dopasować linię prostą do zbioru punktów danych w taki sposób, aby suma błędów kwadratu była minimalna.

wprowadź opis zdjęcia tutaj

Parametryzujemy linię najlepszego dopasowania za pomocą w dla każdego punktu danych (xi,yi) chcemy, aby wTxiyi . Niech ei=yiwTxi będzie błędem - odległość między wartościami przewidywanymi i prawdziwymi. Naszym celem jest więc zminimalizowanie sumy błędów do kwadratu ei2=e2=Xwy2gdzie X=[x1x2xn]- macierz danych z każdegoxijest do tego rzędu, ay=(y1, ... ,yn)wektora ze wszystkimiyi„s.

Zatem celem jest , a rozwiązaniem jest (znane jako „równanie normalne”).minwXwy2w=(XTX)1XTy

Dla nowego niewidzialnego punktu danych przewidujemy jego wartość docelową jako .xy^y^=wTx

Regresja Ridge

Kiedy istnieje wiele skorelowanych zmiennych w modelach regresji liniowej, współczynniki mogą stać się słabo określone i mieć dużą wariancję. Jednym z rozwiązań tego problemu jest ograniczenie ciężary , żeby nie przekroczyć jakąś budżetową . Jest to równoważne z zastosowaniem -regulalizacji, znanej również jako „rozpad masy”: zmniejszy wariancję kosztem czasami utraty poprawnych wyników (tj. Poprzez wprowadzenie pewnej tendencyjności).wwCL2

Cel staje się teraz , gdzie jest parametrem regularyzacji. Przechodząc przez matematykę, otrzymujemy następujące rozwiązanie: . Jest bardzo podobny do zwykłej regresji liniowej, ale tutaj dodajemy do każdego elementu diagonalnego .minwXwy2+λw2λw=(XTX+λI)1XTyλXTX

Zauważ, że możemy ponownie napisać jako (szczegóły tutaj ). Dla nowego niewidzialnego punktu danych przewidujemy jego wartość docelową jako . Niech . Następnie .ww=XT(XXT+λI)1yxy^y^=xTw=xTXT(XXT+λI)1yα=(XXT+λI)1yY = x T X t α = n Σ i = 1 α ix t x iy^=xTXTα=i=1nαixTxi

Regresja Ridge Dual Form

Możemy inaczej spojrzeć na nasz cel - i zdefiniować następujący problem programu kwadratowego:

mine,wi=1nei2 st dla i .ei=yiwTxii=1..nw2C

Jest to ten sam cel, ale wyrażony nieco inaczej, a tutaj ograniczenie wielkości jest wyraźne. Aby go rozwiązać, definiujemy Lagrangian - jest to pierwotna postać zawierająca zmienne pierwotne i . Następnie optymalizujemy go wrt i . Aby uzyskać podwójne sformułowanie, umieściliśmy znalezione i powrotem w .wLp(w,e;C)weewewLp(w,e;C)

Tak więc . Biorąc pochodne wrt i , otrzymujemy i . Pozwalając i umieszczenie i tylnej do , otrzymujemy podwójny LagrangianLp(w,e;C)=e2+βT(yXwe)λ(w2C)wee=12βw=12λXTβα=12λβewLp(w,e;C)Ld(α,λ;C)=λ2α2+2λαTyλXTαλC . Jeśli weźmiemy pochodną wrt , otrzymamy - taka sama odpowiedź, jak w przypadku zwykłej regresji Kernel Ridge. Nie ma potrzeby pobierania pochodnej wrt - zależy to od , który jest parametrem regularyzacji - i sprawia, że parametr regularyzacji.αα=(XXTλI)1yλCλ

Następnie umieść w pierwotnym rozwiązaniu formy dla , i uzyskaj . Zatem podwójna forma daje takie samo rozwiązanie jak zwykle regresja Ridge'a i jest to tylko inny sposób na znalezienie tego samego rozwiązania.αww=12λXTβ=XTα

Regresja grzbietu jądra

Jądra służą do obliczania iloczynu wewnętrznego dwóch wektorów w pewnej przestrzeni cech, nawet jej nie odwiedzając. Możemy wyświetlić jądro jako , chociaż nie wiemy, co to jest - wiemy tylko, że istnieje. Istnieje wiele jąder, np. RBF, Polynonial itp.kk(x1,x2)=ϕ(x1)Tϕ(x2)ϕ()

Możemy użyć jąder, aby nasza regresja Ridge'a była nieliniowa. Załóżmy, że mamy jądro . Niech będzie macierzą, w której każdy wiersz to , tj.k(x1,x2)=ϕ(x1)Tϕ(x2)Φ(X)ϕ(xi)Φ(X)=[ϕ(x1)ϕ(x2)ϕ(xn)]

Teraz właśnie się roztwór do Ridge regresji i zastąpienie co o : . Dla nowego niewidzialnego punktu danych przewidujemy jego wartość docelową jako .XΦ(X)w=Φ(X)T(Φ(X)Φ(X)T+λI)1yxy^y^=ϕ(x)TΦ(X)T(Φ(X)Φ(X)T+λI)1y

Najpierw możemy zastąpić macierzą , obliczoną jako . Następnie to . Więc tutaj udało nam się wyrazić każdy produkt kropkowy problemu w postaci jąder.Φ(X)Φ(X)TK(K)ij=k(xi,xj)ϕ(x)TΦ(X)Ti=1nϕ(x)Tϕ(xi)=i=1nk(x,xj)

Wreszcie, pozwalając (jak poprzednio), otrzymujemyα=(K+λI)1yy^=i=1nαik(x,xj)

Bibliografia

Aleksiej Grigoriew
źródło
1
Jestem pod wrażeniem dobrze zorganizowanej dyskusji. Jednak moje wczesne odniesienie do „wartości odstających” pomyliło mnie. Wydaje się, że ciężary odnoszą się do zmiennych zamiast przypadkach, tak jak dokładnie będzie grzbiet regresji pomaga sprawić, że rozwiązanie odporne na odległych przypadkach , zgodnie z sugestią na ilustracji? w
whuber
Doskonała odpowiedź, Alexey (choć nie nazwałbym tego „prostymi słowami”)! +1 bez zadawania pytań. Lubisz pisać w LaTeX, prawda?
Aleksandr Blekh
2
Podejrzewam, że mylisz tutaj kilka podstawowych rzeczy. AFAIK, regresja kalenicy nie jest ani odpowiedzią, ani sposobem na radzenie sobie z „głośnymi obserwacjami”. OLS już to robi. Regresja grzbietowa jest narzędziem służącym do radzenia sobie z prawie kolinearnością między regresorami. Zjawiska te całkowicie różnią się od szumu w zmiennej zależnej.
whuber
1
+1 whuber. Alexey masz rację, to jest zbyt mocne - to zbyt wiele parametrów dla dostępnych danych - naprawdę nie jest to hałas. [i dodaj wystarczającą liczbę wymiarów dla ustalonej wielkości próbki, a „dowolny” zestaw danych stanie się współliniowy]. Tak więc lepszym obrazem 2D dla RR byłyby wszystkie punkty skupione wokół (0,1) z jednym punktem na (1,0) [„uzasadniającym” parametr nachylenia]. Patrz ESL rys. 3.9, strona 67 web.stanford.edu/~hastie/local.ftp/Springer/OLD/… . spójrz także na funkcję kosztu pierwotnego: aby zwiększyć wagę o 1 jednostkę, błąd musi się zmniejszyć o jednostkę1/λ
seanv507
1
Myślę, że miałeś na myśli dodanie do elementów ukośnych nie odejmowanie (?) W sekcji regresji grzbietu. Zastosowałem edycję. λXTX
Heteroskedastic Jim