Czy wyszukiwanie siatki SVM powinno pokazywać region o wysokiej dokładności z niską dokładnością?

12

Mam 12 pozytywnych zestawów treningowych (komórki rakowe leczone lekami z każdym z 12 różnych mechanizmów działania). Dla każdego z tych pozytywnych zestawów treningowych chciałbym wytrenować maszynę wektora nośnego, aby odróżniała ją od ujemnego zestawu o równej wielkości próbkowanego z eksperymentu. Każdy zestaw ma od 1000 do 6000 komórek, a dla każdej komórki jest 476 cech (cechy obrazu), każdy skalowany liniowo do [0, 1].

Używam LIBSVM i jądra Gaussa RGB. Korzystając z pięciokrotnej walidacji krzyżowej, przeprowadziłem wyszukiwanie siatki dla log₂ C ∈ [-5, 15] i log₂ ɣ ∈ [-15, 3]. Wyniki są następujące:

Wyniki wyszukiwania siatki

Byłem rozczarowany, że nie ma jednego zestawu parametrów, które dałyby wysoką dokładność dla wszystkich 12 problemów klasyfikacyjnych. Byłem również zaskoczony, że siatki na ogół nie pokazują regionu o wysokiej dokładności otoczonego mniejszymi dokładnościami. Czy to tylko oznacza, że ​​muszę rozszerzyć przestrzeń parametrów wyszukiwania, czy też wyszukiwanie siatki wskazuje, że coś innego jest nie tak?

Vebjorn Ljosa
źródło
2
Ponowne rozczarowanie: nie spodziewałbyś się, że każdy problem będzie miał te same parametry, więc dlaczego miałbyś oczekiwać, że problemy będą miały dobre wartości dla hiperparametrów (log gamma i C)?
conjugateprior
@Conjugate Prior: Zestawy treningowe są podzestawami tego samego eksperymentu, a negatywne zestawy treningowe są próbkowane z tej samej populacji, więc miałem nadzieję, że ta sama szerokość jądra RBF ɣ będzie skuteczna. Ponieważ zestawy dodatnie są odróżniane od tej samej populacji (negatywnej), miałem nadzieję, że kara idealna C również będzie podobna. Jeśli tak nie jest, bardzo trudno jest zastosować SVM. Na przykład delikatne doładowanie wydaje się znacznie łatwiejsze do dostrojenia.
Vebjorn Ljosa
Aha. Wydaje mi się jednak, że chociaż jest to ten sam eksperyment w sensie fizycznym, atakujesz osobne i różne problemy w sensie statystycznym. W szczególności, jeśli przypadki negatywne są ponownie próbkowane dla każdego leczenia.
conjugateprior
1
BTW, wyszukiwanie siatki jest raczej nieefektywne, algorytm optymalizacji simpleksowej Neldera-Meada jest bardzo skuteczny, podobnie jak metody optymalizacji spadku gradientu. Wyszukiwanie w sieci jest proste, ale nieco „brutalna siła”.
Dikran Marsupial
@ Vebjorn Ljosa (rok później), ile rozprasza 5 wartości, na końcu (C, gamma)? Czy wszystkie 12 wykresów jest skalowanych tak samo, np. 50% .. 100% poprawnych prognoz? Dzięki
denis

Odpowiedzi:

9

Optymalne wartości dla hiper-parametrów będą różne dla różnych uczenia się, musisz je dostroić osobno dla każdego problemu.

Powodem, dla którego nie dostajesz jednego optimum, jest to, że zarówno parametr jądra, jak i parametr regularyzacji kontrolują złożoność modelu. Jeśli C jest mały, otrzymujesz gładki model, podobnie jeśli jądro z jest szerokie, otrzymasz gładki model (ponieważ podstawowe funkcje nie są bardzo lokalne). Oznacza to, że różne kombinacje C i szerokości jądra prowadzą do podobnie złożonych modeli o podobnej wydajności (dlatego otrzymujesz funkcję ukośną na wielu twoich działkach).

Optymalne zależy również od konkretnego doboru zestawu treningowego. Możliwe jest przeregulowanie błędu weryfikacji krzyżowej, więc wybranie hiperparametrów przez weryfikację krzyżową może faktycznie pogorszyć wydajność, jeśli nie będziesz miał szczęścia. Zobacz Cawley i Talbot jakiegoś dyskusji o tym.

Fakt, że hiperparametry mają szeroki zakres wartości, przy którym uzyskuje się podobnie dobre wartości, jest w rzeczywistości dobrą cechą maszyn wektorów wsparcia, ponieważ sugeruje, że nie są one zbyt podatne na nadmierne dopasowanie w wyborze modelu. Jeśli miałeś ostry pik przy optymalnych wartościach, byłoby to złe, ponieważ trudno byłoby go znaleźć przy użyciu skończonego zestawu danych, który zapewniłby niewiarygodne wskazanie, gdzie ten pik rzeczywiście znajduje się.

Dikran Torbacz
źródło
BTW Przeprowadzam badanie dotyczące nadmiernego dopasowania w wyborze modelu za pomocą wyszukiwania siatki, które okazuje się być znacznie bardziej interesujące, niż myślałem. Nawet z kilkoma hiperparametrami nadal możesz prześcignąć kryterium wyboru modelu, jeśli zoptymalizujesz na siatce, która jest zbyt dobra!
Dikran Marsupial,
Zbliżam się do końca pracy nad symulacją, mam nadzieję, że będę w stanie przesłać artykuł za miesiąc lub dwa ...
Dikran Marsupial
Byłbym zainteresowany przeczytaniem tego artykułu, jeśli będzie gotowy? W optymalizacji wyszukiwania sieci natknąłem się na dziwne skoki itp., Które wydają się podobne do omawianych tutaj.
BGreene,
Wszystkie prace symulacyjne są teraz zakończone, w tej chwili po prostu składam papier (głównie po prostu upewniam się, że wszystko jest w pełni odtwarzalne). Zapisałem wszystkie sieci, więc powinna być możliwa ponowna analiza innych pytań, o których wtedy nie myślałam.
Dikran Torbacz