Regresja logistyczna jądra a SVM


32

Jak wiadomo wszystkim, SVM może używać metody jądra do rzutowania punktów danych w wyższych przestrzeniach, aby punkty można było oddzielić przestrzenią liniową. Ale możemy również użyć regresji logistycznej, aby wybrać tę granicę w przestrzeni jądra, więc jakie są zalety SVM? Skoro SVM używa rzadkiego modelu, w którym tylko te wektory wspierające wnoszą wkład podczas przewidywania, czy to sprawia, że ​​SVM jest szybszy w przewidywaniu?


1
Slajdy Hastie są tym, czego szukasz
Yibo Yang,

Odpowiedzi:


28

KLR i SVM

  1. Skuteczność klasyfikacji jest prawie identyczna w obu przypadkach.
  2. KLR może zapewnić prawdopodobieństwa klasowe, podczas gdy SVM jest deterministycznym klasyfikatorem.
  3. KLR ma naturalne rozszerzenie na klasyfikację wielu klas, podczas gdy w SVM istnieje wiele sposobów, aby rozszerzyć ją na klasyfikację wielu klas (i nadal jest przedmiotem badań, czy istnieje wersja, która ma wyraźnie lepsze cechy niż inne).
  4. Zaskakujące lub zaskakujące, KLR ma również optymalne właściwości marginesów, które cieszą się SVM (przynajmniej na granicy)!

Patrząc na powyższe, wydaje się, że powinieneś używać regresji logistycznej jądra. Istnieją jednak pewne zalety, z których korzystają maszyny SVM

  1. O(N3)O(N2k)k
  2. Klasyfikator w SVM jest zaprojektowany tak, że jest zdefiniowany tylko w kategoriach wektorów podporowych, podczas gdy w KLR, klasyfikator jest zdefiniowany we wszystkich punktach, a nie tylko wektorach podporowych. Pozwala to SVM cieszyć się naturalnymi przyspieszeniami (pod względem wydajnego pisania kodu), które są trudne do osiągnięcia dla KLR.

7
+1 Chciałbym tylko dodać, że jeśli złożoność obliczeniowa stanowi problem, nie jest zbyt trudno skonstruować rzadki model regresji logistycznej jądra poprzez chciwy wybór wektorów podstawowych, aby zminimalizować utratę regularności na zestawie szkoleniowym lub inne podejścia. Zobacz na przykład artykuły na „Informacyjnej maszynie wektorowej”.
Dikran Marsupial

4
Również dość często, jeśli zoptymalizujesz parametry jądra i regularyzacji SVM, otrzymujesz model, w którym praktycznie wszystkie dane są wektorami pomocniczymi. Rzadkość maszyn SVM jest szczęśliwym wypadkiem, nie jest tak naprawdę dobrym punktem sprzedaży tej techniki, ponieważ generalnie można osiągnąć większą rzadkość za pomocą innych środków.
Dikran Marsupial

1
@DikranMarsupial Dzięki za wskaźnik do Informacyjnej Maszyny Wektorowej. Wiem o niektórych pracach w rzadkim KLR, ale jak dotąd nie sądzę, aby którykolwiek z nich dobrze skalował się dla dużych zestawów danych. Tak czy inaczej, wydanie dobrej implementacji rzadkiego KLR, przyjaznego dla użytkownika, takiego jak libSVM lub SVM Light, może przejść długą drogę w jego przyjęciu. Przepraszam, jeśli takie implementacje już istnieją, ale nie jestem świadomy żadnej. (EDYCJA: Myślę, że miałeś na myśli „Importuj maszynę wektorową” zamiast „Informacyjnej maszyny wektorowej”?)
TenaliRaman

2
Jeśli kończysz na wszystkich punktach danych jako wektorach pomocniczych, oznacza to, że nie pasujesz. Z RBF dzieje się to wiele razy. W rzeczywistości jedną z podstawowych rzeczy, których nauczyłem się jako użytkownik SVM, jest przede wszystkim sprawdzenie ułamka punktów wybranych jako wektory wspierające. Jeśli jest to więcej niż 30% danych, zdecydowanie odrzucam ten model.
TenaliRaman

3
Nieprawidłowe jest, że wszystkie punkty danych będące SV oznaczają nadmierne dopasowanie. Jeśli wartość C jest niewielka, wówczas zmienne luzu są mało karalne, wtedy możesz mieć bardzo nijaki klasyfikator (który popełnia wiele błędów w zestawie treningowym), a margines jest tak szeroki, że wszystkie dane są wektorami pomocniczymi. Odrzucanie modeli nierzadkich nie jest dobrą regułą, ponieważ czasami maszyna SVM o najlepszej wydajności uogólniającej jest nierzadka. Liczba SV jest górną granicą błędu pomijanego, ale często jest to bardzo stracona granica!
Dikran Marsupial

15

Oto moje zdanie na ten temat:

SVM to bardzo elegancki sposób klasyfikacji. Jest trochę ładnej teorii, trochę pięknej matematyki, dobrze się uogólniają i też nie są zbyt powolne. Spróbuj jednak użyć ich do regresji, a zrobi się bałagan.

  • Oto zasób dotyczący regresji SVM. Zwróć uwagę na dodatkowe parametry, które można zmienić i szczegółową dyskusję na temat algorytmów optymalizacji.

Gaussian Process Regression ma wiele takich samych zasad jądra i świetnie sprawdza się w regresji. Znowu bardzo elegancki i nie jest zbyt wolny. Spróbuj użyć ich do klasyfikacji, a zacznie się czuć niezręcznie.

  • Oto rozdział z książki GP na temat regresji.

  • Oto rozdział dotyczący klasyfikacji do porównania. Zauważ, że kończysz się skomplikowanymi przybliżeniami lub metodą iteracyjną.

Jedną fajną rzeczą w korzystaniu z GP do klasyfikacji jest to, że daje ona rozkład predykcyjny, a nie prostą klasyfikację tak / nie.


2
+1 GP są dobrą alternatywą dla KLR (chociaż KLR często daje lepszą wydajność, ponieważ wybór modelu oparty na dowodach może dość łatwo pójść źle, jeśli występuje błędna specyfikacja modelu) i często lepsza jest walidacja krzyżowa.
Dikran Marsupial

7

odwiedź http://www.stanford.edu/~hastie/Papers/svmtalk.pdf

Kilka wniosków: Wyniki klasyfikacji są bardzo podobne. Ma ograniczające optymalne właściwości marginesów. Zapewnia oszacowania prawdopodobieństw klasowych. Często są one bardziej przydatne niż klasyfikacje. Uogólnia się naturalnie na klasyfikację klasy M poprzez regresję wielu logitów jądra.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.