W przypadku danych liniowych nie jest to oczywiście pomocne, ale w przypadku danych nieliniowych wydaje się to zawsze przydatne. Korzystanie z klasyfikatorów liniowych jest znacznie łatwiejsze niż nieliniowe pod względem czasu szkolenia i skalowalności.
@BartoszKP już wyjaśnił, dlaczego sztuczka jądra jest przydatna. Aby w pełni odpowiedzieć na twoje pytanie, chciałbym jednak zauważyć, że jądro nie jest jedyną opcją do radzenia sobie z danymi, które nie są liniowo rozdzielne.
Istnieją co najmniej trzy dobre, wspólne alternatywy dla delinearyzacji modelu:
- Metody oparte na sieci neutalnej, w których dodajesz jedną (lub więcej) warstw jednostek przetwarzających, zdolnych do przekształcenia danych w przypadek rozdzielany liniowo. W najprostszym przypadku jest to warstwa oparta na sigmoidach, co dodaje procesowi nieliniowości. Po losowym zainicjowaniu otrzymują aktualizacje podczas optymalizacji gradientu górnej warstwy (co w rzeczywistości rozwiązuje problem liniowy).
- W szczególności - można tu zastosować techniki głębokiego uczenia się do przygotowania danych do dalszej liniowej klasyfikacji. Jest to bardzo podobny pomysł do poprzedniego, ale tutaj najpierw trenujesz swoje warstwy przetwarzania, aby znaleźć dobry punkt wyjścia do dalszego dostrajania opartego na szkoleniu jakiegoś modelu liniowego.
- Rzutki losowe - możesz próbkować (nieliniowe) rzuty z pewnej predefiniowanej przestrzeni i trenować liniowy klasyfikator na nich. Pomysł ten jest mocno wykorzystywany w tak zwanym ekstremalnym uczeniu maszynowym , gdzie bardzo wydajne solwery liniowe są wykorzystywane do trenowania prostego klasyfikatora na losowych projekcjach i osiągania bardzo dobrej wydajności (w przypadku problemów nieliniowych zarówno w klasyfikacji, jak i regresji, sprawdź na przykład ekstremalne uczenie się maszyny ).
Podsumowując - jądro jest świetną techniką delinearyzacji i można jej użyć, gdy problem nie jest liniowy, ale nie powinna być ślepa. To tylko jedna z co najmniej kilku interesujących metod, które mogą prowadzić do różnych wyników, w zależności od problemu i wymagań. W szczególności ELM ma tendencję do znajdowania bardzo podobnych rozwiązań do rozwiązań dostarczanych przez jądro SVM, podczas gdy w tym samym czasie można trenować rzędy wielkości szybciej (więc skaluje się znacznie lepiej niż jądra SVM).
Postaram się udzielić nietechnicznej odpowiedzi na twoje pytanie.
Rzeczywiście, liniowa powinna być preferowana i powinna być pierwszym wyborem z powodów, o których wspominasz, czasu szkolenia, skalowalności, a także łatwości interpretacji ostatecznego modelu, wyboru pracy na pierwotnej lub podwójnej, większej tolerancji na przeregulowanie itp.
Jeśli model liniowy nie zapewnia zadowalającej wydajności, możesz wypróbować rozwiązania nieliniowe. Niektóre kompromisy do rozważenia obejmują:
źródło