Modul 7: Support Vector Machines - OPGAVE

Denne opgave tager udgangspunkt i tingene gennemgået i afsnittet “Modul 7: Support Vector Machines - EKSEMPEL.”

Datamaterialet til denne opgave findes i datafilen “kreditdefaults_fixed.csv,” som vi også så på i opgaven til modul 2. Det er variablen default.status vi vil forsøge at beskrive/forudsige på baggrund af en række af datasættets øvrige variable.

Indlæsning af data

For at reducere beregningstiden indlæses kun de første 2.000 observationer fra datasættet.

kredit <- read.csv('kreditdefaults_fixed.csv')[1:2000,]
  1. Variablene kredit.rating og bolig.status er begge givet som tekst. Lav hver variabel om til en faktor v.hj.a. følgende kommandoer:
kredit$kredit.rating %<>% factor(levels=c("A","B","C","D","E","F","G"))
kredit$bolig.status %<>% factor(levels=c("Belånt","Ejer","Lejer"))
  1. Variablen default.status er ligeledes givet som tekst. Lav variablen om til en faktor (og udskrift samtidig værdien ikke default med default v.hj.a. følgende kommandoer:
kredit$default.status <- ifelse(kredit$default.status=="ikke default","ikke_default","default")
kredit$default.status <- factor(kredit$default.status, levels=c("ikke_default", "default"))
  1. Klargør datasættet til estimation af en SVM model variablen default.status ved at opdele datasættet i trænings- og testdatasæt (træning = 2/3, test = 1/3)

Estimation af Support Vector Machine model

  1. Estimér en SVM model med radial kerne for default.status og alle øvrige variable som forklarende variable

  2. Prædiktér default.status i testdatasættet på baggrund af modellen i punkt 4 og beregn den tilhørende confusion matrix

  3. Prædiktér sandsynligheder for værdierne ikke_default og default for default.status i testdatasættet på baggrund af modellen i punkt 4 og tegn histogrammer af sandsynlighederne (opdelt på ikke_default hhv. default)

  4. Tegn ROC-kurve og beregn AUC hørende til modellen fra punkt 4

  5. Vurdér betydningen af de enkelte forklarende variable i modellen fra punkt 4 ud fra variable importance og partial dependence plots

  6. Reestimér modellen fra punkt 4, idet observationer af default vægtes 10 gange højere end observationer af ikke_default (sættes v.hj.a. class.weights(…))