Techniki ponownego próbkowania
W poprzednim ćwiczeniu zobaczyłeś, jak niezbalansowanie klas może wpływać na wyniki macierzy pomyłek. W tym ćwiczeniu przećwiczysz techniki ponownego próbkowania, aby zbadać, jak różne podejścia do próbkowania mogą wpłynąć na zbiór danych z niezbalansowanymi klasami, taki jak loan_data. Używając funkcji resample() z biblioteki sklearn: dopasowanie liczby wierszy do klasy większościowej nazywamy nadpróbkowaniem (ang. upsampling), a dopasowanie do klasy mniejszościowej – podpróbkowaniem (ang. downsampling).
Utworzysz zarówno nadpróbkowaną, jak i podpróbkowaną wersję zbioru danych loan_data, zastosujesz do nich regresję logistyczną, a następnie ocenisz uzyskane wyniki. Dane treningowe i ich etykiety odpowiadające deny zostały podzielone tak, aby zawierały tylko klasę mniejszościową, a te odpowiadające approve – klasę większościową.
Obiekt podziału na zbiór treningowy i testowy, służący do tworzenia predykcji, został zapisany w środowisku roboczym jako X_test – możesz go używać w ćwiczeniach.
To ćwiczenie jest częścią kursu
Ćwiczenie pytań rekrutacyjnych z uczenia maszynowego w Pythonie
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Upsample minority and combine with majority
loans_upsampled = ____(deny, replace=True, n_samples=len(____), random_state=123)
upsampled = pd.concat([approve, loans_upsampled])
# Downsample majority and combine with minority
loans_downsampled = ____(____, replace = False, n_samples = len(deny), random_state = 123)
downsampled = pd.concat([loans_downsampled, deny])