Illustrationsbillede indhold

Overgangssandsynligheder

Beregningen af sandsynligheder i SMILE er afgørende for, hvilke hændelser der indtræffer for agenterne i modellen. Fagligt betegnes disse sandsynligheder som overgangssandsynligheder, fordi de bestemmer sandsynligheden for at overgå fra en tilstand til en anden.

Metodevalget til at beregne overgangssandsynligheder er på den ene side datadrevet, men afhænger også af en række antagelser.

Valget af model til at beregne overgangssandsynligheder er drevet af data, fordi metoden til at beregne overgangssandsynligheder bestemmes af, hvilken model, der prædikterer bedst på nyt data. Prædiktionsevne bestemmes på baggrund af krydsvalidering af et relevant performance mål for modellen.

Krydsvalidering

For at kunne vurdere forskellige modellers prædiktionsevne (og der ved fastlægge overgangssandsynligheder) bruges krydsvalidering. Det sker ved i praksis at data deles op i et trænings-sæt og et test-sæt.

Træningssættet deles herefter yderligere op i 10 sæt (se figur). Ud fra disse 10 datasæt laves 10 resamples. Hver resample opdeles i hhv. et analyse-datasæt og et vurderingssæt. Hver analysesæt indeholder 9 af de opdelte træningssæt, mens vurderingssættet udgøres af det resterende sæt data. Det giver mulighed for at estimere/træne en given model 10 gange, hvor modellen både trænes og evalueres med forskellige sammensætninger af data. 

Denne krydsvalideringsproces kaldes k-fold cross-validation og er i SMILE den dominerende metode, fordi estimationerne er baseret på store datasæt. Der findes også andre mere avancerede krydsvalideringsmetoder, som dog i højere grad er rettet mod mindre datasæt, hvor præcisionen af estimationerne kan være et problem.

Se Kuhn og Johnson (2019) for en videre diskussion af krydsvalideringsmetoder.

 

Modeludvælgelse

Modeller, som bestemmer overgangssandsynligheder for hændelser i SMILE, vælges på baggrund af, hvor godt modellerne performer ved krydsvalidering. Et eksempel kan være, at man bruger en logistisk regression til at estimere sandsynligheden for, at en person dør. I en type model (model 1) bestemmes sandsynligheden for at dø kun ud fra alder, mens en anden model (model 2) både inkluderer alder og køn. Hvis model 2 klarer sig bedre en model 1, vælges model 2 og omvendt.

Der bruges andre typer algoritmer end logistisk regression til at lave en prædiktionsmodel. Den dominerende algoritme, der bruges i SMILE er det såkaldte CTREE (Conditional Inference Tree). Ovenstående eksempel kunne således udvides med, at man har en tilsvarende model 3 og model 4, der på samme måde estimere sandsynligheden for at dø på baggrund af hhv. alder eller alder og køn. Den optimale model af 3 og 4 udvælges. Herefter undersøges performance af forskellige modeltyper på test data. I nedenstående figur er processen stillet skematisk op. Her vises proceduren for en række udvalgte algoritmer, som kunne anvendes til et klassifikationsproblem.

 

Selvom det tilstræbes, at modelvalget primært er datadrevet, så er modeludviklingen også til dels præget af den erfaring, der besiddes af modeludviklere i DREAM. Den erfaringsdrevne modeludvikling beror sig primært på udvælgelse af relevant data, valg af estimationsperiode og udvælgelse af relevante algoritmer til at beregne overgangssandsynligheder.

Typisk kan mere komplekse modeller som Random Forest give bedre prædiktion, men mere udfordrende at implementere i praksis. Der er eksempelvis ikke for nuværende en implementering af Random Forest i SMILE, men modellen kan bruges som performance-benchmark af øvrige (og mere simple) modeller, som lettere kan implementeres i SMILE. Særligt hvis mere simple modeller performer nogenlunde ligeså godt som mere komplekse modeller, kan de simple modeller være fordelagtige, fordi de ofte er nemmere at tolke på og nemmere at implementere. Se kapitel 4 i Applied Predictive Modeling (Kuhn og Johnson , 2013) for en videre diskussion af udvælgelse af modeltyper.

Performancemål

Det er vigtigt at evaluere sine modeller på baggrund af relevante performancemål. Valget af performance mål for estimationsmodellerne afhænger i første omgang af, om der skal prædikteres en numerisk værdi, så der er tale om en regressionsmodel, eller om der skal prædikteres en kategori, så der er tale om en klassifikationsmodel.

Det er ofte simplere at vælge performancemål for regressionsmodeller, fordi der overordnet er to dominerende mål. Det første mål er modellens gennemsnitlige afvigelse (Mean Average Error/MAE), men det andet og mest populære er mål er den gennemsnitlige kvadrerede afgivelser (Root mean squared error/RMSE). I begge tilfælde performer en model bedre, jo lavere MAE eller RMSE den har. Her foretrækkes RMSE ofte, fordi målet i højere grad ”straffer” modeller, hvor der er punkter med høj afvigelse. I andre tilfælde kan MAE være at foretrække, hvis der ønskes en model, der er mindre sensitiv overfor ”outliers”.

For klassifikationsmodeller er der en lang række muligheder for at måle en models performance. For nogle klassifikationsproblemer er den primære interesse at lave ”hårde” prædiktioner (f.eks. har en person en livstruende sygdom eller ej), mens det for andre klassifikationsproblemer er mere relevant af lave ”bløde” prædiktioner, hvor det er klasse-sandsynlighederne, der har den primære interesse (f.eks. hvad er sandsynligheden for, en person har en livstruende sygdom). Man kan sige, at der kan sondres i mellem om modellen skal identificere de korrekte personer eller blot skal identificere et korrekt gennemsnit.

Til fremskrivningen i SMILE anvendes en kombination of estimerede sandsynligheder og Monte Carlo simulation.

Læs mere om Monte Carlo simulation

Derfor er den primære interesse i SMILE, at lave modeller, der er optimeret i forhold til at prædiktere klasse-sandsynligheder fremfor egentlig klasser, som først endeligt afgøres ved Monte Carlo simulation. Her er det en fordel, at bruge log-likelihood[1] både for klassifikationsproblemer med to udfald men også for tre eller flere udfald, fremfor performance mål som accuracy, precision, sensitivity, specificity eller AUC, som i højere grad relaterer sig til ”hårde” prædiktioner[2]. Den bedste model udvælges ved at vælge den model, hvor log-likelihood maksimeres. Log likelihood maksimeres ved at værdier blandt observationer prædikteres til den rigtige klasse med høj sandsynlighed. I forhold til andre performance mål, giver log-likelihood tilgangen mulighed for at tage med i vurderingen, hvor meget den prædikterede sandsynlighed afviger fra den faktiske prædiktion.

Visualisering af resultater

Det kan være fornuftigt at visualisere resultatet af sine estimationer for at vurdere, om der er oplagte mønstre i data, som modellen ikke fange, selvom en prædiktiv models performance formelt vurderes på baggrund af statistiske performance mål.

Ved klassifikationsmodeller prædikteres klassesandsynligheden for alle observationer. Herefter laves en klassificering ved hjælp af Monte Carlo simulation. Det giver mulighed for, at eksempelvis andelen af prædikterede døde fordelt på alder kan holdes op mod den faktiske andel, der dør, opdelt på alder. Et eksempel er vidst nedenfor, hvor antallet og andelen af døde er vist for test-data (altså data som ikke er blevet anvendt i estimationen) og den simulerede andel/antal af døde på baggrund af karakteristika i test data. Dette giver en uformel inspektion af modellens performance på out-of-sample prædiktion, som kan anvendes til at vurdere modellens præcision i sammenhold med modellens performance mål.

Visualisering kan også give indblik i modellens performance, når der opsplittes på flere karakteristika. Nedenfor er antallet af døde simuleret ved Monte Carlo simulation anvendt på de estimerede sandsynligheder sammenholdt med det faktiske antal døde opdelt på alder, køn og parstatus. Eksemplet her er baseret på et 50 pct. sample af den samlede population i årene 2010-2012. Træningsdata udgør 80 pct. af samplet (ca. 6.656.000 observationer) og test data udgør 20 pct. af sample (ca. 1.664.000 observationer). Dødssandsynligheder er estimeret på et CTREE, der er blevet tunet ved 10-folds krydsvalidering.

Det faktiske antal døde og det simulerede antal døde opdelt på alder, parstatus og køn, viser i tilfældet her, at modellen umiddelbart virker til at ramme mønstre i data meget fornuftigt.

Grafen viser antal døde fra test data og simuleret antal døde ved estimerede dødssandsynligheder. Disse antal er opgjort på tværs af alder, parstatus og køn. Empiriske dødstal og simulerede dødstal ligger oven i hinanden

På samme vis giver en visualisering af den faktiske og den simulerede andel af døde opdelt på alder, parstatus og køn indtryk af, at modellen prædikterer en fornuftig fordeling af andelen af døde på tværs af de viste karakteristika.

Visualisering af den faktisk og simulerede andel af døde opdelt på alder, parstatus og køn. Modellen prædikterer fint den empiriske fordeling af andelen af døde

 

[1] Benævnes også log loss og svarer til målene deviance eller kryds-entropien. Se f.eks. Bishop's (2006) Pattern Recognition and Machine Learning,  Boehmke and Greenweel (2019) Hands on Machine Learning with R eller dokumentionen til machine learning pakken ScikitLearn

[2] Andre sandsynlighedsbaserede mål for klassifikation er entropi og gini. For en videre diskussion af, hvorfor log likelihood foretrækkes, se Kuhn og Johnson (2019) Feature Engineering and Model Selection: A Practical Approach for Predictive Models