Google’s EPD-voorspellingen

Hoe fijn zou het zijn als je met behulp van artificiële intelligentie aan de hand van het EPD zonder verdere tussenkomst van een arts medische conclusies, voorspellingen en behandelopties zouden kunnen worden gegenereerd. Recent presenteerde Google een algoritme dat diagnoses destilleert uit het EPD en voorspellingen doet over mortaliteit, heropname en lange opnameduur. Het is terecht dat er aandacht is voor een model dat zulke prestaties neerzet, ook al is het niet het eerste model dat met dit doel ontwikkeld werd. Wat me wel verbaast is dat – ondanks de media-aandacht – niemand de moeite neemt om uit te leggen hoe het model precies werkt. Begrip van het model leidt immers tot een betere inschatting van de (on)mogelijkheden. In dit artikel volgt daarom een globale beschrijving van de werking van het model, aan de hand van de verschenen artikelen van Google (het Nature-artikel van mei jl. werd voorafgegaan door een arXiv.org-artikel in januari 2018).

De ontwikkeling van een A.I.-model
Machine learning suggereert dat het meeste werk in het trainen van het model zit. Als het aantal berekeningen als maat wordt genomen, dan is dat in feite ook zo. Het geluk is dat de computer dat deel voor zijn rekening neemt. Het meeste werk zit hem voor de data scientist in het ‘klaarzetten’ van alle data voor het rekenmodel. Er moet een mapping worden gemaakt van de gegevens zoals deze in het EPD staan naar de input-features van het model. Vaak moeten de EPD-gegevens nog een veranderslag ondergaan om door een model verwerkt te kunnen worden. Deze exercitie vormt het leeuwendeel van het werk. Om deze hoeveelheid werk te verminderen heeft google het model zó ingericht dat de data uit het EPD kunnen worden gelezen met behulp van de FHIR-standaard. In theorie kan het model op deze manier data uit ieder interoperabel EPD volgens de FHIR standaard gegevens trekken om te verwerken. Dus zodra ieder ziekenhuis op dit punt aan de VIPP-norm voldoet kunnen we het model hier toepassen. Dit onderdeel van het experiment is misschien wel de allerbelangrijkste bijdrage aan het onderzoeksveld! Er zijn al vele honderden predictive analytics tools maar ze worden slechts mondjesmaat gebruik, en dat heeft te maken met de moeizame technische implementatie, voor een groot deel vanwege gebrekkige interoperabiliteit. Complimenten voor Google!

Ensemble van 3 modellen
Google nam geen genoegen met een enkel model maar berekende de gemiddelde voorspelling van 3 modellen. Dit wordt vaker gedaan om de tekortkomingen van het ene model te verbloemen met een ander model. De drie modellen zijn fundamenteel verschillend. Het eerste model is het meest interessant omdat dit soort modellen steeds meer wordt ingezet voor natural language processing, waarover later meer. De drie modellen betreffen een recurrent neuraal netwerk, een ’time aware’ feedforward neuraal netwerk en een ‘boosted embedded time-series’-model. Over de laatste twee modellen kan ik kort zijn. In beide gevallen wordt de predictie uiteindelijk gedaan door een standaard feedforward neuraal netwerk. In het 2e model wordt de data ingedeeld in tijdintervallen, die als gewogen gemiddelde worden gevoed aan het neurale netwerk. Het 3e model is samengesteld uit een ‘beslisregel-generator’ en een standaard neuraal netwerk. De beslisregel-generator maakte eerst miljoenen binaire beslisregels zoals ‘is het Hb hoger dan 7’, gebaseerd op alle data-items en mogelijke waarden ervan. Met machine learning werden de meest belovende beslisregels geselecteerd en weer gevoed aan een standaard feedforward neuraal netwerk. Aan de hand van het eerste model, het recurrente neurale netwerk (RNN), zal het artikel verder beschreven worden.

Natural Language Processing
In een aantal nieuws-artikelen over dit onderzoek wordt geclaimd dat dit model in staat zou zijn om handgeschreven tekst te interpreteren. Er is zelfs een artikel dat eerst roept dat er veel indianenverhalen rondom het model zijn ontstaan om vervolgens ook deze onwaarheid te verkondigen. Het model verwerkt digitale vrije tekst, niet handgeschreven. Dit valt onder de noemer Natural Language Processing (NLP). Het is van belang te benoemen wat het model met de digitale tekst doet. Er is namelijk geen interpretatie-algoritme. Het model maakt geen gebruik van de argumentatie in de tekst. Wat wel gebeurt is dat de woorden uit de tekst worden omgezet in een rij getallen, een ‘embedding’, die verder wordt verwerkt. In de getallen van zo’n embedding zitten – in een voor het menselijk oog onleesbare code – de karakteristieken van het woord verwerkt, zoals ‘mannelijk/vrouwelijk’, ‘eetbaar’, ‘oud/jong’, etc. Normaal worden deze embeddings stuk voor stuk aan een model gevoed. Bij het RNN-model worden de embeddings van alle woorden van een notitie in één keer gemiddeld alvorens ze aan het model te voeden. Het kan niet anders dan dat daar informatie bij verloren gaat. Kennelijk is de data in het EPD redundant genoeg, want dit model is het best voorspellende model ooit.

Natural EPD Processing
Embeddings worden al langer gebruikt als representatie van woorden in getallen. Nieuw voor mij is dat niet alleen de vrije tekst, maar zelfs alle informatie in het EPD wordt omgezet in embeddings. Het is zo dat je voor een netwerkcel moet instellen of er wel of niet een embeddinglaag in zit. Omdat alle data aan de cel wordt gevoed, is dit allicht onontkoombaar. Aan de andere kant voorkomt dit eindeloze one-hot-vectors omdat de embedding eigenlijk de uiting is van het belang van de waarde van het dataitem, nog voor de weging van het dataitem. Deze embeddings werden door alle drie modellen gebruikt.

Recurrent neuraal netwerk
Het eerste model betreft een recurrent neuraal netwerk met ‘LSTM-cellen’. Wat houdt dat in? Hiervoor moeten we een beetje de diepte in. Ik zou iedere lezer aanraden dit filmpje te bekijken als dat nog niet werd gedaan. In het filmpje wordt heel intuïtief uitgelegd wat een (standaard) neuraal netwerk nu eigenlijk is. Het verschil met een recurrent of sequentieel neuraal netwerk is dat een recurrent neuraal netwerk per tijdseenheid data wordt gevoerd en aan het einde van deze data-ketting met een voorspelling komt. Voor gevorderden is een mooie en indrukwekkende blog door een vooraanstaand A.I.-wetenschapper geschreven over de werking van recurrente neurale netewerken. Het blijkt dat de simpele vorm van een neuraal netwerk na een aantal tijdstappen nog wel eens cruciale informatie gaat ‘vergeten’. Daarom is er een LSTM-vorm bedacht die ook een soort lange termijn geheugen heeft (LSTM staat voor long-short-term-memory). Dit klinkt complex, maar als je het rekenprincipe doorhebt dan snap je niet hoe zo’n simpel model uiteindelijk in staat is om in een andere setting bijvoorbeeld gesproken taal om te zetten in digitale tekst. In dit geval wordt dit model gebruikt door Google om de data van de patiënt per tijdsinterval te verwerken om aan het einde van de rit met een voorspelling te komen, zoals heropnamerisico of een diagnose. De diagnose uit de volledige ICD-9 kan met een micro-F1-score van 0,4 worden gesteld, wat een sterke verbetering is ten opzichte van eerdere modellen.

Black Box
We zullen niet te weten komen welke woorden in de tekst belangrijk zijn omdat er al gemiddelden van berekend zijn voordat ze het model in gaan. Dat geeft dan weer een nadeel van dit soort complexe modellen weer: het is moeilijk om te beoordelen hoe het model tot zijn voorspelling komt, welke factoren bij deze patient van belang zijn. Het is een Black Box model. Google heeft dat voor de Bühne opgelost door speciaal met dit doel een model te maken en dusdanig in te richten dat wel zichtbaar wordt hoe de voorspelling tot stand komt. Lastig is dat dit ’transparante’ model dan weer minder goed is dan het oorspronkelijke model. Ten slotte blijft de vraag open welk model van de drie het meest betrouwbaar is. De uiteindelijke predictie is het resultaat van een gemiddelde van drie modellen. Is het echt nodig om ieder model te implementeren? Onder welke omstandigheden presteerde welk model beter? Die vragen blijven onbeantwoord.

Conclusie
Google heeft indrukwekkend werk geleverd. Niet alleen werd een FHIR geadopteerd voor interoperabiliteit. Ook werden met alle beschikbare data goede voorspellingen gedaan van overlijdensrisico, heropname binnen 30 dagen en langere opname duur dan 7 dagen. Overigens is de voorspelling van heropname door Google maar nét beter dan een model van Epic (AUROC 0.75 vs 0.74), terwijl dat laatste model met een ouderwetse Lasso-analyse werd gecreëerd en in productiesetting de voorspellingen met lineaire regressie worden berekend. Dat is dus een hoop tijd en middelen voor 0.01 stijging van de AUROC. Mijn bedenkingen gaan overigens uit naar de voorspelling van overlijden. Die zou wel eens als een self fullfilling profecy kunnen werken, uitkijken dus of een andere naam geven. Voor het overige is de sky natuurlijk de limit! Ik zie de diagnosesuggesties al voor me op mijn beeldscherm, met benodigde orders en medicatie, terwijl de kwaliteit toeneemt omdat complicaties van tevoren worden herkend. Geneeskunde gaat exponentieel veranderen.

Geef een reactie

Je e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *

Deze site gebruikt Akismet om spam te verminderen. Bekijk hoe je reactie-gegevens worden verwerkt.