1. Nauka
  2. /
  3. Kursy
  4. /
  5. Modelowanie ryzyka kredytowego w R

Connected

ćwiczenie

Macierze pomyłek i dokładność naszych końcowych drzew

W poprzednich ćwiczeniach zbudowano kilka przyciętych drzew decyzyjnych – łącznie cztery. Jak widać, liczba podziałów różni się między nimi dość znacznie:

ptree_undersample  # 7 splits
ptree_prior  # 9 splits
ptree_loss_matrix  # 24 splits
ptree_weights  # 6 splits

Teraz ważne jest, aby sprawdzić, które drzewo osiąga najlepszą dokładność. Zaczniesz od wykonania prognoz na zbiorze testowym, a następnie zbudujesz macierz pomyłek dla każdego z tych drzew. Przy tworzeniu prognoz dodaj argument type = "class". Dzięki temu nie ma potrzeby ustalania progu odcięcia.

Warto jednak pamiętać, że sama dokładność to nie wszystko – równie istotne są czułość i swoistość modelu. Prognozowanie prawdopodobieństw zamiast wartości binarnych (0 lub 1) daje tę przewagę, że próg odcięcia można dowolnie przesuwać. Z drugiej strony, wybór odpowiedniego progu bywa wyzwaniem. Do tego zagadnienia wrócimy w następnym rozdziale.

Dla przypomnienia, oto jak oblicza się dokładność klasyfikacji: $$\textrm{Classification accuracy} = \frac{(TP + TN)}{(TP + FP + TN + FN)}$$

Instrukcje

100 XP
  • Użyj funkcji predict(), aby wygenerować prognozy dla wszystkich czterech drzew. Jako argument newdata podaj test_set. Pamiętaj, aby dodać type = "class"!
  • Zbuduj macierze pomyłek dla każdego z tych drzew decyzyjnych. Skorzystaj z funkcji table() – jako pierwszy argument podaj „prawdziwy" status (używając test_set$loan_status), a po nim prognozę.
  • Oblicz dokładność na podstawie każdej z macierzy pomyłek.