Kiedy należy zrównoważyć zajęcia w zestawie danych treningowych?

Miałem kurs online, na którym dowiedziałem się, że niezrównoważone zajęcia w danych szkoleniowych mogą prowadzić do problemów, ponieważ algorytmy klasyfikacyjne kierują się zasadą większości, ponieważ daje dobre rezultaty, jeśli niewyważenie jest zbyt duże. W zadaniu należało zrównoważyć dane poprzez niedopróbowanie klasy większości.

Jednak na tym blogu ktoś twierdzi, że zrównoważone dane są jeszcze gorsze:

https://matloff.wordpress.com/2015/09/29/unbalanced-data-is-a-problem-no-balanced-data-is-worse/

Więc który to jest? Powinienem zbilansować dane, czy nie? Czy zależy to od zastosowanego algorytmu, ponieważ niektórzy mogą być w stanie dostosować się do niezrównoważonych proporcji klas? Jeśli tak, które z nich są wiarygodne w przypadku niezrównoważonych danych?

Odpowiedź

Intuicyjne rozumowanie zostało wyjaśnione w poście na blogu:

Jeśli naszym celem jest Przewidywanie, spowoduje to wyraźne odchylenie. Co gorsza, będzie to trwałe odchylenie w tym sensie, że nie będziemy mieć spójnych szacunków w miarę wzrostu wielkości próby.

Prawdopodobnie problem (sztucznie) zbilansowanych danych jest gorszy niż przypadek niezrównoważony. .

Zrównoważone dane są dobre do klasyfikacji, ale oczywiście tracisz informacje o częstotliwościach pojawiania się, co wpłynie na same metryki dokładności, a także wydajność produkcji .

Powiedzmy, że rozpoznajesz odręczne litery alfabetu angielskiego (26 liter). Przeważenie wyglądu każdej litery da każdemu z nich prawdopodobieństwo sklasyfikowania (poprawnie lub nie) mniej więcej 1/26, więc klasyfikator zapomni o rzeczywistym rozmieszczeniu liter w pierwotnej próbce. I jest ok , gdy klasyfikator jest w stanie uogólnić i rozpoznać każdą literę z dużą dokładnością .

Ale jeśli dokładność i, co najważniejsze, uogólnienie nie są zbyt wysokie (nie mogę podać definicji – możesz to potraktować jako „najgorszy przypadek”) – błędnie sklasyfikowane punkty będą najbardziej -Prawdopodobnie równomiernie rozłożone na wszystkie litery, na przykład:

"A" was misclassified 10 times "B" was misclassified 10 times "C" was misclassified 11 times "D" was misclassified 10 times ...and so on 

W przeciwieństwie do bez równoważenia (zakładając, że „A” i „C” mają znacznie większe prawdopodobieństwo pojawienie się w tekście)

"A" was misclassified 3 times "B" was misclassified 14 times "C" was misclassified 3 times "D" was misclassified 14 times ...and so on 

Tak częste przypadki skutkują mniejszą liczbą błędnych klasyfikacji. To, czy jest to dobre, czy nie, zależy od twojego zadania. W przypadku naturalnego rozpoznawania tekstu można argumentować, że litery o wyższych częstotliwościach są bardziej opłacalne, ponieważ zachowałyby semantykę tekstu oryginalnego, przybliżając zadanie rozpoznawania do przewidywania (gdzie semantyka reprezentuje tendencje ). Ale jeśli „próbujesz rozpoznać coś takiego, jak zrzut ekranu klucza ECDSA (większa entropia -> mniej przewidywania) – utrzymanie niezrównoważenia danych nie pomoże. Więc znowu zależy.

Najważniejszą różnicą jest to, że oszacowanie dokładności samo w sobie jest stronnicze (jak widać na przykładzie zrównoważonego alfabetu), więc nie wiesz, w jaki sposób najrzadsze lub najczęstsze punkty wpływają na zachowanie modelu.

PS Zawsze możesz śledzić skuteczność klasyfikacji niezrównoważonej za pomocą wskaźników Precyzja / Przypomnienie najpierw i zdecydować, czy chcesz dodać równoważenie, czy nie.


EDYTUJ : Istnieje dodatkowe zamieszanie związane z teoria estymacji właśnie w różnicy między średnią próby a średnią populacji. Na przykład możesz znać (prawdopodobnie) rzeczywisty rozkład liter angielskich w alfabecie $ p (x_i | \ theta) $ , ale Twoja próbka (zbiór uczący) nie jest wystarczająco duży, aby poprawnie go oszacować (z $ p (x_i | \ hat \ theta) $ ). Tak więc, aby zrekompensować $ \ hat \ theta_i – \ theta_i $ , czasami zaleca się ponowne zbilansowanie klas według samej populacji lub parametrów znanych z większa próbka (a więc lepszy estymator). Jednak w praktyce nie ma gwarancji, że „większa próbka” jest identycznie rozłożona ze względu na ryzyko uzyskania tendencyjnych danych na każdym kroku (powiedzmy, że angielskie litery zebrane z literatury technicznej vs fikcja vs cała biblioteka), więc równoważenie może nadal być szkodliwe .

Ta odpowiedź powinna również wyjaśniać kryteria zastosowania dotyczące równoważenia:

Problem nierównowagi klas jest spowodowany niewystarczającą liczbą wzorców należących do klasy mniejszości, a nie stosunkiem samych wzorców pozytywnych do negatywnych.Ogólnie jeśli masz wystarczającą ilość danych, „problem nierównowagi klas” nie występuje

Podsumowując, sztuczne równoważenie jest rzadko przydatne, jeśli zbiór uczący jest wystarczająco duży. Brak danych statystycznych z większego o identycznym rozkładzie również sugeruje, że nie ma potrzeby sztucznego równoważenia (szczególnie w przypadku przewidywania), w przeciwnym razie jakość estymatora jest tak dobra, jak „prawdopodobieństwo spotkania dinozaura”:

Jakie jest prawdopodobieństwo spotkania dinozaura na ulicy?

1/2 albo spotkasz dinozaura, albo nie spotkasz dinozaura

Komentarze

  • Myślę, że oprócz wyjaśnienia problemu, ważnym wnioskiem z tej odpowiedzi jest to, że należy spróbuj najpierw wyrównać równowagę i sprawdź jej wyniki, a tylko jeśli to konieczne, wykonaj wyważenie i sprawdź jego wynik. +1
  • Innymi słowy, przy równomiernym rozłożeniu klas w podzbiorze uczącym model straci swoją dokładność w niewidocznych danych, prawda? Ale w przeciwnym przypadku, gdy spróbujesz losowo wyodrębnić wpisy zbioru danych dla podzbiorów treningowych / testowych, czy Twój klasyfikator będzie działał lepiej?
  • @ChristosK. Jak wielu stwierdziło, kiedy postrzegasz problem jako klasyfikację, trudno jest uzasadnić przewidywanie. W każdym razie, jeśli usuniesz odchylenie (próbka „losowo”) – potrzebujesz większej próbki, aby poprawić wydajność. Po prostu „zwykle” próbka jest wystarczająco duża, aby zachować semantykę, więc nadmierne wyważenie mogłoby tylko zaszkodzić i działać jak młotek regulujący, który „spłaszcza” wszystko bez odpowiedniego przemyślenia. Ponadto, jak sugeruje metafora dinozaurów, „zbalansowany” nie oznacza „równy” – dokonujesz właściwego wyważenia tylko wtedy, gdy wiesz, że niektóre prawdopodobieństwa są błędnie przedstawiane w „losowej” próbce.
  • @ChristosK. Dzięki za wyjaśnienia. To nie to samo, co miałem na myśli, ale podejście jest bardzo podobne. Zwykle zaleca się stosowanie metody k-krotnie, gdy próbka początkowa jest „trochę mała”. Nie jestem pewien, ale pasowanie i tak nie powinno boleć – po prostu zajmuje więcej przebiegów, a im mniej zależy Ci na przewidywaniu, tym mniej zależy Ci na generalizacji / wydajności tak tautologicznej, jak się wydaje :). Ale ogólnie – k-krotność oznacza zasadniczo mniejsze odchylenie.
  • @ChristosK. Aha, i jako ostrzeżenie, stosunek spam / nie-spam może być sam w sobie niestacjonarną zmienną losową. Z tymi wszystkimi „fałszywymi wiadomościami”, „rosyjskimi trollami” i innymi rzeczami uważałbym na takie założenia – stosunek też mógłby być stronniczy. Możesz najpierw oszacować PrecisionRecall w swoich klasyfikatorach, jeśli coś jest za mało próbkowane – wolałbym zebrać / wygenerować (?) Więcej danych.

Odpowiedź

Zgodnie z komentarzem @ kjetil-b-halvorsen „, szybkie przyjęcie uczenia maszynowego zdezorientowało badaczy co do przewidywania i klasyfikacji. Jak opisałem bardziej szczegółowo tutaj klasyfikacja jest odpowiednia tylko w nielicznych przypadkach. Gdy wynik jest rzadki (lub zbyt powszechny), prawdopodobieństwo jest wszystkim , ponieważ w takim przypadku można mówić rozsądnie tylko o tendencjach , a nie o przewidywaniu pojedynczych zdarzeń.

W statystykach dowiedzieliśmy się jakiś czas temu, że każda metoda, która wymaga wykluczenia niektórych danych, jest wysoce podejrzana. Tak więc cel równoważenia wyników jest chybiony. Przewidywanie tendencji (prawdopodobieństw) tego nie wymaga. Po oszacowaniu prawdopodobieństwa można podjąć optymalną decyzję, stosując Funkcja użyteczności / kosztu / straty do przewidywanego ryzyka.

Odpowiedź

Zależy od tego, co chcesz osiągnąć dzięki klasyfikacji?

Powiedzmy, że to rak, a nie rak, wtedy wykrycie raka jest kluczowe. Ponieważ jednak większość danych nie dotyczy raka, klasyfikator może zasadniczo wysłać wszystkie przypadki do klasy nienowotworowej i uzyskać bardzo wysoką dokładność. Ale nie możemy sobie na to pozwolić, więc zasadniczo zmniejszamy próbki przypadków nienowotworowych, zasadniczo przesuwając granicę decyzji z regionu raka do regionu nienowotworowego.

Nawet w przypadkach użycia, w których dokładność jest naszą jedyną cel, balansowanie może być niezbędne, jeśli oczekuje się, że bilans czasu testu będzie inny niż czas pociągu.

Na przykład, powiedzmy, że chcesz sklasyfikować mango i pomarańcze, masz zbiór danych treningowych obejmujący 900 mango i 30 pomarańczy, ale spodziewasz się, że wdrożysz go na rynku z takimi samymi mango i pomarańczami, najlepiej byłoby próbkować w oczekiwanym stosunku próbki, aby zmaksymalizować dokładność.

Komentarze

  • To właśnie zrozumiałem z wykładów, które miałem. Jednak nie ' nie rozumiem, kiedy balansowanie może być złe, jak sugeruje ten post na blogu. Dlaczego byłoby źle równowagi, czy pozostanie wystarczająca liczba punktów danych dla każdej klasy?
  • Przepraszam, ale w twojej analogii, co ma wspólnego rynek dystrybucji owoców z modelem ac wikariat?Albo nauczyłeś się oddzielać mango od pomarańczy, albo nie. Innymi słowy, powinieneś być w stanie wdrożyć ten sam model na rynku tylko pomarańczy lub mango.
  • Ale problem z przykładem raka polega na traktuj to jako klasyfikację , należy to traktować jako oszacowanie ryzyka . Następnie pozorny problem z niezrównoważonymi klasami znika, patrz stats.stackexchange.com/questions/127042/…

Odpowiedź

Kiedy dane są zbilansowane, możesz chcieć sprawdzić dokładność metryki. Ale w takiej sytuacji Twoje dane są niezrównoważone, dokładność nie jest spójna dla różnych iteracji. Musisz skoncentrować się na większej liczbie wskaźników, takich jak Precyzja (PPR), Przypomnienie (czułość). Porównując te dwa wskaźniki, należy je wyważyć. Powinieneś także sprawdzić F1-Score, który jest średnią harmoniczną Precyzji i przypomnienia. Dotyczy to wszystkich algorytmów uczenia maszynowego

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *