$$\rightleftharpoonup{xx}$$
$$\longleftharp{xx}$$,
$$\longrightharp{xx}$$,
Fuente de datos y declaración ética
Este estudio retrospectivo utilizó datos del MIMIC-IV (versión 3.1), una base de datos pública de HCE de cuidados críticos desidentificada alojada en PhysioNet. La base de datos incluye información demográfica, signos vitales, pruebas de laboratorio, diagnósticos, procedimientos y medicamentos.
El acceso a MIMIC-IV requiere autorización acreditada y cumplimiento del acuerdo de uso de datos y los requisitos de formación de PhysioNet. Los investigadores completaron la formación requerida y obtuvieron acceso (número de certificado: 68351548). Debido a que la base de datos está desidentificada, este estudio analizó datos anonimizados y no implicó contacto directo con pacientes; por lo tanto, no se requería consentimiento informado. El flujo de trabajo completo de modelado ejecutable paso a paso se ilustra en la Figura 1.

Figura 1. Flujo de trabajo global de modelización para la predicción del riesgo de osteoporosis (OP) en pacientes con diabetes. Representación esquemática de la cadena de estudios, incluyendo identificación de cohortes, extracción de datos, ingeniería de características, benchmarking multimodelo, selección de modelos basada en el rendimiento de validación y interpretabilidad del modelo final basada en SHAP. Por favor, haz clic aquí para ver una versión ampliada de esta figura.
Estudio de población y extracción de datos
Los datos se extrajeron de la base de datos Medical Information Mart for Intensive Care IV (MIMIC-IV) utilizando una herramienta de gestión de bases de datos. Para garantizar la reproducibilidad, las consultas SQL exactas, incluyendo nombres de tablas y lógica de filtrado utilizadas para la recuperación de cohortes, se proporcionan en el Archivo Suplementario 1. Los pacientes adultos (≥18 años) diagnosticados con diabetes mellitus fueron identificados utilizando los códigos CIE-9 (249, 250) y los códigos CIE-10 (E08–E13). El resultado principal, OP, se definió usando los códigos ICD-9 (733.x) y los códigos ICD-10 (M80, M81, M82). Dentro de la cohorte diabética inicial elegible (n = 46.226), se identificaron 3.672 eventos positivos (pacientes con OP) y 42.554 eventos negativos (pacientes sin OP). En la Figura 2 se presenta un diagrama de flujo detallado de selección de pacientes y deserción.

Figura 2. Diagrama de flujo de la selección de pacientes y construcción de cohortes. El diagrama ilustra la derivación de cohortes paso a paso a partir de la base de datos MIMIC-IV (v3.1). Los pacientes adultos con diabetes mellitus fueron identificados mediante códigos CIE, seguidos de la exclusión de pacientes con edad y Teniente; 18 años, datos críticos y datos críticos perdidos gt; 30%, o registros inválidos. La última cohorte se dividió en OP (eventos positivos) y no OP (eventos negativos). El desequilibrio de clases se abordó mediante submuestreo aleatorio y SMOTE aplicado a los datos de entrenamiento antes de la división estratificada de conjuntos de datos. Por favor, haz clic aquí para ver una versión ampliada de esta figura.
Ingeniería de características
Para garantizar una comparación justa entre múltiples algoritmos de aprendizaje automático y una reproducibilidad precisa, se aplicó una secuencia idéntica de pasos de preprocesamiento: selección de características, imputación de valores faltantes, escalado continuo de características, balanceo de clases y división de conjuntos de datos. La lista completa de características de entrada, incluyendo nombres de variables, unidades y fuentes de datos, se detalla en la Tabla 1.
| Características | Total (n = 14.688) | Conjunto de entrenamiento (n = 9.546) | Conjunto de validación (n = 2.204) | Conjunto de pruebas (n = 2.938) | Valor P |
| Género | | | | | 0.345 |
| Masculino | 6222 (42.36%) | 4045 (42.37%) | 935 (42.42%) | 1242 (42.27%) | |
| Femenino | 8466 (57.64%) | 5501 (57.63%) | 1269 (57.58%) | 1696 (57.73%) | |
| Edad | 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 |
| Glóbulos rojos | −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 |
| Hematócrito | −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 |
| Hemoglobina | −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 |
| Fosfato | −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 |
| Magnesio | −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 |
| Glóbulos blancos | −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 |
| Brecha Aniónica | −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 |
| Creatinina | −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 |
| Recuento de plaquetas | −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 |
| Cloruro | 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 |
| Potasio | −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 |
| Sodio | 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 |
| Nitrógeno ureico | −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 |
| Calcio total | 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 |
Tabla 1. Características de referencia y características ingenierizadas de la cohorte del estudio. Las variables categóricas se presentan como n (%). Las variables continuas se presentan como mediana (rango intercuartílico) de valores estandarizados. Se calcularon valores P para comparar las distribuciones entre los conjuntos de entrenamiento, validación y prueba utilizando pruebas estadísticas apropiadas.
Las variables continuas con mediciones repetidas se agregaron usando la media aritmética durante toda la ventana de observación de estancia en la UCI para obtener un único vector de característica por paciente. Se excluyeron variables con una tasa de desaparición superior al 30%. Para las variables numéricas restantes, los valores faltantes se imputaron usando el algoritmo de K-Nearest Neighbors (KNN) (n_neighbors = 5, pesos = 'uniforme'). Las variables categóricas se imputaban usando la categoría más frecuente y posteriormente se transformaban mediante mapeo binario, asignando a cualquier categoría no vista un vector de ceros.
Las variables continuas se estandarizaron usando la fórmula de escala z-score (). Las características que mostraban varianza nula fueron eliminadas explícitamente antes del escalado. Todos los parámetros de preprocesamiento (μ y σ.) se estimaron estrictamente en el conjunto de entrenamiento y se aplicaron de forma consistente a los conjuntos de validación y prueba.
Dado el grave desequilibrio de clases (3.672 frente a 42.554), se aplicó una estrategia de balanceo híbrida exclusivamente a los datos de entrenamiento para evitar inflar las estimaciones de rendimiento. Primero, se utilizó un submuestreo aleatorio para reducir la mayoría de la clase negativa y lograr una proporción 1:2 (positivo:negativo) (dando 7.344 muestras negativas). A continuación, se aplicó la Técnica de Sobremuestreo de Minorías Sintéticas (SMOTE) a la clase positiva para lograr una proporción equilibrada final de 1:1 (7.344 frente a 7.344)8.
Finalmente, la cohorte se dividió a nivel de paciente en entrenamiento (65%), validación (15%) y pruebas (20%) usando muestreo estratificado. Para controlar estrictamente todos los procesos aleatorios a través de la imputación, el equilibrio y la división, se aplicó una semilla aleatoria global (random_state = 42).
Arquitectura del modelo
Para identificar el modelo predictivo más adecuado para el riesgo de OP en pacientes con diabetes, se utilizó un marco de comparación a gran escala para comparar 70 variantes de algoritmos de ML bajo un protocolo idéntico de representación de datos y evaluación. Las familias de modelos candidatas incluían clasificadores lineales regularizados, máquinas de vectores de soporte (SVMs), kNN, conjuntos de árboles, arquitecturas de aumento de gradiente y perceptrones multicapa 9,10,11,12,13,14,15,16,17.
En lugar de utilizar una búsqueda tradicional en cuadrícula, la optimización de hiperparámetros se realizó evaluando configuraciones predefinidas y robustas entre estas 70 variantes de modelo en la división de entrenamiento. La selección se basaba estrictamente en maximizar el área bajo la curva de característica de funcionamiento del receptor (AUC) en el conjunto de validación. El modelo final con mejor rendimiento se configuró con n_estimators = 200, manteniendo otros parámetros en la configuración predeterminada del paquete de software que figuran en la Tabla de Materiales. Las métricas de evaluación, incluyendo AUC, precisión, puntuación F1, precisión y recuerdo, se calcularon usando un umbral de probabilidad por defecto de 0,5.
Para apoyar la transparencia clínica, se aplicó SHAP al modelo seleccionado utilizando el método TreeExplainer. Dada la naturaleza basada en árboles del modelo final, se usaron valores esperados exactos dependientes del camino del árbol como configuración de fondo.