Przeskocz do zawartości głównej Przejdź do treści uzupełniającej

Równoważenie klas

W przypadku problemu związanego z klasyfikacją binarną zebranych danych może być więcej dla jednej z dwóch klas. Taka nierównowaga między klasami powoduje, że model uczy się więcej o klasie większościowej niż o klasie mniejszościowej. Aby ulepszyć model, możesz użyć równoważenia klas.

Co to jest równowaga klas

W zestawie danych do klasyfikacji binarnej istnieją dwie klasy. Równowaga klas to względna częstość występowania tych klas.

Jeśli rzucisz idealnie losową monetą wystarczająco dużo razy, otrzymasz idealnie zrównoważony zestaw dwóch klas (orzeł i reszka). Średnia wartość klasy wynosi 0,5 w doskonale zrównoważonym przypadku (gdzie jedna klasa to 1, a druga to 0).

Dwie idealnie zrównoważone klasy

Wykres słupkowy z dwiema zrównoważonymi klasami.

W wielu przypadkach nie ma równowagi między klasami. Może to prowadzić do tego, że model nauczy się więcej o klasie większościowej niż o klasie mniejszościowej.

Przykłady klas z nierównowagą

Wykres słupkowy z klasami, które są niezrównoważone.

Obciążenie proporcjonalne

Model może być bardzo dokładny, odgadując klasę większościową w niezrównoważonych danych. Na przykład, jeśli 95 procent odwiedzających witrynę internetową nie dokonuje zakupu, model może być w 95 procentach dokładny, twierdząc, że nikt nie dokona zakupu. Model uczy się o klasie większościowej, ale często ważniejsze jest poznanie klasy mniejszościowej. Na przykład, dlaczego pozostałe 5 procent odwiedzających witrynę dokonuje zakupów?

Efekty równoważenia klas

Dzięki zrównoważeniu klas w swoich danych możesz uzyskać model bardziej skoncentrowany na cechach, który nauczył się więcej o klasie mniejszościowej. Potencjalne konsekwencje dla modelu to:

  • Wyższy wynik F1, ponieważ wzrosła waga klasy mniejszościowej.

  • Nieznacznie niższy ogólny wynik dokładności, ponieważ nie opiera się tak bardzo na obciążeniu proporcjonalnym.

  • Model oferuje więcej informacji, ponieważ w większym stopniu opiera się na cechach i sposobie rozróżniania klas jako oddzielnych. Więcej informacji w modelu ze zrównoważonymi klasami mogą dostarczać wartości SHAP.

Należy pamiętać, że w przypadku małych zestawów danych równoważenie klas może spowodować utratę danych cech. Ponadto zmiana proporcji w zestawie danych może spowodować utratę niektórych informacji, co może obciążyć prognozy modelu.

Jak zrównoważyć klasy

Aby zrównoważyć klasy danych, musisz najpierw się dowiedzieć, jaka jest idealna równowaga dla konkretnego przypadku biznesowego. Potrzebne mogą być różne proporcje od 80/20 do 50/50. Zrównoważ je na tyle, aby uzyskać to, czego potrzebujesz, ponieważ nadmierne dostrajanie równowagi klas może prowadzić do przetrenowania modelu. Następnie przetestuj model z ręcznymi wstrzymaniami.

Najpopularniejszą metodą równoważenia klas jest undersampling. Polega to na losowym próbkowaniu klasy większościowej, tak aby uzyskać lepszą równowagę z klasą mniejszościową. Na ilustracji przedstawiono, jak próbki są pobierane z klasy większościowej w oryginalnym zestawie danych, aby uzyskać zestaw danych z klasami zrównoważonymi.

Undersampling klasy większościowej (niebieska) w celu uzyskania równowagi z klasą mniejszościową (żółta)

Ilustracja undersamplingu.

Czy ta strona była pomocna?

Jeżeli natkniesz się na problemy z tą stroną lub jej zawartością — literówkę, brakujący krok lub błąd techniczny — daj nam znać, co możemy poprawić!