Wielu autorów artykułów, które czytałem, potwierdza, że SVM to doskonała technika stawienia czoła ich problemom z regresją / klasyfikacją, wiedząc, że nie mogą uzyskać podobnych wyników za pośrednictwem NN. Często porównanie to stwierdza
SVM zamiast NN,
- Mają silną teorię założycielską
- Osiągnij globalne maksimum dzięki programowaniu kwadratowemu
- Nie ma problemu z wyborem odpowiedniej liczby parametrów
- Są mniej podatne na nadmierne dopasowanie
- Potrzebuje mniej pamięci do przechowywania modelu predykcyjnego
- Daje bardziej czytelne wyniki i interpretację geometryczną
Czy to poważnie myśl powszechnie przyjęta? Nie przytaczaj twierdzenia o braku obiadu lub podobnych stwierdzeń, moje pytanie dotyczy praktycznego wykorzystania tych technik.
Z drugiej strony, jaki abstrakcyjny problem napotkalibyście na NN?
machine-learning
svm
neural-networks
stackovergio
źródło
źródło
Odpowiedzi:
Jest to kwestia kompromisów. SVMs są w tej chwili, NNS kiedyś w . Znajdziesz rosnącą liczbę artykułów, które twierdzą, że losowe lasy, probabilistyczne modele graficzne lub nieparametryczne metody bayesowskie są w użyciu. Ktoś powinien opublikować model prognostyczny w Annals of Improbable Research na temat modeli, które będą uważane za biodra.
Powiedziawszy, że w przypadku wielu znanych trudnych nadzorowanych problemów, najlepiej działającymi pojedynczymi modelami są niektóre typy NN, niektóre typy SVM lub specyficzne dla problemu metody stochastycznego spadku gradientu realizowane za pomocą metod przetwarzania sygnałów.
Plusy NN:
Plusy SVM:
Mniej hiperparametrów. Zasadniczo maszyny SVM wymagają mniej przeszukiwania siatki, aby uzyskać dość dokładny model. SVM z jądrem RBF zwykle działa całkiem dobrze.
Gwarancja globalnego optymalnego poziomu.
Wady NN i SVM:
źródło
Z mojego doświadczenia wynika, że odpowiedź brzmi „nie”, maszyny SVM nie są zdecydowanie lepsze, a to, co działa najlepiej, zależy od rodzaju zbioru danych i względnej umiejętności operatora z każdym zestawem narzędzi. Ogólnie SVM są dobre, ponieważ algorytm treningowy jest wydajny i ma parametr regularyzacji, co zmusza do myślenia o regularyzacji i nadmiernym dopasowaniu. Istnieją jednak zestawy danych, w których MLP zapewniają znacznie lepszą wydajność niż SVM (ponieważ mogą decydować o własnej reprezentacji wewnętrznej, zamiast mieć ją wcześniej określoną przez funkcję jądra). Dobra implementacja MLP (np. NETLAB) i regularyzacja lub wczesne zatrzymanie lub wybór architektury (lub jeszcze lepiej wszystkie trzy) mogą często dawać bardzo dobre wyniki i być powtarzalne (przynajmniej pod względem wydajności).
Wybór modelu jest głównym problemem związanym z SVM, wybór jądra i optymalizacja jądra oraz parametry regularyzacji mogą często prowadzić do poważnego przeregulowania, jeśli nadmiernie zoptymalizujesz kryterium wyboru modelu. Chociaż teoria podpinania SVM jest wygodna, większość z nich dotyczy tylko stałego jądra, więc gdy tylko spróbujesz zoptymalizować parametry jądra, przestaje on obowiązywać (na przykład problem optymalizacji, który należy rozwiązać podczas dostrajania jądra jest zasadniczo niewypukły i może mieć lokalne minima).
źródło
Spróbuję wyjaśnić moją opinię, która wydawała się być podzielana przez większość moich znajomych. Mam następujące obawy dotyczące NN, które w ogóle nie dotyczą SVM:
To nie znaczy, że nie powinieneś używać NN, powinieneś po prostu używać go ostrożnie. Na przykład Convolutional NN może być bardzo dobry do przetwarzania obrazu, inne Deep NN okazały się również dobre w przypadku innych problemów.
Mam nadzieję, że to pomoże.
źródło
Używam sieci neuronowych dla większości problemów. Chodzi o to, że w większości przypadków chodzi bardziej o doświadczenie użytkownika niż o model. Oto kilka powodów, dla których lubię NN.
Przejdę przez twoje pozostałe punkty krok po kroku.
Powiedziałbym, że NN są w tym przypadku równie silne: ponieważ trenujesz je w ramach probabilistycznych. Umożliwia to stosowanie priorów i leczenia bayesowskiego (np. Z zastosowaniem technik wariacyjnych lub przybliżeń).
Dla jednego zestawu hiperparametrów. Jednak poszukiwanie dobrego hps nie jest wypukłe i nie będziesz wiedział, czy znalazłeś również globalne optimum.
W SVM musisz również wybrać hiperparametry.
Musisz przechowywać wektory pomocnicze. SVM zasadniczo nie będą tańsze do przechowywania MLP, zależy to od przypadku.
Górna warstwa MLP jest regresją logistyczną w przypadku klasyfikacji. Zatem istnieje interpretacja geometryczna (oddzielająca hiperpłaszczyznę) oraz interpretacja probabilistyczna.
źródło
W pewnym sensie te dwie szerokie kategorie technik uczenia maszynowego są powiązane. Choć nie idealne, dwa artykuły, które znalazłem pomocne w wykazaniu podobieństw w tych technikach, są poniżej
i
źródło