Czy przy nadmiernym / niedostatecznym próbkowaniu niesymetrycznych klas maksymalizacja dokładności różni się od minimalizacji kosztów błędnej klasyfikacji?

14

Przede wszystkim chciałbym opisać niektóre popularne układy używane w książkach Data Mining, wyjaśniając, jak radzić sobie z niezrównoważonymi zestawami danych . Zwykle główna sekcja nosi nazwę Niezrównoważone zestawy danych i obejmują te dwie podsekcje: Klasyfikacja wrażliwa na koszty i Techniki pobierania próbek.

Wydaje się, że w obliczu problemu z rzadką klasą można przeprowadzić zarówno klasyfikację wrażliwą na koszty, jak i próbkowanie. Zamiast tego uważam, że należy zastosować techniki wrażliwe na koszty, jeśli rzadka klasa jest również celem klasyfikacji, a błędne zaklasyfikowanie zapisu tej klasy jest kosztowne.

Z drugiej strony, techniki próbkowania, takie jak nadmierne próbkowanie i niepełne próbkowanie, są przydatne, jeśli celem klasyfikacji jest ogólnie dobra dokładność, bez koncentrowania się na konkretnej klasie.

Przekonanie to wynika z uzasadnienia MetaCost, które jest ogólnym sposobem uczynienia klasyfikatora wrażliwym na koszty: jeśli ktoś chce uczynić klasyfikator wrażliwym na koszty, aby ukarać błąd błędnej klasyfikacji rzadkiej klasy, powinien przesadzić z drugą klasą . Z grubsza mówiąc, klasyfikator próbuje dostosować się do drugiej klasy i staje się specyficzny dla rzadkiej klasy.

Jest to przeciwieństwo nadmiernego próbkowania rzadkiej klasy, co jest zwykle sugerowanym sposobem radzenia sobie z tym problemem. Nadmierne pobieranie próbek z rzadkiej klasy lub niepełne pobieranie próbek z drugiej klasy jest przydatne do poprawy ogólnej dokładności.

Proszę, byłoby wspaniale, gdybyś potwierdził moje myśli.

Mówiąc to, częstym pytaniem dotyczącym niezrównoważonego zestawu danych jest:

Czy powinienem spróbować uzyskać zestaw danych, który zawiera tyle rzadkich rekordów, co inne?

Moja odpowiedź brzmi: jeśli szukasz dokładności: OK. Możesz to zrobić, znajdując rzadsze przykłady klas lub usuwając niektóre rekordy innej klasy.

Jeśli skupiasz się na rzadkiej klasie, stosując technikę wrażliwą na koszty, odpowiedziałbym: możesz znaleźć tylko rzadszy przykład klasy, ale nie powinieneś usuwać zapisów drugiej klasy. W tym drugim przypadku nie będzie można pozwolić klasyfikatorowi dostosować się do innej klasy, a błąd błędnej klasyfikacji rzadkiej klasy może wzrosnąć.

Co byś odpowiedział

Simone
źródło
2
„Znalezienie” nowych rekordów dla rzadkich klas może być niemożliwe. Przypuszczam, że dane są ustrukturyzowane w ten sposób, ponieważ tworzenie bardziej rzadkich zdarzeń jest kosztowne (bioinformatyka) lub ryzykowne (pożyczka bankowa).
steffen
Oczywiście, ale jest to często proponowane rozwiązanie. Jednak prawdą jest, że jeśli znajdziesz rzadsze przykłady klas, możesz znaleźć inne przykłady. Ponieważ zestaw treningowy powinien być reprezentatywną próbką rekordowego wszechświata. Wydaje mi się więc, że to przesadzanie z próbkowaniem.
Simone,

Odpowiedzi:

9

To dobre pytanie. Osobiście moją odpowiedzią byłoby to, że nigdy nie ma sensu wyrzucanie danych (chyba że jest to spowodowane względami obliczeniowymi), ponieważ im więcej danych masz, tym lepszy może być twój model świata. Dlatego sugerowałbym, że wystarczająca powinna być modyfikacja funkcji kosztów w odpowiedni sposób dla twojego zadania. Na przykład, jeśli interesuje Cię jedna szczególna rzadka klasa, możesz uczynić błędne klasyfikacje tej klasy tylko droższymi; jeśli interesuje Cię wyważona miara, coś takiego jak zrównoważony poziom błędu (średnia błędów w każdej klasie) lub współczynnik korelacji Matthewsa jest odpowiedni; jeśli interesuje Cię tylko ogólny błąd klasyfikacji, tradycyjna strata 0-1 .

Nowoczesne podejście do problemu polega na wykorzystaniu Active Learning. Na przykład Hospedales i wsp. (2011) „Znajdowanie rzadkich klas: aktywne uczenie się za pomocą modeli generatywnych i dyskryminacyjnych, transakcje IEEE dotyczące inżynierii wiedzy i danych (TKDE 2011) . Uważam jednak, że te podejścia są nadal stosunkowo mniej dojrzałe.

tdc
źródło
Ciekawa miara Metthewsa na wypadek, gdyby potrzebna była wyważona miara. Biorąc jednak pod uwagę, że nie chcemy usuwać żadnego rekordu, przed wykonaniem próbkowania lub modyfikacji funkcji kosztu, czy zrównoważyłby się zestaw danych, dodając rzadkie przykłady klas? Myślę, że odpowiedź może być NIE. Ponieważ dopóki znajdziesz rzadkie przykłady klas, możesz znaleźć inne przykłady. Tak więc, aby uzyskać lepiej zrównoważoną miarę lub lepszą miarę wydajności rzadkiej klasy (np. Miarę F), wykonałbym technikę (taką jak próbkowanie lub modyfikacja kosztu) dopiero po fazie zbierania danych. Czy sie zgadzasz?
Simone
Uzgodnione, wszelkie takie operacje powinny być wykonywane po fazie gromadzenia danych.
tdc,