kadi_kilgi_msc_2022.pdf

Type: Document | Status: ready

Tartu Ülikool Loodus- ja täppisteaduste v aldkond Matemaatika ja statistika instituut Kadi Kilgi Hospitaliseerimise riski prognoosimine krooniliste haigustega patsientidel Kindlustus- ja finantsmatemaatika Magistritöö (30 EAP) Juhendajad: Mark Gimbutas, MSc Prof. Krista Fischer, PhD Tartu 2022 HOSPIT ALISEERIMISE RISKI PROGNOOSIMINE KROONILISTE HAIGUSTEGA P A TSIENTIDEL Magistritöö Kadi Kilgi Lühikokkuvõte Käesoleva magistritöö eesmärk on eelmise aasta riskipatsientide raviarvete andmeid kasutades prognoosida järgmisel aastal välditavat hospitaliseerimist vajavad patsiendid. Riskipatsiendiks loetakse krooniliselt haiget inimest, kel- lel on suurenenud risk tervise halvenemisele. Lisaks on soov mudeliga hinnata patsientidele hospitaliseerimise riskiskoor, mille alusel patsiendid järjestada. Töö teoreetilises osas tutvustatakse masinõppe metoodikat ning kirjeldatak- se töös kasutatavaid klassifitseerimismeetodeid. Lisaks tehakse ülevaade ta- sakaalustamata andmete probleemist ning võimalikest lahendustest. Seejärel tehakse ülevaade riskipatsientide definitsioonist ning kirjeldatakse valimis- se sattunud patsiente. Töö praktilises osas katsetatakse erinevaid klassifit- seerimismeetodeid ning võrreldakse erinevaid lähenemisi hospitaliseerimiste prognoosimisel. Töö tulemusena valitakse parim meetod ning katsetatakse valitud mudelit uute andmete korral. CERCS teaduseriala: P160 Statistika, operatsioonianalüüs, programmee- rimine, finants- ja kindlustusmatemaatika. Märksõnad: Tehisõpe, üldistatud lineaarsed mudelid, otsustusmets, närvi- võrk, prognostika. 1 PREDICTING HOSPIT ALIZA TION RISK AMONG P A TIENTS WITH CHRONIC DISEASES Master thesis Kadi Kilgi Abstract The aim of this master’s thesis is to use data of medical claims from last year about high-risk patients and find a model that would predict avoidable hospital admissions next year. High-risk patients are patients with chronic diseases, whose health might worsen. In addtion, the model should give a patient a risk score for hospitalization, which could be used to order the high-risk patients. In theoretical part, the concept of machine learning is introduced. Also, the classifiers that are used for modelling are presented. Furthermore, the problem of imbalanced data is pointed out with possible solutions. Next, the definition of high-risk patient is described. In addition, a general description of a patient in the dataset is given. In the practical part, different classifiers are compared for modelling hospital admissions and the best model is selected. At the end, a final best model is chosen and it’s performance is evaluated in case of new data. CERCS research specialisation: P160 Statistics, operations research, programming, financial and actuarial mathematics. Key Words: Machine learning, generalized linear models, random forest, neural networks, prediction. 2 Sisukord Sissejuhatus 5 1 Metoodika 7 1.1 Masinõpe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 1.2 Klassifitseerimine . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 1.3 Üldistatud lineaarsed mudelid . . . . . . . . . . . . . . . . . . . . . 10 1.4 Otsustuspuu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 1.5 Otsustusmets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 1.6 Närvivõrgud . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 1.7 Mudeli võimekuse hindamine . . . . . . . . . . . . . . . . . . . . . 21 1.8 Tasakaalustamata andmed . . . . . . . . . . . . . . . . . . . . . . . 23 1.8.1 Lävendimeetod . . . . . . . . . . . . . . . . . . . . . . . . . 24 1.8.2 Valikumeetod . . . . . . . . . . . . . . . . . . . . . . . . . . 25 2 Andmed 27 2.1 Riskipatsiendid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 2.2 Tunnused . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 2.3 Andmete töötlus . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 2.4 Andmete kirjeldus . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 3 Analüüs 39 3.1 Eeltöö . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 3.2 Tulemused valideerimisandmetel . . . . . . . . . . . . . . . . . . . . 40 3.2.1 Lävendimeetod . . . . . . . . . . . . . . . . . . . . . . . . . 40 3

3.2.2 Tasakaalustatud andmed . . . . . . . . . . . . . . . . . . . . 44 3.2.3 Kaalutud vaatlused . . . . . . . . . . . . . . . . . . . . . . . 46 3.3 Tulemused testandmetel . . . . . . . . . . . . . . . . . . . . . . . . 46 3.4 Tulemused uutel andmetel . . . . . . . . . . . . . . . . . . . . . . . 48 Kokkuvõte 50 Kasutatud materjalid 52 Lisa 1. Kaasuvad diagnoosid. 58 Lisa 2. V aimsete häirete diagnoosid. 60 Lisa 3. Kasutatud raviteenused. 61 Lisa 4. Kasutatud A TC-koodid. 64 Lisa 5. Diskreetsete tunnuste teisendamine. 65 Lisa 6. Kategooriliste tunnuste moodustamine. 66 Lisa 7. Lassoregressiooniga alles jäänud tunnused. 67 4 Sissejuhatus Käesoleva töö raames on vaatluse all vähemalt ühe kroonilise haiguse diagnoosiga (hüpertensioon, hüperlipideemia, diabeet) patsiendid. Neil on tihti veel teisi kaasu- vaid haiguseid ning nad kasutavad mitmeid erinevaid ravimeid. Lisaks vajavad nad haiguste ägenemisel erinevaid tervishoiuteenuseid. Oma terviseseisundi tõttu on neil suurenenud risk tervise halvenemisele. Kirjeldatud patsiente nimetatakse ris- kipatsientideks. (Šteinmiller, 2021) Uuringuga (Eesti Haigekassa ja Maailmapanga Grupp, 2015) on kindlaks tehtud, et perearsti sekkumisega on võimalik riskipat- sientide kroonilise haiguse halvenemisest tingitud välditavaid hospitaliseerimisi ära hoida. Magistritöö eesmärk on eelmise aasta riskipatsientide raviarvete andmeid kasuta- des prognoosida järgmisel aastal välditavat hospitaliseerimist vajavad patsiendid. Leitava mudeli eesmärk on patsiendid klassifitseerida kõrge ja madala hospitalisee- rimise riskiga patsientideks. Lisaks klassifitseerimisele on soov patsiendid järjesta- da mõne riskiskoori alusel, näiteks hospitaliseerimise tõenäosuse järgi. Riskiskoori kasutades saab riskipatsiendid järjestada ning jälgimise alla võtta just kõrgema riskiga patsiendid, kellel on risk järgmisel aastal välditavaks hospitaliseerimiseks. Töö koosneb kolmest peatükist. Esimeses peatükis antakse ülevaade masinõppe metoodikast ning kirjeldatakse klassifitseerimismeetodeid, mida töös kasutatakse. Lisaks tehakse ülevaade tasakaalustamata andmete probleemist ning võimalikest lahendustest. Teises peatükis kirjeldatakse riskipatsiendi mõistet ning analüüsiks kasutatavaid andmeid. Lisaks tehakse ülevaade andmete töötlusest ning valimisse sattunud riskipatsientidest. Viimases peatükis kirjeldatakse praktilise osa tulemusi. Töö praktilises osas katsetatakse erinevaid klassifitseerimismeetodeid ning võrrel- dakse erinevaid lähenemisi välditavate hospitaliseerimiste prognoosimisel. Lõpuks valitakse vaadeldud mudelitest välja parim mudel. Seejärel leitakse parima mudeli prognoosid uute andmete korral ning hinnatakse nende täpsust. 5

Lõputöö on vormistatud tekstitöötlusprogrammiga LATEX. Praktilises osas kasu- tatakse rakendustarkvara R (R Core Team, 2022b) ja Python (Python Software Foundation, 2001-2022). 6

1 Metoodika Järgnevas peatükis tutvustatakse analüüsiks vajalikke mõisteid ja meetodeid. Pea- tükis kasutatud eestikeelsed vasted põhinevad allikatest Tiit ja Tooding (2019) ning Data Science Estonia (2022). 1.1 Masinõpe Alapeatükk põhineb raamatutel Goodfellow, Bengio ja Courville (2016, ptk 5) ning James et al. (2021, lk 15–33, 197–200), kui ei ole märgitud teisiti. Masinõppe (machine learning) meetodid on järjest enam populaarsust koguvad meetodid, mille edu tuleneb andmemahtude kiirest kasvust. Masinõppe eesmärk on andmete pealt õppida ja lahendada soovitud probleem. Ülesande lahendamiseks kasutatakse andmestikku X ∈Rn×p, mis koosneb vaatlustest (observations, examp- les). Masinõppe algoritmid jagunevad kaheks: juhendatud õpe (supervised learning) ja juhendamata õpe (unsupervised learning). Erinevus seisneb selles, et juhendatud õppe puhul on lisaks sisendandmetele teada ka uuritava tunnuse väärtused ehk mudeli õpetamisel on ka tulemus teada. Juhendamata õppe puhul ei ole väljund teada, vaid algoritmide abil otsitakse andmestikest seoseid ja kasulikke omadusi. Antud töö käigus keskendutakse juhendatud õppe meetoditele. Juhendatud õppe meetodeid kasutatakse uutel andmetel prognoosi leidmiseks. See- ga mudeli treenimisel on oluline, et hinnatav mudel teeks vähe vigu nii treeningand- metel kui ka uutel andmetel. Selleks, et hinnata mudeli võimekust (model perfor- mance) uute andmete korral, jagatakse töödeldud andmestik kaheks: treening- ja testandmeteks (vt joonis 1). Treeningandmestikku kasutatakse mudeli parameetri- te hindamiseks ning testandmestikku mudeli võimekuse hindamiseks. Oluline on, et testandmestikuga ei oleks mudel treeningprotsessi käigus kordagi kokku puutunud. 7

Joonis 1: Andmete jaotumine treening-, valideerimis- ja testandmeteks Andmestiku jagamisel kaheks peab leidma tasakaalu, et mudeli treenimiseks jääks piisavalt andmeid ning et testandmestik ei oleks samal ajal liiga väike. Masinõppe meetoditel kasutatakse lisaks mudeli parameetritele ka hüperparameet- reid (hyperparameters), mis määratakse mudeli treeningprotsessist väljaspool. Hü- perparameetrite valik mõjutab mudeli sobituvust andmetele, seega on vajalik nen- de seadistamine. Oluline on, et hüperparameetrite valikul kasutatakse samuti ai- nult treeningandmestikku, sest see on osa mudeli hindamisest. Hüperparameetri- te valimiseks jaotatakse olemasolev treeningandmestik kaheks: treening- ja vali- deerimisandmestikuks (vt joonis 1). Valideerimisandmestikku kasutatakse hüper- parameetrite valimiseks. Andmestiku jagamiseks saab kasutada rakendustarkvara R paketti rsample funkt- siooni initial_split. Antud funktsioonile tuleb ette anda osakaal andmestikust, mi- da soovitakse kasutada mudeldamiseks. Vaikeväärtusena on treeningandmestiku osakaaluks 0,75. Selleks, et uuritava tunnuse jaotus oleks sama nagu algses and- mestikus, saab määrata tunnuse, mille järgi moodustatakse kihtvalim (stratified sampling). Kirjeldatud funktsiooni saab kasutada nii test- kui ka valideerimis- andmestiku moodustamiseks. (Silge et al., 2021) 8

1.2 Klassifitseerimine Järgnev alapeatükk põhineb raamatutel James et al. (2021, lk 16–21, 129–133) ning Goodfellow, Bengio ja Courville (2016, lk 97), kui ei ole märgitud teisiti. Uuritav tunnus võib olla nii kvantitatiivne kui ka kvalitatiivne. Antud töö käigus keskendutakse kvalitatiivsele tunnusele ning uuritakse klassifitseerimismeetodeid (classification). Kvalitatiivne tunnus võib olla oma olemuselt nominaalne, binaarne või pidev tunnus, mis on jaotatud kategooriateks. Kvalitatiivne tunnus on näiteks: • haridustase (põhi-, kesk- või kõrgharidus), • haigestunud vähki või mitte, • alla keskmist palka saavad inimesed ja üle keskmist palka saavad inimesed. Klassifitseerimisülesande korral treenitakse klassifitseerija (classifier), mis jagab vaatlused sobivasse klassi k. Klassifitseerija treenimise käigus soovitakse hinna- ta funktsioon f : Rn →{1, 2, ..., K}, kus K tähistab klasside koguarvu. Funkt- siooni f kirjeldamiseks kasutatakse andmestikku, mis koosneb paaridest (X1, Y1), (X2, Y2),...,(Xn, Yn), kus Xi = (Xi1, Xi2, ..., Xip) ∈Rp, ning leitakse hinnang ˆf nii, et Yi ≈ˆf(Xi). Klassifitseerijaga leitud tulemus võib olla nii konkreetse klassi prognoos kui ka tõenäosus kuuluda mingisse klassi. Antud magistritöö raames on uuritav tunnus binaarne Yi =      1, kui patsient hospitaliseeritakse, 0, kui patsiendi hospitaliseerimist ei toimu. 9

1.3 Üldistatud lineaarsed mudelid Järgnev alapeatükk põhineb raamatutel Jong ja Heller (2008, lk 20–22, 35–40, 64– 70, 97–99) ja James et al. (2021, lk 133–139, 170, 237–242). Üldistatud lineaarsete mudelite korral eeldatakse, et uuritava tunnuse Yi jaotus kuulub eksponentsiaalsete jaotuste perre ning, et uuritava tunnuse keskväärtus µi on seotud kirjeldavate tunnustega mingi teisenduse kaudu. Uuritava tunnuse Yi jaotus kuulub eksponentsiaalsete jaotuste perre, kui tema tõenäosusfunktsioon (diskreetsetel jaotustel) või tihedusfunktsioon (pidevatel jaotustel) avaldub kujul f(Yi) = c(Yi, ϕi) · exp Yiθi −a(θi) ϕi , kus θi on kanooniline parameeter ja ϕi tähistab hajuvuse parameetrit. Funktsioonid a(θi) ja c(Yi, ϕi) määravad ära, mis jaotusega on tegu (näiteks binoomjaotus). Mudeldamisel eeldatakse, et uuritava tunnuse keskväärtus µi on lineaarselt seotud kirjeldavate tunnustega seosefunktsiooni (link function) kaudu g(µi) = β0 + β1 · Xi1 + ... + βp · Xip. Kui uuritav tunnus Yi on binaarne, Yi ∈{0, 1}, siis Yi ∼B(1, pi), kus pi tähistab tõenäosust, et Yi = 1. Bernoulli jaotuse korral E(Yi) ≡µi = pi D(Yi) = pi(1 −pi). Bernoulli jaotus kuulub eksponentsiaalsesse jaotuste perre ning tema tõenäosus- funktsioon avaldub kujul f(Yi) = pYi i (1 −pi)1−Yi. 10

Logistilise regressiooni korral kasutatakse seosefunktsioonina logitfunktsiooni g(pi) = ln pi 1 −pi = β0 + β1 · Xi1 + ... + βp · Xip. Logitfunktsioon kindlustab, et hinnatav tõenäosus jääb vahemikku (0, 1). Logisti- lise regressiooni korral pakub huvi tõenäosuse hindamine E(Yi) = pi = exp (β0 + β1Xi1 + ... + βpXip) 1 + exp (β0 + β1Xi1 + ... + βpXip). Täiend-log-log seosefunktsioon avaldub kujul g(pi) = ln {−ln (1 −pi)} ning pi = 1 −exp (−exp (β0 + β1Xi1 + ... + βpXip)). Parameetrite β = (β0, β1, ..., βp) hindamiseks kasutatakse suurima tõepära meeto- dit. Suurima tõepära meetodi korral maksimeeritakse log-tõepärafunktsioon l(β) = n X i=1 ln f(Yi; β, ϕi) = n X i=1  ln c(Yi, ϕi) + Yiθi −a(θi) ϕi  . Rakendustarkvara R korral kasutatakse üldistatud lineaarsete mudelite hindamiseks paketti stats ning funktsiooni glm. Mudeli parameetrite leidmiseks kasutatakse ite- ratiivset kaalutud vähimruutude meetodit (iteratively weighted least squares). (R Core Team, 2022a) Tunnuste arvu vähendamiseks on võimalik lisada hinnatavatele parameetritele kit- sendused, mis kahandavad parameetrite β1, β2, ..., βp hinnangute väärtused nul- li lähedale ning mõned väärtused ka nulli. Seega minimeeritakse negatiivset log- 11

tõepärafunktsiooni muudetud kujul: min β0,β1,...,βp   −l(β) + λ p X j=1 |βj|   , kus parameeter λ valitakse valideerimisandmestikku kasutades. Kui λ = 0, siis parameetrite hinnangute kahandamist ei toimu. Kirjeldatud meetodit nimetatakse lassoregressiooniks. Antud töös kasutatakse lassoregressiooniks rakendustarkva- ra R paketti tidymodels (Kuhn ja Wickham, 2020) ning funktsiooni glmnet (Kuhn ja Vaughan, 2022). 1.4 Otsustuspuu Järgnev alapeatükk põhineb raamatutel James et al. (2021, lk 327–338) ning Hastie, Tibshirani ja Friedman (2009, lk 305–311), kui ei ole märgitud teisiti. Otsustuspuu ehitamiseks kasutatakse olemasolevaid kirjeldavaid tunnuseid Xj = (X1j, X2j, ..., Xnj)T ∈Rn, ning tekitatakse nende põhjal J mittekattuvat piirkonda R1, R2, ..., RJ ⊂Rp. Piirkondi Rm (m = 1, 2, ..., J) nimetatakse lehtedeks (leaves, terminal nodes). Klassifitseerimise korral leitakse iga piirkonna prognoos vastavalt piirkonda kuuluvatele vaatlustele. Piirkonna prognoosiks saab klass k = 1, 2, ..., K, mida esineb piirkonnas kõige rohkem. Klassifitseerimispuu korral kasutatakse piirkondade leidmisel klassifitseerimisviga E, Gini indeksit G või entroopiat D: E = 1 −max k ˆpmk, G = K X k=1 ˆpmk(1 −ˆpmk), D = − K X k=1 ˆpmk log ˆpmk,, 12

kus ˆpmk = 1 nm P xi∈Rm I(Yi = k) tähistab k-nda klassi osakaalu piirkonnasm ning nm tähistab vaatluste arvu piirkonnasm. Soov on leida piirkonnad nii, et valitud hinnang (E, Gvõi D) oleks minimaalne. Gini indeks ja entroopia on väiksed, kui piirkond m sisaldab rohkelt vaatlusi ühest klassist ehkˆpmk on lähedal nullile või ühele. Kui tegemist on binaarse klassifitseerimisülesandega, kusYi ∈ {0, 1} ning pm1 = P (Yi = 1|Xi ∈ Rm), siis saavad Gini indeks ja entroopia kuju: G = ˆpm0(1 − ˆpm0) + ˆpm1(1 − ˆpm1) = = (1− ˆpm1)ˆpm1 + ˆpm1(1 − ˆpm1) = = 2ˆpm1(1 − ˆpm1) D = −ˆpm0 log ˆpm0 − ˆpm1 log ˆpm1 = = −((1 − ˆpm1) log (1− ˆpm1) + ˆpm1 log ˆpm1). Puu defineerimine algab juurtipust (root node). Vaja on leida tunnusXj ja lõike- punkt s nii, et valitud hinnang (E,G või D) oleks minimaalne. Selliselt tegutsedes saadakse kaks piirkonda: R1(j, s) ={X|Xj < s} ja R2(j, s) ={X|Xj ≥ s}. Seejärel leitakse mõlemas piirkonnas kõige sobilikumad tunnused vahetipu jaoks koos lõikekohtadega. Nii jätkatakse, kuni lehed sisaldavad eelnevalt fikseeritud mi- nimaalse arvu vaatlusi. Jõudes lehtedeni, mis sisaldavad minimaalse arvu vaatlusi, jõutakse suurima puuni T0. Sellise otsustuspuu puhul on oht treeningandmetele ülesobitamisele (overfit- ting), mis teeb mudeli kasutuks uute andmete korral. Selleks, et leida parim puu suurus, kasutatakse puu pügamist (prune a tree), mille käigus leitakse alampuu T ⊂ T0 lehtede kokku liitmisel. Sobivate lehtede kokku liitmisel kasutataksecost 13 complexity pruning/weakest link pruning meetodit. Meetodi käigus leitakse para- meetri α, α ≥0, väärtuste korral alampuud Tα nii, et minimeeritakse Cα(T) = |T| X m=1 K X k=1 ˆpmk(1 −ˆpmk) + α · |T|, kus |T| tähistab lehtede arvu puus. Mida väiksem on α, seda sügavam on puu. Lehti saab liita seni kuni jõutakse juurtipuni välja. Joonis 2: Otsustuspuu üleshituse näide Joonisel 2 on toodud näide töös kasutatavast andmestikust ja sellele ehitatud ot- sustuspuust. Otsustuspuu treenimiseks kasutati rakendustarkvara R paketti rpart (Therneau, Atkinson ja Ripley, 2022) ning joonise tekitamiseks kasutati paketti rpart.plot (Milborrow, 2021). Kujutatud puul on 6 lehttippu ning 4 vahetippu, mil- le defineerimiseks kasutati 3 tunnust. Joonisel kujutatud kastid annavad informat- siooni, mis on tipu poolt prognoositud klass, mis on hospitaliseerimise tõenäosus ja vaatluste osakaal, mis sattusid tippu. Iga tipu juures on toodud tingimus, mille 14

Page 1 of 6