(Możesz najpierw zajrzeć do „tabeli” poniżej)
Zacznijmy od „klasycznych” maszyn wektorów wsparcia. Nauczą się rozróżniać dwie kategorie. Zbierasz kilka przykładów kategorii A, niektóre kategorii B i przekazujesz je oba do algorytmu szkoleniowego SVM, który znajduje linię / płaszczyznę / hiperpłaszczyznę, która najlepiej oddziela A od B. To działa - i często działa całkiem dobrze - gdy chcesz rozróżnić dobrze zdefiniowane i wzajemnie wykluczające się klasy: mężczyźni kontra kobiety, litery alfabetu i tak dalej.
Załóżmy jednak, że zamiast tego chcesz zidentyfikować litery „A”. Można to potraktować jako problem z klasyfikacją: Jak odróżnić „A” od „nie-A”. Dość łatwo jest zebrać zestaw treningowy składający się ze zdjęć psów, ale co powinno się znaleźć w zestawie treningowym nie-psów? Ponieważ istnieje nieskończona liczba rzeczy, które nie są psami, możesz mieć trudności z konstruowaniem kompleksowego, a jednocześnie reprezentatywnego zestawu treningowego dla wszystkich nie psich rzeczy. Zamiast tego możesz rozważyć użycie klasyfikatora jednej klasy. Tradycyjny, dwuklasowy klasyfikator znajduje (hiper) płaszczyznę oddzielającą A od B. Jednoklasowy SVM znajduje natomiast linię / płaszczyznę / hiperpłaszczyznę oddzielającą wszystkie punkty w klasie („A”) od początku ;
„System” Ensemble SVM jest w rzeczywistości zbiorem wielu „podjednostek” SVM dwóch klas. Każda podjednostka jest trenowana przy użyciu jednegopozytywny przykład dla jednej klasy i ogromna kolekcja negatywnych przykładów dla drugiej. Tak więc, zamiast dyskryminujących psów w porównaniu z przykładami nie psimi (standardowa SVM dwuklasowa) lub psów w porównaniu z pochodzeniem (jednoklasowa SVM), każda podjednostka rozróżnia między konkretnym psem (np. „Rex”) a wieloma innymi psami przykłady Poszczególne SVM dla poszczególnych podjednostek są szkolone dla każdego przykładu klasy dodatniej, więc masz jeden SVM dla Rexa, drugi dla Fido, jeszcze jeden dla psa twojego sąsiada, który szczeka o 6 rano i tak dalej. Wyniki tych podjednostkowych maszyn SVM są kalibrowane i łączone w celu ustalenia, czy pies, a nie tylko jeden z konkretnych przykładów, pojawia się w danych testowych. Sądzę, że moglibyście również pomyśleć o poszczególnych podjednostkach jako trochę jak SVM jednej klasy, gdzie przestrzeń współrzędnych jest przesunięta tak, że pojedynczy pozytywny przykład leży u źródła.
Podsumowując, najważniejsze różnice to:
Dane treningowe
- Dwuklasowy SVM: przykłady pozytywne i negatywne
- SVM jednej klasy: tylko pozytywne przykłady
- Ensemble SVM „system”: pozytywne i negatywne przykłady. Każda podjednostka jest szkolona na jednym pozytywnym przykładzie i wielu negatywnych przykładach.
Liczba maszyn
- Dwie klasy SVM: jedna
- Jedna klasa SVM: jedna
- Zestaw SVM „system”: wiele (jedna maszyna podjednostki na pozytywny przykład)
Przykłady na klasę (na maszynę)
- Dwuklasowy SVM: wiele / wiele
- Jedna klasa SVM: wiele / jeden (ustalony na początku)
- Zestaw SVM „system”: wiele / wiele
- Zestaw SVM „podjednostka”: jeden / wiele
Przetwarzanie końcowe
- Dwuklasowy SVM: nie jest konieczny
- SVM jednej klasy: nie jest konieczny
- Ensemble SVM: Konieczne było połączenie danych wyjściowych każdego SVM z predykcją na poziomie klasy.
Postscript: Pytałeś, co mają na myśli, mówiąc „[inne podejścia] wymagają mapowania przykładów we wspólnej przestrzeni cech, na której można obliczyć jądro podobieństwa”. Myślę, że mają na myśli, że tradycyjna dwuklasowa maszyna SVM działa przy założeniu, że wszyscy członkowie klasy są w jakiś sposób podobni, więc chcesz znaleźć jądro, które umieszcza wielkie dane i dachy blisko siebie, ale z dala od wszystkiego innego. Dla kontrastu, zestaw SVM omija to, nazywając coś psem, jeśli jest to wystarczająco wielkie dane podobne do OR lub podobne do dachówki lub podobne do pudla, nie martwiąc się o relacje między tymi przykładami.
Krótko mówiąc, model ESVM jest zespołem SVM wyszkolonym do rozróżniania każdego elementu zestawu treningowego od wszystkich pozostałych, podczas gdy OSVM jest zbiorem SVM wyszkolonych do rozróżniania każdego podzbioru elementów treningowych należących do jednej klasy. Tak więc, jeśli masz 300 przykładów kotów i 300 psów w zestawie szkoleniowym, ESVM wykona 600 SVM, każdy dla jednego zwierzaka, a OSVM stworzy dwa SVM (pierwszy dla wszystkich kotów, drugi dla wszystkich psów).
W ten sposób ESVM nie musi znajdować przestrzeni, w której skupia się cała klasa, ale raczej przestrzeń, w której ten pojedynczy element jest wartością odstającą, co jest prawdopodobnie prostsze i prowadzi do wysokiej precyzji. Przypomina się, że zespół zapewnia.
źródło