Curbe ROC pentru compararea modelelor de regresie logistică
Curbele ROC pot fi create cu ușurință folosind pachetul pROC în R. Să vedem dacă există diferențe semnificative între curbele ROC pentru cele patru modele de regresie logistică utilizate de-a lungul acestui curs. Câteva precizări:
predictions_logitconține predicții ale probabilității de nerambursare (PD) folosind link-ul logit implicit și variabileleage,emp_cat,ir_catșiloan_amnt.predictions_probitconține predicții PD folosind link-ul probit și variabileleage,emp_cat,ir_catșiloan_amnt.predictions_cloglogconține predicții PD folosind link-ul cloglog și variabileleage,emp_cat,ir_catșiloan_amnt.predictions_all_fullconține predicții PD folosind link-ul logit implicit și toate cele șapte variabile din setul de date.
Vei trasa mai întâi curbele ROC pentru aceste patru modele într-un singur grafic. Apoi, vei analiza aria de sub curbă.
Acest exercițiu face parte din cursul
Modelarea riscului de credit în R
Instrucțiuni pentru exercițiu
- Încarcă pachetul pROC în consola R.
- Construiește obiectele ROC pentru cele patru modele de regresie logistică folosind funcția
roc(response, predictor). Reține că răspunsul (response) este indicatorul statusului creditului dintest_set, accesibil printest_set$loan_status. - Folosește obiectele create anterior pentru a trasa curbele ROC. Pentru a le afișa pe toate într-un singur grafic, folosește
plot()pentru prima curbă ROC (cea pentruROC_logit), iar pentru celelalte trei modele folosește [lines()](https://www.rdocumentation.org/packages/graphics/functions/lines to add the ROC-curves) pentru a le adăuga în același grafic. - Folosește argumentul
colpentru a schimba culoarea curbeiROC_probitîn"blue", a luiROC_cloglogîn"red"și a luiROC_all_fullîn"green". Reține că, spre deosebire de ce s-a discutat în videoclip, eticheta axei x este Specificity și nu "1-Specificity", ceea ce înseamnă că axa merge de la 1 în stânga la 0 în dreapta. - Se pare că funcția de link nu are un impact major asupra curbei ROC, iar principalul factor care îmbunătățește ROC este includerea mai multor variabile în model. Pentru a evalua cu precizie performanța curbelor ROC, analizează valorile AUC folosind funcția auc().
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# Load the pROC-package
# Construct the objects containing ROC-information
ROC_logit <- roc(test_set$loan_status, predictions_logit)
ROC_probit <-
ROC_cloglog <-
ROC_all_full <-
# Draw all ROCs on one plot
plot(___)
lines(___, col=___)
lines(___, col=___)
lines(___, col=___)
# Compute the AUCs