Tabela strategii i krzywa strategii
Powtarzając obliczenia z poprzedniego ćwiczenia dla kilku poziomów akceptacji, możesz uzyskać tabelę strategii. Taka tabela może być przydatnym narzędziem dla banków – daje im lepszy wgląd w definiowanie strategii akceptacji.
Wiesz już, jak obliczyć wskaźnik złych kredytów dla danego poziomu akceptacji, dlatego funkcja strategy_bank została napisana i wczytana do twojego środowiska pracy, aby przyspieszyć ten proces. Funkcja ta oblicza punkt odcięcia oraz wskaźnik złych kredytów dla poziomów akceptacji będących wielokrotnościami 5% (0%, 5%, 10%, …).
To ćwiczenie jest częścią kursu
Modelowanie ryzyka kredytowego w R
Instrukcje do ćwiczenia
- Przyjrzyj się funkcji
strategy_bank. - Wektor
predictions_cloglogzawiera przewidywane prawdopodobieństwa niewywiązania się ze zobowiązań (ang. default) uzyskane przy użyciu modelu cloglog z rozdziału 2. Wektorpredictions_loss_matrixzawiera przewidywane prawdopodobieństwa niewywiązania się ze zobowiązań uzyskane przy użyciu przyciętego drzewa decyzyjnego z macierzą strat (skonstruowanego wcześniej w rozdziale 3). Zastosuj funkcjęstrategy_bankdo każdego z wektorów predykcji i przypisz wyniki odpowiednio do zmiennychstrategy_cloglogorazstrategy_loss_matrix. - Tabele strategii możesz uzyskać, używając tych nazw obiektów w połączeniu z
$table. - Krzywe strategii zostały już dla ciebie wyrysowane. Krzywa strategii modelu drzewa wykazuje dość nieoczekiwane zachowanie. Ze względu na strukturę drzew klasyfikacyjnych ryzyko pojawienia się takich gwałtownych „skoków" jest większe. Poza tym drzewo z macierzą strat było bardzo rozbudowane – może to być skutek przetrenowania (ang. overfitting)!
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Have a look at the function strategy_bank
# Apply the function strategy_bank to both predictions_cloglog and predictions_loss_matrix
# Obtain the strategy tables for both prediction-vectors
# Plot the strategy functions
par(mfrow = c(1,2))
plot(strategy_cloglog$accept_rate, strategy_cloglog$bad_rate,
type = "l", xlab = "Acceptance rate", ylab = "Bad rate",
lwd = 2, main = "logistic regression")
plot(strategy_loss_matrix$accept_rate, strategy_loss_matrix$bad_rate,
type = "l", xlab = "Acceptance rate",
ylab = "Bad rate", lwd = 2, main = "tree")