Zrozumienie regresji SVM: funkcja celu i „płaskość”

12

SVM do klasyfikacji mają dla mnie intuicyjny sens: rozumiem, jak minimalizacja daje maksymalny margines. Nie rozumiem jednak tego celu w kontekście regresji. Różne teksty ( tu i tutaj ) opisują to jako maksymalizujące „płaskość”. Dlaczego mielibyśmy to zrobić? Co w regresji odpowiada koncepcji „marginesu”?||θ||2

Oto kilka prób odpowiedzi, ale żadne z nich tak naprawdę nie pomogło mi zrozumieć.

Yang
źródło
Tak naprawdę nie jestem zwolennikiem teorii SVM, ale „płaskość” w dyskusji na temat jądra-maszyny, z którą się łączysz, wydaje się sprowadzać do: „ma małą drugą pochodną” (pomyśl o typowej motywacji dla modeli wygładzania splajnu).
conjugateprior

Odpowiedzi:

11

Jednym ze sposobów, w jaki myślę o płaskości, jest to, że sprawia, że ​​moje przewidywania są mniej wrażliwe na zakłócenia funkcji. To znaczy, jeśli buduję model w postaci którym mój wektor cech został już znormalizowany, to mniejsze wartości w oznaczają, że mój model jest mniej wrażliwy na błędy pomiaru / losowe szoki / niestacjonarność funkcji, . Biorąc pod uwagę dwa modele ( tj. Dwie możliwe wartości ), które równie dobrze wyjaśniają dane, wolę ten „bardziej płaski”.

y=xθ+ϵ,
xθxθ

Możesz także myśleć o regresji Ridge'a jako o osiągnięciu tego samego bez sztuczki jądra lub sformułowania regresji SVM „tube”.

edycja : W odpowiedzi na komentarze @ Yang, kilka dodatkowych wyjaśnień:

  1. Rozważ przypadek liniowy: . Załóżmy, że są rysowane z jakiegoś rozkładu, niezależnie od . Według kropkowej tożsamości produktu mamy , gdzie to kąt między a , który prawdopodobnie jest rozłożony w pewnym sferycznie jednorodnym rozkładzie. Teraz zauważ: „rozpiętość” ( np . Odchylenie standardowe próbki) naszych prognoz jest proporcjonalna do. Aby uzyskać dobry MSE z ukrytymi, bezszumowymi wersjami naszych obserwacji, chcemy zmniejszyć to.y=xθ+ϵxθy=||x||||θ||cosψ+ϵψθxy||θ||||θ||por. James Stein estymator .
  2. Rozważ przypadek liniowy z wieloma funkcjami. Rozważ modele , . Jeśli ma więcej zerowych elementów niż , ale o tej samej sile wyjaśniającej, wolelibyśmy to, opierając się na brzytwie Ockhama, ponieważ ma zależności od mniejszej liczby zmiennych ( tzn. „Dokonaliśmy wyboru funkcji” ustawiając niektóre elementy od do zera). Płaskość jest rodzajem ciągłej wersji tego argumentu. Jeśli każdy margines ma jednostkowe odchylenie standardowe, a ma np. 2 elementy, które są 10, a pozostałey=xθ1+ϵy=xθ2+ϵθ1θ2θ1xθ1n2są mniejsze niż 0,0001, w zależności od tolerancji hałasu, jest to efektywne „wybranie” dwóch funkcji i wyzerowanie pozostałych.
  3. Kiedy stosowana jest sztuczka jądra, wykonuje się regresję liniową w wysokiej (czasem nieskończonej) przestrzeni wektorowej. Każdy element odpowiada teraz jednej z twoich próbek , a nie cechom . Jeśli elementów jest niezerowych, a pozostałe są zerowe, cechy odpowiadające elementom niezerowym z są nazywane „wektorami pomocniczymi”. Aby zapisać model SVM, powiedzmy na dysku, potrzebujesz tylko tych wektorów funkcji , a resztę możesz wyrzucić. Teraz płaskość naprawdę ma znaczenie, ponieważ posiadanieθkθmkkθkkmałe zmniejsza wymagania dotyczące przechowywania i transmisji itp . Ponownie, w zależności od tolerancji na hałas, prawdopodobnie można wyzerować wszystkie elementy ale największej jakiegoś , po wykonaniu regresji SVM. Płaskość jest tu równoznaczna z parsymonem w odniesieniu do liczby wektorów wspierających.θll
shabbychef
źródło
1
więc jest to w zasadzie regresja z funkcją utraty „rurki” (0 kar za punkty +/- epsilonu prognozy), a nie kwadratową funkcją straty z OLS?
conjugateprior
@Conjugate Prior: tak, zwykle regresja jądra minimalizuje funkcję „epsilon-insenstive loss”, którą można traktować jako patrz np. Kernelsvm.tripod.com lub dowolny z artykuły Smoli i in . f(x)=(|x|ϵ)+
shabbychef
@shabbychef Thanks. Zawsze zastanawiałem się, co się tam dzieje.
conjugateprior
@ Conjugate Prior: Nie sądzę, że jest to właściwie funkcja pożądanej straty, ale matematyka kończy się dobrze, więc biegli z nią. Przynajmniej takie jest moje podejrzenie.
shabbychef
@shabbychef: Nadal jestem zagubiony. Rozważ przypadek jednowymiarowy: . Wszystko, co robi minimalizacja , daje bardziej poziomą linię. Wydaje się, że nie ma to nic wspólnego z drugą pochodną, ​​o której myślę, że masz na myśli („gładkość”). A jeśli moje próbki to (0,0) i (1,1e9), dlaczego wolałbym bardziej płaską linię? Tj. Powiedzmy, że moja tolerancja wynosi 1 - dlaczego wolałbym bardziej płaską linię od (0,0) do (1,1e9-1) ( ) zamiast linii przechodzącej przez (1,1e9) ( ) czy linia przechodząca przez (1,1e9 + 1) ( )? θ ε θ = 1 e 9 - 1 θ = 1 e 9 θ = 1 e 9 + 1y=θxθϵθ=1e91θ=1e9θ=1e9+1
Yang
3

shabbychef podał bardzo jasne wyjaśnienie z perspektywy złożoności modelu. Spróbuję zrozumieć ten problem z innego punktu widzenia, na wypadek, gdyby mógł komukolwiek pomóc.

Zasadniczo chcemy zmaksymalizować margines w SVC. To samo dotyczy SVR, a my chcemy zmaksymalizować błąd prognozowania ze zdefiniowaną precyzją dla lepszego uogólnienia. Jeśli zminimalizujemy błąd prognozy zamiast zmaksymalizować, wynik prognozy dla nieznanych danych jest bardziej prawdopodobny. Pomyślmy o „maksymalizacji błędu prognozowania” w przypadku jednowymiarowym.e

W przypadku jednowymiarowym naszym celem jest maksymalizacja odległości od wszystkich punktów do linii trendu wewnątrz . Zauważ, że ustawiliśmy ograniczenie precyzji na , abyśmy mogli maksymalizować odległość, a nie minimalizować . Następnie przyjrzyjmy się bardzo prostemu równaniu odległości od punktu do linii.y = ω x + b e e(xi,yi)y=ωx+bee

|ωxiyi+b|ω2+1

W tej chwili licznik jest ograniczony do . Aby zmaksymalizować odległość, staramy się zminimalizować .ωeω

Każdy może z łatwością rozszerzyć jednowymiarowy przypadek na przypadek N-wymiarowy, ponieważ równanie odległości zawsze będzie odległością euklidesową .

Dodatkowo możemy mieć recenzję problemu optymalizacji w SVR do porównania [1].

min12||ω||2
s.t.{yi<ω,xi>be<ω,xi>+byie

Dzięki.

[1] Smola, A. i B. Schölkopf. Samouczek dotyczący regresji wektora wsparcia. Statystyka i informatyka, t. 14, nr 3, sierpnia 2004, s. 199–222.

oloopy
źródło
0

Przynajmniej nie sądzę, że minimalizowanie ma coś wspólnego z marginesem koncepcji, jak w ustawieniu klasyfikacji SVM. Służy on zupełnie innemu celowi, który jest dobrze wyjaśniony przez powyższe dwa posty, tj. Zmniejszeniu złożoności modelu i uniknięciu przeregulowania.θ

Lynnjohn
źródło