Mieliśmy już wiele pytań na temat niezrównoważonych danych podczas korzystania z regresji logistycznej , SVM , drzew decyzyjnych , tworzenia worków i wielu innych podobnych pytań, co sprawia, że jest to bardzo popularny temat! Niestety, każde z pytań wydaje się być specyficzne dla algorytmu i nie znalazłem żadnych ogólnych wskazówek dotyczących postępowania z niezrównoważonymi danymi.
Cytując jedną z odpowiedzi Marca Claesena , dotyczącą niezrównoważonych danych
(...) w dużej mierze zależy od metody uczenia się. Większość podejść ogólnego przeznaczenia ma jeden (lub kilka) sposobów radzenia sobie z tym.
Ale kiedy dokładnie powinniśmy martwić się o niezrównoważone dane? Na jakie algorytmy ma to największy wpływ i które potrafią sobie z tym poradzić? Jakie algorytmy potrzebowałyby nas do zrównoważenia danych? Wiem, że omawianie każdego z algorytmów byłoby niemożliwe na takiej stronie pytań i odpowiedzi, raczej szukam ogólnych wskazówek, kiedy może to stanowić problem.
Odpowiedzi:
Nie jest to bezpośrednia odpowiedź, ale warto zauważyć, że w literaturze statystycznej niektóre uprzedzenia do niezrównoważonych danych mają swoje historyczne korzenie.
Wiele klasycznych modeli jest starannie uproszczonych przy założeniu zrównoważonych danych, szczególnie w przypadku metod takich jak ANOVA, które są ściśle związane z projektowaniem eksperymentalnym - tradycyjna / oryginalna motywacja do opracowywania metod statystycznych.
Ale arytmetyka statystyczna / probabilistyczna staje się dość brzydka, dość szybko, przy niezrównoważonych danych. Przed powszechnym przyjęciem komputerów ręczne obliczenia były tak obszerne, że oszacowanie modeli na niezrównoważonych danych było praktycznie niemożliwe.
Oczywiście komputery w zasadzie sprawiły, że nie było to problemem. Podobnie, możemy oszacować modele na masywnych zestawach danych, rozwiązać problemy optymalizacji wielowymiarowej i wyciągnąć próbki z analitycznie trudnych do obliczenia rozkładów prawdopodobieństw połączeń, z których wszystkie były funkcjonalnie niemożliwe, jak pięćdziesiąt lat temu.
To stary problem, a naukowcy poświęcili dużo czasu na pracę nad tym problemem ... w międzyczasie wiele zastosowanych problemów wyprzedzało / pomijało te badania, ale stare nawyki umierają ciężko ...
Edytuj, aby dodać:
Zdaję sobie sprawę, że nie wyszłam i po prostu to mówię: nie ma problemu z niskim poziomem korzystania z niezrównoważonych danych. Z mojego doświadczenia wynika, że rada „unikania niezrównoważonych danych” dotyczy albo algorytmu, albo odziedziczonej mądrości. Zgadzam się z AdamO, że ogólnie niezrównoważone dane nie stanowią problemu koncepcyjnego dla dokładnie określonego modelu.
źródło
WLOG możesz skupić się na nierównowagach w jednym czynniku, zamiast bardziej dopracowanej koncepcji „rzadkości danych” lub liczby małych komórek.
W analizach statystycznych, które nie koncentrują się na nauce, często stwierdzamy, że podobna lub lepsza moc jest zapewniona, gdy wyniki skłonności są dopasowane do mniejszej grupy do większej grupy. Wynika to częściowo z tego, że dopasowywanie służy podobnemu celowi, co korekta myląca pod względem „równoważenia” determinantów członkostwa w grupie, blokując w ten sposób ich mylące skutki. Uzasadnienie liczby czynników zakłócających, które mogą zostać dostosowane w analizie na wielu odmianach, zależy od wielkości próby. Niektóre praktyczne zasady mówią jedną zmienną na każde 10 do 20 obserwacji. W przypadku niezrównoważonych danych naiwnie wierzysz, że twoje dane są wystarczająco duże, ale przy rzadkiej liczbie osób mających rzadszy stan: inflacja wariancji znacznie zmniejsza moc. W rzeczywistości przesadzasz.
Dlatego przynajmniej w regresji (ale podejrzewam we wszystkich okolicznościach), jedynym problemem związanym z niezrównoważonymi danymi jest to, że skutecznie masz małą próbkę . Jeśli jakakolwiek metoda jest odpowiednia dla liczby osób w rzadszej klasie, nie powinno być problemu, jeśli proporcja członków nie jest zrównoważona.
źródło
Niezrównoważone dane to tylko problem w zależności od aplikacji. Jeśli na przykład twoje dane wskazują, że A zdarza się 99,99% czasu, a 0,01% czasu B dzieje się, a Ty próbujesz przewidzieć określony wynik, Twój algorytm prawdopodobnie zawsze powie „A.” To jest oczywiście poprawne! Jest mało prawdopodobne, aby Twoja metoda uzyskała lepszą dokładność prognozowania niż 99,99%. Jednak w wielu aplikacjach nie interesuje nas tylko poprawność prognozy, ale także dlaczego czasami zdarza się B. W tym miejscu problemem stają się niezrównoważone dane. Ponieważ trudno jest przekonać twoją metodę, że potrafi przewidzieć poprawność powyżej 99,99%. Metoda jest poprawna, ale nie dotyczy twojego pytania. Zatem rozwiązywanie niezrównoważonych danych jest zasadniczo celowym promowaniem danych w celu uzyskania interesujących wyników zamiast dokładnych wyników.
Zasadniczo istnieją trzy przypadki:
jesteś całkowicie zainteresowany dokładnymi prognozami i uważasz, że Twoje dane są reprenstatywne. W tym przypadku nie musisz wcale poprawiać, wygrzewać się w chwale swoich 99,99% trafnych prognoz :).
Jesteś zainteresowany prognozami, ale twoje dane pochodzą z uczciwej próby, ale jakoś straciłeś wiele obserwacji. Jeśli straciłeś obserwacje w zupełnie przypadkowy sposób, nadal masz się dobrze. Jeśli straciłeś je w sposób stronniczy, ale nie wiesz, jak stronniczy, będziesz potrzebować nowych danych. Jeśli jednak te obserwacje zostaną utracone tylko na podstawie jednego charakteru. (na przykład posortowałeś wyniki w A i B, ale nie w żaden inny sposób, ale straciłeś połowę B) Ypu może przeładować twoje dane.
Nie interesują Cię dokładne prognozy globalne, ale tylko w rzadkich przypadkach. W takim przypadku możesz nadmuchać dane tej sprawy, ładując dane lub jeśli masz wystarczającą ilość danych, rzucając dane w innych przypadkach. Zauważ, że to powoduje błąd danych i wyników, a więc szanse i tego rodzaju wyniki są złe!
Zasadniczo zależy to przede wszystkim od celu. Niektóre cele cierpią na niezrównoważone dane, inne nie. Wszystkie ogólne metody przewidywania cierpią z tego powodu, ponieważ w przeciwnym razie przyniosłyby ogólnie fatalne wyniki.
źródło
Załóżmy, że mamy dwie klasy:
Załóżmy, że jesteśmy zainteresowani identyfikacją elementów klasy B, którymi mogą być osoby dotknięte rzadką chorobą lub oszustem.
Wystarczy zgadnąć, że uczący się uzyskaliby wysokie noty za swoje funkcje utraty, a bardzo niewiele nieprawidłowo sklasyfikowanych elementów może nie poruszać się liczbowo igłą (w tym przypadku w stogu siana). Ten przykład przedstawia intuicję stojącą za jedną z „sztuczek” mających na celu złagodzenie problemu nierównowagi klasy: dostosowanie funkcji kosztu.
Wydaje mi się, że niezrównoważone dane stanowią problem, gdy modele wykazują prawie zerową czułość i swoistość. Zobacz przykład w tym artykule w sekcji „ignorowanie problemu” .
Problemy często mają rozwiązanie. Oprócz wspomnianej sztuczki istnieją inne opcje . Jednak mają swoją cenę: wzrost modelu i złożoności obliczeniowej.
Pytanie dotyczy tego, które modele są bardziej podatne na ustalenie czułości zbliżonej do zera i specyficzności zbliżonej do zera. Wydaje mi się, że zależy to od kilku wymiarów:
źródło
Jeśli się nad tym zastanowić: na doskonale oddzielnym, wysoce niezrównoważonym zestawie danych prawie każdy algorytm będzie działał bez błędów.
Dlatego jest to bardziej problem szumu w danych i mniej związany z określonym algorytmem. I nie wiesz z góry, który algorytm najlepiej kompensuje jeden konkretny rodzaj szumu.
Na koniec musisz po prostu wypróbować różne metody i zdecydować się na krzyżową weryfikację.
źródło