1. Nauka
  2. /
  3. Kursy
  4. /
  5. Uczenie maszynowe z caret w R

Connected

ćwiczenie

Dostosowywanie trainControl

Jak pokazano w filmie, pole pod krzywą ROC (AUC) to bardzo przydatna, syntetyczna miara zdolności modelu do rozróżniania klasy pozytywnej od negatywnej (np. min od skał). AUC równe 0,5 oznacza trafność losową, AUC równe 1,0 odpowiada modelowi doskonałemu, a AUC równe 0,0 wskazuje na model całkowicie mylący się w predykcjach (co zdarza się bardzo rzadko).

Jest to zazwyczaj znacznie bardziej użyteczna miara niż proste porównywanie modeli według dokładności przy ustalonym progu – różne modele mogą bowiem wymagać innych kroków kalibracji (np. analizy macierzy pomyłek na każdym etapie), aby wyznaczyć optymalny próg klasyfikacji.

Funkcja trainControl() z pakietu caret pozwala używać AUC zamiast dokładności do strojenia parametrów modelu. Funkcja pomocnicza twoClassSummary() znacznie to ułatwia.

Korzystając z twoClassSummary(), pamiętaj, aby zawsze podawać argument classProbs = TRUE – inaczej model zgłosi błąd! (Obliczenie AUC wymaga nie tylko przynależności do klas, ale też prawdopodobieństw klasowych.)

Instrukcje

100 XP
  • Dostosuj obiekt trainControl, aby używał twoClassSummary zamiast defaultSummary.
  • Zastosuj 10-krotną walidację krzyżową.
  • Pamiętaj, aby wskazać funkcji trainControl(), że ma zwracać prawdopodobieństwa klasowe.