Używam nauki scikit-learn w moim programie Python w celu przeprowadzenia niektórych operacji uczenia maszynowego. Problem polega na tym, że mój zbiór danych ma poważne problemy z brakiem równowagi.Brak równowagi w nauce scikit
Czy ktoś jest zaznajomiony z rozwiązaniem problemu braku równowagi w nauce scikit lub ogólnie w pytonie? W Javie jest mechanizm SMOTE. Czy jest coś równoległego w python?
Możesz spróbować oversampling/undersampling, aby zrównoważyć zestaw danych. Oczywiście jest to ogólna metoda uczenia maszynowego, a nie specyficzna dla Pythona i nauki scikit. W rzeczywistości to pytanie może nie być tutaj tematem. Może lepiej pasuje do statystyk. Mają nawet znacznik [niezbalansowanych klas] (http://stats.stackexchange.com/questions/tagged/unbalanced-classes). – Junuxx
Wiem, że temat jest stary, ale dodam tylko radę. W przypadku niezbilansowanych zestawów danych, oprócz oversampling/undersampling i używania parametru class_weight, można również obniżyć próg, aby klasyfikować swoje przypadki. Przewidzieć prawdopodobieństwa (zamiast klas) i spróbuj użyć progów mniejszych niż 0,5. Oczywiście nie zwiększy to wydajności klasyfikatora, jest tylko kompromisem między precyzją a wycofaniem. – Stergios
Stergios, jak dokładnie można ustawić próg? Wszelkie odniesienia do kodu Pythona, który to robi? – KubiK888