$$\rightleftharpoonup{xx}$$
$$\longleftharp{xx}$$,
$$\longrightharp{xx}$$,
Gegevensbron- en ethische verklaring
Deze retrospectieve studie gebruikte gegevens van de MIMIC-IV (versie 3.1), een publiek toegankelijke, gedeïdentificeerde intensive care EPD-database die op PhysioNet wordt gehost. De database bevat demografische informatie, vitale functies, laboratoriumtesten, diagnoses, procedures en medicatie.
Toegang tot MIMIC-IV vereist geaccrediteerde autorisatie en naleving van de PhysioNet-gegevensgebruiksovereenkomst en trainingsvereisten. De onderzoekers voltooiden de vereiste training en kregen toegang (certificaatnummer: 68351548). Omdat de database is gedeidentificeerd, analyseerde deze studie geanonimiseerde gegevens en hield geen direct contact met patiënten; Daarom was geïnformeerde toestemming niet vereist. De volledige, stapsgewijze uitvoerbare modelleringsworkflow wordt geïllustreerd in Figuur 1.

Figuur 1. Algemene modelleringsworkflow voor osteoporose (OP) risicovoorspelling bij patiënten met diabetes. Schematische weergave van de studiepijplijn, inclusief cohortidentificatie, data-extractie, feature engineering, multi-model benchmarking, modelselectie op basis van validatieprestaties en SHAP-gebaseerde interpreteerbaarheid van het uiteindelijke model. Klik hier om een grotere versie van deze figuur te bekijken.
Populatie en gegevensextractie bestuderen
Gegevens werden geëxtraheerd uit de Medical Information Mart for Intensive Care IV (MIMIC-IV) database met behulp van een databasebeheertool. Om reproduceerbaarheid te waarborgen, worden de exacte SQL-queries, inclusief tabelnamen en filterlogica die worden gebruikt voor cohortopvraging, opgenomen in Aanvullend Bestand 1. Volwassen patiënten (≥18 jaar) die de diagnose diabetes mellitus kregen werden geïdentificeerd met ICD-9-codes (249, 250) en ICD-10-codes (E08–E13). De primaire uitkomst, OP, werd gedefinieerd met ICD-9 codes (733.x) en ICD-10 codes (M80, M81, M82). Binnen de initiële in aanmerking komende diabetische cohort (n = 46.226) werden 3.672 positieve gebeurtenissen (patiënten met OP) en 42.554 negatieve gebeurtenissen (patiënten zonder OP) geïdentificeerd. Een gedetailleerd stroomschema voor patiëntselectie en uitval is te zien in Figuur 2.

Figuur 2. Stroomdiagram van patiëntselectie en cohortconstructie. Het stroomdiagram illustreert de stapsgewijze cohortafleiding uit de MIMIC-IV (v3.1) database. Volwassen patiënten met diabetes mellitus werden geïdentificeerd met ICD-codes, gevolgd door uitsluiting van patiënten met leeftijd & LT; 18 jaar, ontbrekende kritieke data & gt; 30%, of ongeldige gegevens. De laatste cohort was verdeeld in OP (positieve gebeurtenissen) en niet-OP (negatieve gebeurtenissen). Klasse-onevenwicht werd aangepakt met willekeurige ondersteekproeven en SMOTE toegepast op de trainingsgegevens vóór het splitsen van gestratificeerde datasets. Klik hier om een grotere versie van deze figuur te bekijken.
Feature-engineering
Om eerlijke benchmarking te waarborgen over meerdere ML-algoritmen en nauwkeurige reproduceerbaarheid, werd een identieke reeks preprocessing-stappen toegepast: featureselectie, ontbrekende waarde imputatie, continue feature scaling, class balancing en dataset-splitsing. De volledige lijst van invoerfuncties, inclusief variabelennamen, eenheden en databronnen, wordt beschreven in Tabel 1.
| Kenmerken | Totaal (n = 14.688) | Trainingsset (n = 9.546) | Validatieset (n = 2.204) | Testset (n = 2.938) | P-waarde |
| Geslacht | | | | | 0.345 |
| Mannelijk | 6222 (42.36%) | 4045 (42.37%) | 935 (42.42%) | 1242 (42.27%) | |
| Vrouwelijk | 8466 (57.64%) | 5501 (57.63%) | 1269 (57.58%) | 1696 (57.73%) | |
| Leeftijd | 0,28 (−0,40, 0,94) | 0,28 (−0,43, 0,94) | 0,23 (−0,46, 0,89) | 0,28 (−0,39, 0,95) | 0.1655 |
| Rode bloedcellen | −0,14 (−0,79, 0,49) | −0,13 (−0,79, 0,49) | −0,17 (−0,83, 0,48) | −0,14 (−0,76, 0,49) | 0.3641 |
| Hematocriet | −0,14 (−0,81, 0,52) | −0,13 (−0,80, 0,52) | −0,14 (−0,87, 0,51) | −0,16 (−0,81, 0,52) | 0.3709 |
| Hemoglobine | −0,12 (−0,79, 0,52) | −0,12 (−0,79, 0,51) | −0,15 (−0,86, 0,53) | −0,13 (−0,78, 0,52) | 0.3616 |
| RDW | −0,16 (−0,59, 0,45) | −0,17 (−0,59, 0,46) | −0,14 (−0,59, 0,45) | −0,17 (−0,60, 0,42) | 0.5803 |
| Fosfaat | −0,14 (−0,60, 0,38) | −0,15 (−0,61, 0,38) | −0,11 (−0,57, 0,38) | −0,13 (−0,56, 0,34) | 0.415 |
| MCV | 0,05 (−0,50, 0,63) | 0,06 (−0,50, 0,65) | 0,03 (−0,49, 0,65) | 0,02 (−0,50, 0,59) | 0.5408 |
| Magnesium | −0,10 (−0,52, 0,37) | −0,10 (−0,52, 0,37) | −0,10 (−0,52, 0,37) | −0,09 (−0,50, 0,37) | 0.7797 |
| Witte bloedcellen | −0,16 (−0,47, 0,21) | −0,16 (−0,47, 0,20) | −0,15 (−0,48, 0,25) | −0,16 (−0,46, 0,20) | 0.6856 |
| Anionkloof | −0,12 (−0,64, 0,45) | −0,13 (−0,64, 0,45) | −0,07 (−0,61, 0,48) | −0,13 (−0,64, 0,45) | 0.1217 |
| Creatinine | −0,30 (−0,48, 0,01) | −0,30 (−0,48, 0,01) | −0,30 (−0,46, 0,01) | −0,30 (−0,48, −0,00) | 0.3323 |
| MCH | 0,11 (−0,48, 0,62) | 0,12 (−0,48, 0,62) | 0,11 (−0,47, 0,62) | 0,09 (−0,48, 0,61) | 0.5195 |
| Bloedplaatjesaantal | −0,09 (−0,61, 0,49) | −0,09 (−0,61, 0,49) | −0,08 (−0,62, 0,47) | −0,10 (−0,62, 0,48) | 0.9709 |
| MCHC | −0,00 (−0,59, 0,59) | −0,00 (−0,60, 0,59) | −0,00 (−0,57, 0,58) | 0,00 (−0,57, 0,60) | 0.9263 |
| Chloride | 0,05 (−0,54, 0,64) | 0,05 (−0,52, 0,65) | 0,03 (−0,59, 0,62) | 0,07 (−0,52, 0,62) | 0.4675 |
| Kalium | −0,07 (−0,67, 0,53) | −0,09 (−0,67, 0,53) | −0,07 (−0,67, 0,53) | −0,07 (−0,62, 0,53) | 0.3071 |
| Natrium | 0,05 (−0,56, 0,60) | 0,05 (−0,55, 0,60) | −0,00 (−0,60, 0,60) | 0,07 (−0,57, 0,61) | 0.3492 |
| Ureumstikstof | −0,28 (−0,60, 0,29) | −0,28 (−0,60, 0,29) | −0,26 (−0,59, 0,31) | −0,28 (−0,59, 0,25) | 0.6826 |
| Totaal calcium | 0,02 (−0,61, 0,59) | 0,02 (−0,61, 0,59) | −0,01 (−0,59, 0,56) | 0,01 (−0,61, 0,60) | 0.8203 |
Tabel 1. Basiskenmerken en geengineerde kenmerken van de studiecohort. Categorische variabelen worden gepresenteerd als n (%). Continue variabelen worden gepresenteerd als mediaan (interkwartielbereik) van gestandaardiseerde waarden. P-waarden werden berekend om de verdelingen over de trainings-, validatie- en testsets te vergelijken met behulp van passende statistische tests.
Continue variabelen met herhaalde metingen werden geaggregeerd met behulp van het rekenkundige gemiddelde binnen het volledige observatievenster van het ICU-verblijf om één kenmerk per patiënt te verkrijgen. Variabelen met een ontbrekingspercentage van meer dan 30% werden uitgesloten. Voor de overige numerieke variabelen werden ontbrekende waarden berekend met het K-Nearest Neighbors (KNN) algoritme (n_neighbors = 5, gewichten = 'uniform'). Categorische variabelen werden geïimputeerd met de meest voorkomende categorie en vervolgens getransformeerd met binaire mapping, waarbij onzichtbare categorieën een vector van nullen kregen toegewezen.
Continue variabelen werden gestandaardiseerd met behulp van de z-score schaalformule (). Kenmerken met nul variantie werden expliciet verwijderd vóór de schaalverdeling. Alle preprocessingparameters (μ en σ.) werden strikt op de trainingsset gescat en consequent toegepast op de validatie- en testsets.
Gezien de ernstige klassenongelijkheid (3.672 versus 42.554) werd een hybride balanceringsstrategie uitsluitend toegepast op de trainingsdata om te voorkomen dat prestatieschattingen te hoog gaan. Eerst werd willekeurige onderbemonstering gebruikt om de meerderheid negatieve klasse te verminderen tot een 1:2 (positief:negatief) verhouding (wat 7.344 negatieve steekproeven opleverde). Vervolgens werd de Synthetic Minority Over-sampling Technique (SMOTE) toegepast op de positieve klasse om een uiteindelijke 1:1 gebalanceerde verhouding te bereiken (7.344 vs. 7.344)8.
Ten slotte werd de cohort op patiëntniveau opgesplitst in training (65%), validatie (15%) en testsets (20%) met behulp van gestratificeerde steekproeven. Om alle willekeurige processen over imputatie, balans en splitsing strikt te controleren, werd een globale willekeurige seed (random_state = 42) gehandhaafd.
Modelarchitectuur
Om het meest geschikte voorspellende model voor het OP-risico bij patiënten met diabetes te identificeren, werd een grootschalig benchmarkingkader gebruikt om 70 ML-algoritmevarianten te vergelijken onder een identiek datarepresentatie- en evaluatieprotocol. Kandidaatmodelfamilies omvatten geregulariseerde lineaire classifiers, support vector machines (SVM's), kNN, boomensembles, gradient boosting-architecturen en meerlagige perceptrons 9,10,11,12,13,14,15,16,17.
In plaats van een traditionele rasterzoekopdracht werd hyperparameteroptimalisatie uitgevoerd door vooraf gedefinieerde, robuuste configuraties te evalueren over deze 70 modelvarianten op de trainingssplit. De selectie was strikt gebaseerd op het maximaliseren van het oppervlak onder de receiver operating characteristic (ROC) curve (AUC) op de validatieset. Het uiteindelijke best presterende model was geconfigureerd met n_estimators = 200, waarbij andere parameters op de standaardinstellingen van het softwarepakket in de Table of Materials bleven. Evaluatiemetrics, waaronder AUC, nauwkeurigheid, F1-score, precisie en recall, werden berekend met een standaard 0,5 kansdrempel van 0,5.
Om klinische transparantie te ondersteunen, werd SHAP toegepast op het geselecteerde model met behulp van de TreeExplainer-methode. Gezien de boom-gebaseerde aard van het uiteindelijke model, werden exacte boompad-afhankelijke verwachte waarden gebruikt als achtergrondconfiguratie.