Chcę spróbować użyć maszyn wektorów wsparcia (SVM) w moim zestawie danych. Zanim jednak spróbowałem rozwiązać problem, zostałem ostrzeżony, że maszyny SVM nie radzą sobie dobrze z bardzo niezrównoważonymi danymi. W moim przypadku mogę mieć aż 95-98% zera i 2-5% 1.
Próbowałem znaleźć zasoby, które mówiły o używaniu SVM na rzadkich / niezrównoważonych danych, ale wszystko, co mogłem znaleźć, to „rzadkie SVM” (które używają niewielkiej liczby wektorów pomocniczych).
Miałem nadzieję, że ktoś może krótko wyjaśnić:
- Jak dobrze można oczekiwać, że SVM poradzi sobie z takim zestawem danych
- Które ewentualne modyfikacje należy wprowadzić w algorytmie SVM
- Jakie zasoby / dokumenty omawiają to
źródło
SVM działają dobrze na rzadkich i niezrównoważonych danych. Klasa SVM ważona jest zaprojektowana do radzenia sobie z niezrównoważonymi danymi poprzez przypisywanie wyższych kar za błędne klasyfikacje do instancji szkoleniowych klasy mniejszościowej.
źródło
W przypadku tak rzadkich danych SVM będzie działał dobrze.
Jak stwierdził @Bitwise, nie należy używać dokładności do mierzenia wydajności algorytmu.
Zamiast tego należy obliczyć dokładność, przywołanie i wynik F algorytmu.
źródło