GlucoPred
Examensarbete
Prognostiserar blodsocker 15-60 minuter framåt vid typ 1-diabetes, tränad på ~2,5 års CGM- och insulinpumpsdata från mitt barn. En automatiserad pipeline omvandlar råa exporter till en feature-matris med 45 kolumner; en LSTM slår klassiska baslinjer (1,28 mmol/L RMSE vid +30 min), med Clarke Error Grid-analys som visar var träffsäkerhet och klinisk säkerhet skiljer sig åt.
GlucoPred är mitt examensarbete: att prognostisera blodsocker 15-60 minuter framåt för en person med typ 1-diabetes, utifrån ~2,5 års data från kontinuerlig glukosmätare (CGM) och insulinpump från mitt barn (Dexcom via Glooko, 5-minutersintervall). Alla värden anges i mmol/L (≈18 mg/dL per mmol/L).
Pipeline
- Automatiserad, idempotent ZIP→DuckDB-inläsning av råa CGM- och pumpexporter (språkmedveten: svenska/engelska)
- CGM-rensning, detektering av sensorsessioner och interpolering av luckor
- Feature-matris med 45 kolumner - lags, glidande statistik, tidskodningar och en farmakokinetisk insulin-on-board-modell för NovoRapid (bolus + basal) - mot +15 / +30 / +60 min-mål, med verifierat noll framtidsläckage (CI-testat)
Modeller & utvärdering
Baslinjer (persistens, glidande medelvärde, linjär extrapolering, AR(2)) och en LSTM utvärderas med RMSE/MAE, tid inom målområde och Clarke Error Grid-zonanalys (A-E per modell och horisont). LSTM:en slår alla baslinjer vid varje horisont - 1,28 mmol/L RMSE vid +30 min mot AR(2):s 1,45 - utvärderat på utelämnad, färsk data.
Det mest intressanta fyndet är en skillnad mellan träffsäkerhet och klinisk säkerhet: även om LSTM:en är den mest träffsäkra modellen ger en enkel persistensbaslinje en lägre andel fel i farozonen vid längre horisonter. Modellen med lägst genomsnittligt fel är alltså inte automatiskt den säkraste nära hypoglykemi - att lyfta fram det, snarare än bara RMSE-rubriken, är centralt i arbetet.
Gränssnitt
Ett React-gränssnitt (Recharts) ritar upp faktiskt-mot-predikterat med väljare för modell och horisont. Eftersom den riktiga appen körs mot personlig medicinsk data driftas den aldrig publikt - istället finns en publik demo byggd på helt syntetisk data som driftas separat, så att gränssnittet kan utforskas utan att exponera någon verklig data.
Nästa steg
Gradient boosting-modeller, hyperparameteroptimering och en djupare klinisk felanalys (att lokalisera var och när de osäkra prediktionerna uppstår). Siffrorna speglar nuläget i ett pågående examensarbete.