Wyszkoliłem ExtraTreesClassifier (indeks gini) za pomocą scikit-learn i odpowiada to moim potrzebom. Nie tak dobra dokładność, ale przy 10-krotnej walidacji krzyżowej, AUC wynosi 0,95. Chciałbym użyć tego klasyfikatora w mojej pracy. Jestem całkiem nowy w ML, więc proszę, wybacz mi, jeśli zadaję ci coś koncepcyjnie nie tak.Jak ustawić próg dla klasyfikatora sklearn na podstawie wyników ROC?
Wykreśliłem niektóre krzywe ROC, a przez to wydaje mi się, że mam określony próg, gdy mój klasyfikator zaczyna działać dobrze. Chciałbym ustawić tę wartość na dopasowanym klasyfikatorze, więc za każdym razem, gdy chciałbym przewidzieć, klasyfikatory stosują ten próg i mogę wierzyć w stawki FP i TP.
Przyszedłem również do tego posta (scikit .predict() default threshold), gdzie stwierdzono, że próg nie jest ogólną koncepcją klasyfikatorów. Ale ponieważ ExtraTreesClassifier ma metodę predict_proba, a krzywa ROC jest również związana z definicją thresdholds, wydaje mi się, że powinienem być dostępny, aby ją określić.
Nie znalazłem żadnego parametru ani klasy/interfejsu, który mógłby to zrobić. Jak mogę ustawić dla niego próg dla wyszkolonego ExtraTreesClassifier (lub innego) przy użyciu scikit-learn?
Wielkie dzięki, Colis
Hi Biały, dzięki za odpowiedź. Zoptymalizowałem go, wybierając roc_auc i inne dane, które były w moim interesie w tym czasie (stworzyłem również niestandardowego klasyfikatora, aby zoptymalizować LR +). Moja główna wątpliwość polega na tym, jak wybrać jeden z progów wskazywanych przez punkt na krzywej ROC jako próg dla wywołania predict()? Moje pytanie jest powiązane z (). Nie jestem pewien, czy byłby on dostępny dla drzew, ponieważ zwykle nie używają probas. Ale jak ustawić go na inne metody? –
Colis