Jakie metody istnieją dostrajania hiperparametrów jądra graficznego SVM?


10

Mam pewne dane, które istnieją na wykresie . Wierzchołki należą do jednej z dwóch klas , a ja jestem zainteresowany szkoleniem SVM do rozróżniania dwóch klas. Jeden odpowiedni jądro to jądro dyfuzji , gdzie jest Laplace'a z i \ p jest parametrem strojenia.G=(V,E)yi{1,1}K=exp(βL),LGβ

Strojenie SVM wymaga wyboru hiperparametrów, więc muszę nastroić θ=(β,C).Konwencjonalnie używamy weryfikacji krzyżowej dla tego problemu, ale tutaj nie wydaje się to właściwe, ponieważ pominięcie wierzchołka i z G zmienia cały wykres, prawdopodobnie nawet zwiększając liczbę połączonych komponentów! Jeśli liczba połączonych komponentów zmienia się, niektóre wierzchołki stają się nieosiągalne od innych, a my mamy do czynienia z zupełnie innym zestawem danych niż na początku. Oznacza to, że nie tylko brakuje nam usuniętego wierzchołka i , ale również brakuje informacji o wszystkich innych wierzchołkach j na wykresie, które sąsiadowały z tym wierzchołkiem.

Podstawowym pojęciem walidacji krzyżowej jest to, że chcielibyśmy oszacować, jak będzie działał model, gdy zostanie zaprezentowany z nowymi danymi. W standardowych problemach pominięcie niektórych danych do testowania nie zmienia wartości pozostałych danych treningowych. Jednak w przypadku danych graficznych nie jest jasne, co to znaczy, że model widzi „nowe” dane w ustawieniach CV. Pominięcie wierzchołków lub krawędzi może całkowicie zmienić dane. Na przykład, wyobraź sobie wykres S=(VS,ES) który jest wykresem k star, na którym jeden wierzchołek ma od k krawędzi do k wierzchołków, a wszystkie pozostałe wierzchołki mają 1 krawędź. Pominięcie centralnego wierzchołka w celu skonstruowania danych treningowych Scałkowicie rozłączy wykres, a macierz jądra będzie przekątna! Oczywiście możliwe będzie szkolenie modelu na podstawie danych treningowych podanych w S . Mniej jasne jest to, co oznacza testowanie wydajności modelu wynikowego poza próbą. Czy ktoś ponownie oblicza macierz jądra dla S i zapewnia to do prognozowania?

Czy też alternatywnie, czy zaczyna się od obliczenia macierzy jądra w całości i pomija wiersze i kolumny, jeśli jest to konieczne do wytworzenia macierzy jądra używanej do oszacowania SVM? To stwarza własne problemy koncepcyjne, ponieważ włączenie centralnego węzła do oznacza, że ​​każdy wierzchołek jest osiągalny z każdego innego wierzchołka, a macierz jądra jest gęsta. Czy to włączenie będzie oznaczać przeciek informacji między fałdami i wpływać na wyniki weryfikacji krzyżowej? Z jednej strony dane o pominiętych węzłach centralnych są nadal obecne, ponieważ pominięty węzeł centralny powoduje połączenie wykresu. Z drugiej strony nic nie wiemy o etykietachSS y z pominiętych węzłów, więc możemy być pewni, że otrzymujemy uzasadnione obiektywne szacunki poza próbą z wykonania CV w ten sposób.

Jak wybrać hiperparametry dla problemów tego typu? Czy CV jest niedoskonałe, ale akceptowalne, czy też potrzebujemy specjalistycznych metod? Czy w moim kontekście w ogóle możliwe jest dostrajanie hiperparametrów?


Poszukaj rozszerzenia poza próbą dla metod spektralnych. W swojej pracy zastosowałem niektóre techniki klasyfikacji obrazów (patrząc wstecz, zrobiłbym to jednak inaczej). Wyniki były interesujące, ale same modele były dość kruche i niełatwe do dostrojenia.
Vladislavs Dovgalecs,

@xeon Jakieś rekomendacje, od czego zacząć patrzeć na tę literaturę?
Sycorax mówi Przywróć Monikę

Odpowiedzi:


3

Oświadczenie: Nie znam się dobrze na jądrach graficznych, więc ta odpowiedź może być oparta na błędnych założeniach. Zgadzam się, że pominięcie wierzchołków podczas obliczania macierzy jądra jest nieoptymalne. To powiedziawszy, nie jestem pewien, czy walidacja krzyżowa jest z konieczności problematyczna. Czy Twój kontekst uczenia się jest transdukcją czy indukcją?

Ogólnie nie jestem przekonany, że obliczenie macierzy jądra dla danego na podstawie wszystkich danych (tj. Zarówno pociągu, jak i testu) koniecznie powoduje wyciek informacji. Jeśli obliczenie jądra na podstawie wszystkich danych okaże się być w porządku, możesz trenować modele w typowej konfiguracji cv, używając odpowiednich bloków (wstępnie obliczonej) pełnej macierzy jądra do treningu / testowania.β

βCβC


Marc, dziękuję za uwagę. Mój problem jest indukcyjny. Instynktownie twierdzę, że masz rację i że obliczamy pełną macierz jądra dla wszystkich danych, a następnie pomijamy wiersze i kolumny, jeśli jest to konieczne, aby utworzyć jądro CV. Czy zdarzyło Ci się być świadomym jakichkolwiek odniesień do tego efektu?
Sycorax mówi Przywróć Monikę

Nie od razu, ale mam kilku współpracowników pracujących nad podobnymi problemami (klastry spektralne jądra), o które mogę zapytać. Może mają referencje i / lub lepsze pomysły. Zaktualizuje się, gdy dowiem się więcej.
Marc Claesen
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.