9

Ok, fast alle Anwendungen, die ich gesehen habe, die HoG-Funktionen verwenden, verwenden lineare SVM als Klassifikator. Kann mir jemand erklären, warum lineare SVM gewählt werden und warum sie gute Leistung bringen?Warum funktioniert lineares SVM gut mit HoG-Deskriptoren?

Wird lineares SVM gewählt, weil es einfacher und einfacher zu trainieren ist als svms, das polynomialen oder gaußschen Kern verwendet und die Verwendung dieser Kerne keine wesentlich bessere Leistung ergibt?

+1

Training mit nicht-linearen Kernel kommt nicht immer mit einer guten Leistung. Nichtlineare Kernel führen manchmal zu Übertraining und damit zu schlechter Testleistung. Dies hat manchmal damit zu tun, wie kompliziert Ihre Daten sind. In der Regel können nicht komplexe Daten in Kombination mit einem RBF-Kernel die Testgenauigkeit beeinträchtigen (Übertraining, nicht Modellverallgemeinerung in Objekten). Eine Kernel-Entscheidung und eine gute Kalibrierung von ihnen können die Leistung signifikant beeinflussen. Ich hoffe das hilft! – Darkmoor

+6

@endif Interessante Frage. Versuchen Sie Folgendes: "Warum funktionieren lineare SVMs, die mit HOG-Funktionen trainiert wurden, so gut?" http://arxiv.org/abs/1406.2419 – Bull

Antwort

0

Linear oder nichtlinear ist keine Frage von HOG oder einer anderen Funktion. Es bezieht sich einfach auf die Anzahl der Instanzen + Anzahl der Cluster + Anzahl der Feature-Dimensionen. Im Allgemeinen sind lineare Modelle für Datensätze mit mehr Feature-Dimensionen als die Instanzen bevorzugt. Wenn der Fall umgekehrt ist, sollten Sie nicht-lineare SVM-Kernel verwenden, da sie Ihre Daten implizit in einen anderen Bereich projizieren, in dem Ihre Instanzen wiederum mit mehr Dimensionen dargestellt werden.

In den meisten Fällen erhalten Sie eine sehr gute Anzahl von Feature-Dimensionen, indem Sie HOG auf Bilder anwenden. Daher können Sie einfach lineare Modelle verwenden. Wenn Sie jedoch 100000 ... Klassen und 10000000 ... Bilder haben, wird HOG + Linear-Modell nicht angezeigt. Daher verwendet zum Beispiel niemand in ImageNet Challenge HOG mit linearen SVM.

0

Persönlich habe ich noch nie mit Histogramm von Gradienten gearbeitet, aber in Ihrem Fall würde ich bewerten, ob Ihre HoG-Daten linear diskriminiert werden. Ich würde nicht einfach davon ausgehen, dass wenn man einen linearen Klassifikator für HoG benutzt, weil man es sollte. Bewerten Sie diese Behauptung kritisch.

Versuchen Sie Folgendes: Projizieren Sie ein HoG-Dataset mit LDA und führen Sie dann ein Streudiagramm des transformierten Merkmalsraums aus. Überprüfen Sie, ob es möglich ist, eine Hyperebene mit maximalem Abstand zu verwenden, um zwischen den Klassen zu unterscheiden.

0

Es ist die Geschwindigkeit, die wirklich zählt. Kernel SVM kann unabhängig von der verwendeten Funktion eine bessere Erkennungsleistung erzielen. Aber Kern-SVM ist zeitaufwendig, besonders für gleitende Fensterdetektoren, in denen der Klassifikator viele Male ausgewertet wird. So wird oft lineares SVM in der Objekterkennung gewählt. HOG ist ein guter Deskriptor für die Objekterkennung und eine gute Leistung kann mit linearer SVM erreicht werden. Bei der Kernel-SVM kann mit einer noch besseren Performance gerechnet werden, wenn die Rechenkomplexität nicht berücksichtigt wird.

Verwandte Themen