62
DOBLE GRADO EN INGENIERÍA INFORMÁTICA Y MATEMÁTICAS Trabajo final de grado Ciencia de datos para la predicción de mortalidad hospitalaria y duración de la estancia en la UCI con MIMIC-III Autora: Li Wang Directora: Dra. Laura Igual Muñoz Realizado en: Departamento de Matemáticas e Informática Barcelona, 19 de junio de 2021

Ciencia de datos para la predicción de mortalidad

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Ciencia de datos para la predicción de mortalidad

DOBLE GRADO EN INGENIERÍA INFORMÁTICA YMATEMÁTICAS

Trabajo final de grado

Ciencia de datos para la predicción demortalidad hospitalaria y duración dela estancia en la UCI con MIMIC-III

Autora: Li Wang

Directora: Dra. Laura Igual MuñozRealizado en: Departamento de Matemáticas e Informática

Barcelona, 19 de junio de 2021

Page 2: Ciencia de datos para la predicción de mortalidad

Abstract

The digitalization of medical records generates a huge amount of data, which opens up manyopportunities for researchers in the field of data mining. Applying data science, we can bringinnovation to the healthcare area.

In this work we focus on analyzing the data of critical patients from an open source databasecalled MIMIC-III (Medical Information Mart for Intensive Care III). Specifically, we extractedvarious characteristics of ICU patients and used them to train machine learning and deep learningmodels, in order to predict the length of stay in the Intensive Care Unit and the hospital mortality.And we saw that for the two tasks mentioned above, deep learning models, such as Long Short-Term Memory, outperformed machine learning models, such as logistic regression, in terms ofperformance.

Resumen

La digitalización de las historias clínicas genera una inmensa cantidad de datos, lo que abremuchas oportunidades para los investigadores en el campo de la minería de datos. Aplicandociencia de datos, podemos innovar el área de la sanidad.

En este trabajo nos centramos en analizar los datos de pacientes críticos, los cuales provienende una base de datos de fuente abierta llamada MIMIC-III (Medical Information Mart for Inten-sive Care III). Concretamente, extrajimos diversas características de los pacientes en la UCI y lasusamos para entrenar modelos de aprendizaje automático y aprendizaje profundo, con el fin depredecir la duración de la estancia en la Unidad de Cuidados Intensivos y la mortalidad hospi-talaria. De este modo, vimos que para las dos tareas mencionadas anteriormente, el rendimientode los modelos de aprendizaje profundo, como el Long Short-Term Memory, superaban al de losmodelos de aprendizaje automático, como la regresión logística.

2020 Mathematics Subject Classification. 68T07, 68T01, 68P20, 62D99

I

Page 3: Ciencia de datos para la predicción de mortalidad

Agradecimientos

En primer lugar quiero dar las gracias a la Dra. Laura Igual Muñoz, que aceptó ser mi tutoray me ha ayudado a hacer posible este trabajo. Estoy muy agradecida por el tiempo que me hadedicado y su orientación durante el desarrollo de esta tesis.

Luego, quiero agradecer a mis padres, que me han dedicado todo su tiempo y todos sus re-cursos con tal de educarme de la mejor manera posible. A mi hermano Jiaxi, por su gran apoyodurante la redacción de la memoria.

Y para terminar, gracias a mis amigos por darme ánimo a lo largo de estos últimos meses.

¡Muchas gracias a todos!

II

Page 4: Ciencia de datos para la predicción de mortalidad

Índice general

1. Introducción 1

1.1. El proyecto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

1.1.1. Motivación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

1.1.2. Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

1.2. Estructura de la Memoria . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

2. Base de datos MIMIC-III 4

2.1. Detalles sobre MIMIC-III . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

2.2. Análisis exploratorio de MIMIC-III . . . . . . . . . . . . . . . . . . . . . . . . 5

3. Trabajos relacionados 10

4. Introducción a los modelos predictivos 13

4.1. Preliminares . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

4.2. Regresión logística (LR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

4.3. Recurrent neural networks (RNN) . . . . . . . . . . . . . . . . . . . . . . . . . 15

4.3.1. Definición del modelo . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

4.3.2. Explosión/Desaparición del gradiente . . . . . . . . . . . . . . . . . . . 16

4.4. Long short-term memory (LSTM) original . . . . . . . . . . . . . . . . . . . . . 18

4.4.1. Definición del modelo . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

4.4.2. Solución de la desaparición del gradiente . . . . . . . . . . . . . . . . . 19

4.4.3. Variaciones de LSTM . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

4.5. Tipos de LSTMs y GRUs usados en el presente trabajo . . . . . . . . . . . . . . 22

5. Experimentación 25

5.1. Experimentos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

5.1.1. Predicciones usando OASIS . . . . . . . . . . . . . . . . . . . . . . . . 25

5.1.1.1. Procesos de ETL y cálculo de OASIS . . . . . . . . . . . . . . 25

5.1.1.2. Predicción de LOS usando OASIS . . . . . . . . . . . . . . . 27

III

Page 5: Ciencia de datos para la predicción de mortalidad

5.1.1.3. Predicción de la mortalidad usando OASIS . . . . . . . . . . . 29

5.1.2. Benchmark de Harutyunyan et al. . . . . . . . . . . . . . . . . . . . . . 29

5.1.2.1. Predicción de la mortalidad . . . . . . . . . . . . . . . . . . . 30

5.1.2.2. Predicción de LOS . . . . . . . . . . . . . . . . . . . . . . . . 31

5.2. Métricas de evaluación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

5.3. Tests de análisis de resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

5.3.1. Bootstrapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

5.3.2. Calibración . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

5.3.3. T-test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

5.4. Detalles de implementación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

6. Resultados 37

6.1. Análisis de los resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

6.1.1. Bootstrapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

6.1.2. Calibración . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

6.1.3. Comparativa con trabajos relacionados . . . . . . . . . . . . . . . . . . 45

7. Conclusiones 47

8. Posibles ampliaciones 48

9. Apéndice 49

Bibliografía 53

IV

Page 6: Ciencia de datos para la predicción de mortalidad

Capítulo 1

Introducción

En los últimos años se ha producido un movimiento de digitalización de las historias clínicasen los hospitales (Sistema de historia clínica electrónica, HCE) [1]. Esto supone la acumulación deuna inmensa cantidad de datos clínicos digitales que ofrece grandes oportunidades a los investiga-dores en el campo de la minería de datos para resolver problemas médicos urgentes en hospitales,la predicción de descompensación fisiológica, la caracterización de enfermedades complejas, et-cétera. Estos problemas no son nuevos, pero el éxito del aprendizaje automático y la crecientedisponibilidad de datos clínicos digitales han atraído una atención cada vez mayor a la aplicaciónde estas técnicas en el ámbito de la Salud.

1.1. El proyecto

1.1.1. Motivación

Un sistema de salud hospitalario consta de varios componentes: pacientes, médicos, especia-listas, enfermeros, etc. En este contexto, tener un conocimiento preciso del estado de la enfer-medad de un paciente en cada momento es fundamental. Los sistemas HCE facilitan el flujo deinformación entre las diferentes partes para administrar de manera efectiva la salud del paciente.Sin embargo, la información no es conocimiento y, a menudo, solo parte de los datos será útilpara tomar decisiones sobre la atención del paciente. Los médicos expertos necesitan filtrar estosextensos registros para descubrir los datos más relevantes para la condición actual de un paciente.

En particular, en el caso de las Unidades de Cuidados Intensivos (UCI), las informacionesproporcionadas por los sistemas HCE ayudan a mejorar la mortalidad, la duración de la estadía enhospital y las tasas de complicaciones de los pacientes [2]. Pero la implementación, la manipula-ción y la gestión de estos sistemas son costosas [3] y, a veces, el personal capacitado para operarlos equipos de la UCI parece ser escaso. Por esta razón, las investigaciones para equipar mejor lasUCI, con sistemas suplementarios que puedan identificar patrones de características relevantes,apuntan a mejorar la eficiencia y la calidad de la atención.

1.1.2. Objetivos

El objetivo principal del presente trabajo es analizar los datos recogidos en la base de datosMIMIC-III (Medical Information Mart for Intensive Care III) [4] y realizar una evaluación demodelos predictivos aplicados a estos datos del área de la salud.

1

Page 7: Ciencia de datos para la predicción de mortalidad

Después de explorar las investigaciones realizadas con MIMIC-III hasta el momento en laliteratura, el objetivo se concreta en evaluar la efectividad de utilizar diferentes característicaspara predecir la probabilidad de mortalidad y la duración de la estancia en la UCI (length-of-stay,LOS) de los pacientes. Se pretende diseñar un conjunto de procesos de extracción, transforma-ción y carga (del inglés Extract, Transform, and Load, ETL) de las características interesadas, yentrenarlas con diferentes modelos predictivos.

Decidimos centrarnos en estas dos tareas de predicción porque son temas ampliamente inves-tigados, lo que facilita las comparaciones con otros trabajos recientes, además de suponer unasguías a seguir. Consideramos que es un buen punto de partida para entrar en la exploración deMIMIC-III.

Estas predicciones pueden ayudar a evaluar la eficacia de los tratamientos y a identificar lospacientes con resultados inesperados. Además, la previsión de la duración de la estancia de un pa-ciente también es importante en la gestión sanitaria. De esta manera, una vez que se identifica lospacientes de alto riesgo, el personal del hospital puede asignar especialistas altamente capacitadospara atender específicamente sus necesidades.

Para realizar estas predicciones hemos usado distintos modelos con diferentes conjuntos decaracterísticas.

Las características son:

Una escala de gravedad de la enfermedad denominada OASIS (Oxford Acute Severity ofIllness Score) [5]. OASIS sintetiza las características fisiológicas del paciente en un solovalor que refleja su salud.

Las 10 variables que son importantes para desarrollar la escala de gravedad se selecciona-ron a partir de 37 variables predictoras utilizando una técnica de aprendizaje automáticoconocida como GA (genetic algorithm). Esta escala requiere muchas menos variables, pe-ro mantiene una discriminación y calibración equivalentes a otros modelos existentes (porejemplo, Acute Physiology Score [6]) para la mortalidad en la UCI.

Datos en forma de series temporales de las variables que componen OASIS. Se han desarro-llado varios métodos para abordar estas tareas basados en historiales clínicos [23, 26–30].Sin embargo, muchos de los modelos de predicción necesitan datos de pruebas de labo-ratorio y algunas de estas requieren tiempo para analizarlas. Además, si se usan muchasvariables para entrenar, los médicos/enfermeros deben recoger más datos, lo que implicauna carga extra. Ahora bien, OASIS solo utiliza 10 tipos de mediciones tomadas en las pri-meras 24 horas de las estancias en la UCI, las cuales no necesitan pruebas en laboratorios.Por tanto, OASIS permite realizar predicciones rápidamente, ayudando así al análisis delestado del paciente.

Asimismo, en la literatura reciente, generalmente OASIS es utilizado en la predicción demortalidad pero no en la predicción de LOS. Por ello, queremos probar a usar OASIS parala última tarea mencionada.

Un subconjunto de variables del Physionet / CinC Challenge 2012. Este subconjunto devariables se propone en el benchmark de Harutyunyan et al. [22] y consta de 17 variablesfisiológicas, en las cuales se incluyen algunas pruebas de laboratorio.

2

Page 8: Ciencia de datos para la predicción de mortalidad

1.2. Estructura de la Memoria

En el capítulo Introducción a los modelos predictivos, introduciremos brevemente el mar-co teórico de los modelos predictivos utilizados en el presente trabajo ( regresión logística, redneuronal recurrente LSTM, gated recurrent unit...) y, además, se incluyen unos esquemas quemuestran qué Keras Layers componen los modelos tipo red neuronal recurrentes usados.

El capítulo Experimentación describe detalladamente cómo logramos los objetivos mencio-nados anteriormente. Se dividirá en dos partes: la primera corresponderá al primer acercamientode las dos tareas de predicción usando OASIS. Esta parte incluye la definición del problema, ladescripción de los procesos ETL y del entrenamiento de los modelos. La segunda parte correspon-derá al acercamiento del problema usando el subconjunto de variables sugerido por Harutyunyanet al. Por último, incluye también la definición de métricas de evaluación y de tests de análisis deresultados.

En el capítulo Resultados contrastamos y discutimos los resultados de modelos predictivosentrenados.

Finalmente, en el capítulo Conclusiones daremos las conclusiones de la investigación realizaday discutiremos sobre las posibles ampliaciones en base a nuestras contribuciones en el capítuloPosibles ampliaciones.

Además, incluimos un Apéndice donde recopilamos otros resultados de pruebas que ayudan arealizar comparaciones entre los modelos entrenados.

3

Page 9: Ciencia de datos para la predicción de mortalidad

Capítulo 2

Base de datos MIMIC-III

La base de datos utilizada en este trabajo se llama Medical Information Mart for Intensive CareIII (MIMIC-III) [4]. La versión actual de la base de datos es v1.4, publicada el 2 de septiembrede 2016, y es la versión utilizada en este estudio.

2.1. Detalles sobre MIMIC-III

MIMIC-III contiene datos de 46.520 pacientes que fueron ingresados en las UCI de Beth IsraelDeaconess Medical Center (Boston, EE. UU.) entre 2001 y 2012. La base de datos completa sesometió a una desidentificación automática para proteger la privacidad de los pacientes. Dado queno se puede garantizar el anonimato total, los investigadores deben aprobar un curso en línea sobrelas consideraciones éticas y legales de las investigaciones que involucra sujetos humanos y aceptarun acuerdo de uso de datos para obtener el acceso a los datos, como se indica en la web oficial deMIMIC-III https://mimic.physionet.org/iii/gettingstarted/. Una vez ob-tenido el acceso, no hay más restricciones en el uso, lo que hace que la base de datos sea unafuente valiosa para estudios reproducibles basados en datos.

MIMIC-III es una base de datos relacional que consta de 26 tablas, las cuales están vinculadaspor identificadores que generalmente tienen el sufijo ’ID’.

La base de datos comprende mediciones clínicas, información administrativa, resultados depruebas de laboratorio, diagnósticos, descripciones de terapias (farmacológicas), notas de los cui-dadores/enfermeros y más, relacionados con 61.532 estancias en la UCI durante 58.976 ingresoshospitalarios para 46.520 pacientes. En el Cuadro 2.1 se resumen las tablas de MIMIC-III utili-zadas en el presente trabajo.

Tabla Shape Breve resumen

ADMISSIONS (58976, 19)Proporciona información sobre la ad-misión de un paciente en el hospital.

CHARTEVENTS(330712483,15)

Contiene todos los datos registrados(charted data) disponibles de un pa-ciente.

D_ITEMS (12487, 10)Define los ITEMID, que representa losids de las medidas en la base de datos.

ICUSTAYS (61532, 12)Proporciona información sobre las es-tadías en la UCI.

4

Page 10: Ciencia de datos para la predicción de mortalidad

LABEVENTS (27854055, 9)Contiene todas las mediciones de labo-ratorio de un paciente.

OUTPUTEVENTS (4349218, 13)Contiene datos de salidas (es decir, lí-quidos que el paciente ha excretado oextraídos del paciente, como la orina).

PATIENTS (46520, 8)

Contiene datos independientes de lahospitalización para todos los pacien-tes, como sexo, fecha de nacimiento,etc.

PROCEDUREEVENTS_MV (258066, 25)

Contiene procedimientos realizadospara pacientes que fueron monitorea-dos en la UCI mediante el sistema Me-taVision.

Cuadro 2.1: Tablas de MIMIC-III utilizadas para realizar el trabajo de análisis. Más información en: https://mimic.physionet.org/iii/mimictables/

Estos conjuntos de datos exhiben características que son típicas de cualquier base de datosclínica a gran escala, como secuencias de longitud variable, distribuciones sesgadas y valoresfaltantes (missing values). Esto supone retos que abordaremos en el capítulo Experimentación.

2.2. Análisis exploratorio de MIMIC-III

En este apartado realizamos una breve exploración de la base de datos mediante histogra-mas, diagramas de caja, diagramas de dispersión y tablas, los cuales resumen varios valores deestadística descriptiva de las variables que componen OASIS.

Primero, con Figuras 2.1, 2.3 y 2.2 presentamos la distribución de las duraciones de lasestancias en la UCI y de la mortalidad hospitalaria en MIMIC-III.

Figura 2.1: Histograma de la distribución de LOS en MIMIC-III Figura 2.2: Histograma de la mortalidad hospitalaria en MIMIC-III

5

Page 11: Ciencia de datos para la predicción de mortalidad

Figura 2.3: Diagrama de caja de la variable LOS en MIMIC-III

Luego, presentamos las variables ’estáticas’ que componen OASIS, es decir, las variables queno varían durante la estancia en la UCI. También presentamos las relaciones entre estas variablescon las variables objetivos (LOS o mortalidad hospitalaria) mediante diagramas de dispersión ehistogramas: Figuras 2.4, 2.5, 2.6, 2.7 y 2.8.

Figura 2.4: Histograma de la variable Tipo de ingreso hos-pitalario (Admission Type).

Figura 2.5: Diagrama de dispersión de Admission Type contra lavariable objetivo LOS.

Figura 2.6: Histograma de Admission Type, agrupados por la va-riable objetivo mortalidad hospitalaria.

6

Page 12: Ciencia de datos para la predicción de mortalidad

(a) (a)

(b) (b)

(c)

Figura 2.7: (a) es un diagrama de caja de la variable Edad, (b)es un diagrama de dispersión de la variable Edad contra la varia-ble objetivo LOS y (c) es un strip plot (complementado con eldiagrama de caja) de la variable Edad contra la variable objetivomortalidad hospitalaria. Como recordatorio, un strip plot dibujaun diagrama de dispersión donde una de las dos variables es cate-górica; en nuestro caso, la variable mortalidad hospitalaria es unavariable categórica.

(c)

Figura 2.8: (a) es un diagrama de caja cuya variable es el tiempode estancia de un paciente en el hospital, antes de su ingreso enUCI (PRELOS), (b) es un diagrama de dispersión de PRELOScontra la variable objetivo LOS y (c) es un diagrama de disper-sión (concretamente un strip plot) de PRELOS contra la variablede mortalidad hospitalaria.

7

Page 13: Ciencia de datos para la predicción de mortalidad

En la Figura 2.6 vemos que las admisiones hospitalarias urgentes (EMERGENCY y UR-GENT) tienden a tener más muertes.

En las Figuras 2.5 y 2.7(b) observamos que la mayoría de los pacientes que tienen estanciasen la UCI excesivamente largas son recién nacidos. Y en las Figuras 2.7(c) y 2.6, vemos quelos recién nacidos tienden a tener menos muertes hospitalarias. También observamos que la edadmediana de los pacientes fallecidos es mayor que la edad mediana de los pacientes sobrevividos(Figura 2.7(c)).

Luego, en la Figura 2.8(c) vemos que hay más muertes en los pacientes con PRELOS (enhoras) extremadamente larga.

Por último, se observa que existen determinados valores atípicos (pacientes mayores de 300años) en los datos de la variable Edad. Esto se debe a que para cumplir con la HIPAA1, se hacambiado la fecha de nacimiento de los pacientes que tienen más de 89 años.

A continuación, en la Tabla 2.2 mostramos la estadística descriptiva de las variables ’tem-porales’ que componen OASIS, es decir, los valores de estas variables se recogen en múltiplesocasiones durante la estancia en la UCI. No incluimos la variable ’ventilación mecánica’ en latabla, ya que no es una variable continua/numérica.

Finalmente, la Tabla 2.3 muestra las tasas faltantes (missing rates) de las variables. En estetrabajo, el missing rate de una variable es el porcentaje de estancias en la UCI que no tienenninguna medición registrada de dicha variable en las primeras 24 h. Por ejemplo, 15 % de missingrate de MAP significa que 15 de cada 100 estancias no tienen valores de MAP tomadas en lasprimeras 24 h.

Variables(Unidad demedida)

Agrupados por # demediciones

Q1 (P25) Q2

(mediana)Q3 (P75)

Presión ArterialMedia (mmHg)

Total 6151544 68.00 77.00 88.33Supervivientes 4977157 68.33 78.00 89.00Muertos 1170623 64.00 73.00 84.00LOS ≤ 3 1390776 67.00 77.00 87.00LOS > 3 4757004 68.00 77.00 89.00

Frecuenciacardiaca(bpm)

Total 7923456 77.00 92.00 119.00Supervivientes 6709310 78.00 92.00 128.00Muertos 1207489 77.00 90.00 105.00LOS ≤ 3 1526222 72.00 84.00 96.00LOS > 3 6390577 79.00 95.00 132.00

Frecuenciarespiratoria(min−1)

Total 6918856 16.00 20.00 24.00Supervivientes 5517120 16.00 19.00 23.00Muertos 1398025 17.00 21.00 26.00LOS ≤ 3 1519887 15.00 18.00 22.00LOS > 3 5395258 16.00 20.00 24.00

Temperatura(°C)

Total 2871213 36.50 37.00 37.56Supervivientes 2336620 36.55 37.00 37.55Muertos 532861 36.27 36.88 37.50LOS ≤ 3 647735 36.38 36.88 37.38LOS > 3 2221746 36.50 37.05 37.61

1HIPAA es un estatuto federal de los Estados Unidos: La Ley de Transferencia y Responsabilidad de SeguroMédico (Health Insurance Portability and Accountability Act, HIPAA por sus siglas en inglés).

8

Page 14: Ciencia de datos para la predicción de mortalidad

Orina (mL)

Total 3271362 40.00 80.00 160.00Supervivientes 2728852 45.00 95.00 170.00Muertos 537233 30.00 60.00 120.00LOS ≤ 3 711694 45.00 90.00 180.00LOS > 3 2554391 40.00 80.00 150.00

Escala de comade Glasgow Eye(entero entre1 a 4)

Total 1520739 3 4 4Supervivientes 1258642 3 4 4Muertos 261036 1 3 4LOS ≤ 3 369676 4 4 4LOS > 3 1150002 3 4 4

Escala de comade GlasgowMotor (enteroentre 1 a 6)

Total 1514355 5 6 6Supervivientes 1253844 5 6 6Muertos 259457 4 5 6LOS ≤ 3 368263 6 6 6LOS > 3 1145038 5 6 6

Escala de comade GlasgowVerbal (enteroentre 1 a 5)

Total 1516484 1 4 5Supervivientes 1255077 1 4 5Muertos 260350 1 1 2LOS ≤ 3 368211 4 5 5LOS > 3 1147216 1 1 5

GCS Total(entero entre1 a 15)

Total 945427 9 11 15Supervivientes 777409 10 14 15Muertos 167174 6 9 11LOS ≤ 3 204986 14 15 15LOS > 3 739597 9 11 15

Cuadro 2.2: Estadísticas descriptivas de las variables ’temporales’ que componen OASIS. Qi denota los cuartiles. # de medicioneses la cantidad de valores registrados en la base de datos. Además, agrupamos estas mediciones en función de si se obtuvieron depacientes que sobrevivieron o de pacientes que fallecieron. Análogamente para el caso de LOS.

Variable # de icustays % missing rate en 24hMAP 52180 15.19Frecuencia cardiaca 59902 2.64Frecuencia respiratoria 52151 15.24Temperatura 51374 16.50Orina 49741 19.16GCS_E 52206 15.15GCS_M 52188 15.18GCS_V 52192 15.17GCS Total 28907 53.02Ventilación mecánica 8733 85.80PRELOS 61532 0.00Admission Type 61532 0.00Edad 61532 0.00

Cuadro 2.3: Tabla de Missing Rates de las variables que componen OASIS. ’# de icustays’ de una variable indica la cantidad deestancias en la UCI que tienen al menos una medición de esa variable en las primeras 24 horas. En total hay 61532 estancias en laUCI registradas en MIMIC-III. % missing rate de una variable es el porcentaje de estancias en la UCI que no tienen ninguna mediciónregistrada de esa variable en las primeras 24 h. Abreviaciones: MAP: Presión Arterial Media; GCS_E: escala de coma de GlasgowEye; GCS_M: escala de coma de Glasgow Motor; GCS_V: escala de coma de Glasgow Verbal; PRELOS: el tiempo de estancia deun paciente en el hospital, antes de su ingreso en UCI.

9

Page 15: Ciencia de datos para la predicción de mortalidad

Capítulo 3

Trabajos relacionados

Existe una amplia investigación sobre MIMIC-III y una gran producción de artículos. Intenta-remos resaltar algunos trabajos como ejemplos. Hay varias ramas de estudios con datos de salud,por ejemplo ramas de investigación que se centra en:

Predicción: Predecir la mortalidad [8, 18, 19, 26–33], la duración de la estancia en la UCI(LOS, length-of-stay) [26,28], la readmisión hospitalaria [12], sepsis [13,21], enfermedadescrónicas [11,24], prever el diagnóstico y la prescripción del médico de la próxima visita [9],predecir la próxima visita del paciente [9], insuficiencia cardiaca, infecciones, hipertensión,osteoporosis, estratificación del riesgo de suicidio, etc.

Desidentificación: Construir un sistema de desidentificación confiable para preservar laconfidencialidad del paciente [7].

Phenotyping: Descubrimiento y detección de patrones característicos de fisiología en datosclínicos [22].

Representación: Representación de los códigos clínicos [20] que implica la traducción dedeclaraciones escritas de tratamientos clínicos a un formato de código taxonómico.

Extracción y visualización de información: Extracción y visualización de señales fisiológi-cas, así como series temporales de signos vitales registrados por monitores [14]; construc-ción de un pipeline para transformar datos de HCE no procesada en estructuras de datosque se pueden utilizar directamente para modelos de predicción que usan series tempora-les [15]; análisis de notas de pacientes no estructuradas [16, 17], etc.

Hasta los últimos años, la mayoría de las técnicas para analizar datos de HCE se basaban entécnicas estadísticas y de aprendizaje automático tradicional, como la regresión logística, SVM ylos bosques aleatorios. Recientemente, las técnicas de aprendizaje profundo han logrado un granéxito en muchos dominios. Shickel et. al. [10] realizan una revisión amplia sobre la aplicaciónde técnicas de aprendizaje profundo en datos de HCE. Señalan los desafíos actuales con los da-tos médicos (heterogeneidad de datos, irregularidad de escala en las mediciones, textos clínicos,desidentificación del paciente, benchmarks, interpretabilidad) y las oportunidades futuras.

Purushotham et al. [23], Harutyunyan et al. [22] y Wang et al. [15] llevaron a cabo unas eva-luaciones comparativas (i.e. benchmarks) detalladas de varios modelos de aprendizaje automáticoy aprendizaje profundo entrenados en MIMIC-III para varias tareas (incluyen predicción de la

10

Page 16: Ciencia de datos para la predicción de mortalidad

mortalidad y de LOS). Los resultados muestran que los modelos de aprendizaje profundo superanal resto.

En este trabajo, nos centramos en dos tareas: la predicción de la mortalidad y la duración dela estancia en la UCI. Las razones se mencionan en la sección Objetivos. Hay trabajos que pre-dicen la mortalidad para una cohorte específica, por ejemplo pacientes con sepsis [34], pacientesen Unidad de Cuidados Intensivos Cardíacos [35–38] o predicciones de la mortalidad en ciertoperíodo de tiempo [8, 18, 19]. A diferencia de estos trabajos, nosotros predecimos la mortalidadintrahospitalaria y nos centramos en una cohorte más general.

Los modelos de aprendizaje profundo utilizados para la predicción de mortalidad también sonvariados. Destacamos algunos de ellos a continuación.

En [23] se entrenan diversos modelos de aprendizaje profundo, como por ejemplo, la red neu-ronal prealimentada (FNN), la red neuronal recurrente (RNN) o una combinación de FNN y RNN(MMDL). Además, estos modelos se entrenan con tres conjuntos de características diferentes. Detodos estos modelos, el que da mejor resultado para la predicción de mortalidad es el MMDL, conun AUC-ROC de 0.941. Para obtener tal resultado, dicho modelo es entrenado con 136 variables(las 136 variables son elegidas por su baja missing rate).

En [25] se muestra que al realizar agrupación (Clustering) antes del análisis de regresión semejora la precisión de la predicción tanto para la mortalidad como para la LOS en el conjunto dedatos MIMIC-II.

En [26] intentan aplicar Attention Models para mejorar los problemas de optimización ycomputación. Su enfoque se basa únicamente en self-attention, por lo que elimina la necesidad derecurrencia y hace que el proceso de aprendizaje sea eficiente. Además, logran un AUC-ROC yAUC-PR ligeramente más altos que el benchmark de Harutyunyan et al.

En [27] usan un modelo de aprendizaje automático, Gradient Boosting (GB). Utilizando da-tos de aproximadamente 148 variables, consiguen un AUC-ROC de 0.92 en la predicción de lamortalidad hospitalaria. Sin embargo, admiten que el modelo GB puede no ser el mejor porquehay una falta de coherencia en la definición y extracción del conjunto de datos con otros trabajosrelacionados.

En [28] prueban varias representaciones del paciente (es decir, agregando diferentes variablesfisiológicas, diagnósticos, información demográfica) junto con distintos modelos (CNN, LSTM,LR, MLP). Logran con su modelo basado en arquitectura LSTM un AUC-ROC de 0.949 parala predicción de mortalidad y un AUC-ROC en micro promedio de 0.846 para la clasificaciónmulticlase de LOS.

En [29] se presenta el uso de red pre-entrenada (TimeNet), con lo que se obtiene un 0.852 enAUC-ROC y 0.519 en AUC-PR.

En [30] proponen un nuevo modelo RNN, variable sensitive GRU (VS-GRU). Consiguen unAUC-ROC de 0.858. Sin embargo, necesitan una gran cantidad de variables para entrenar el mo-delo, en total 99 variables.

En [31] se usa ConvNet y se alcanza un AUC-ROC de 0.873 para la predicción de mortalidad.También se aplican conceptos de la teoría de juegos de coalición para construir explicacionesvisuales destinadas a mostrar la importancia de cada dato clínico para el modelo entrenado.

En [32] se propone una técnica de selección de características basada en algoritmos genéticos(GA) para determinar las variables que contribuyen predominantemente a la mortalidad. Al selec-cionar 10 variables de un total de 578, este modelo supera los sistemas de puntuación de gravedad(OASIS, SAPS-II... ) en un 11 % - 29 %, y supera los otros modelos relacionados en hasta un

11

Page 17: Ciencia de datos para la predicción de mortalidad

14 %, en términos de AUROC.

Finalmente, en [33] entrenan dos tareas simultáneamente usando red neuronal recurrente (RNN)con attention mechanisms. En comparación con el sistema convencional de clasificación de lagravedad de la enfermedad SAPS-II, el modelo de aprendizaje multitarea propuesto logra unAUC-PR más alto (0.520 versus 0.353) utilizando menos variables que SAPS-II.

En general, para tener mejores resultados, los investigadores entrenan modelos más complejoscomo aprendizaje multitarea o agregan más datos clínicos. También se interesa en mejorar lainterpretabilidad de sus modelos, como en [39].

12

Page 18: Ciencia de datos para la predicción de mortalidad

Capítulo 4

Introducción a los modelos predictivos

El propósito de este capítulo es ofrecer una breve introducción teórica de los modelos de apren-dizaje automático y aprendizaje profundo utilizados en el presente trabajo. Es un tema amplio, porlo que no intentamos abarcarlo todo, sino solo las principales diferencias entre los modelos y lasrazones por las que los elegimos.

4.1. Preliminares

A continuación definimos los tecnicismos que vamos a utilizar.

Definición 4.1. Según Lex Fridman (MIT), ’Un gradiente mide cuánto cambia la salida de unafunción si varían un poco las entradas’. En términos matemáticos, un gradiente es una derivadaparcial (diferenciación parcial) con respecto a sus entradas [41].

Definición 4.2. Una función Loss, también llamada función de coste, cuantifica el error entre larespuesta generada por la red y la respuesta real [42, 43].

Definición 4.3. El descenso de gradiente (Gradient Descent) es un algoritmo de optimización. Enotras palabras, es un método para disminuir el valor de una función de forma iterativa [41].

Definición 4.4. La propagación hacia atrás de errores o retropropagación (del inglés BackPropa-gation) es un método de cálculo del gradiente de la función de coste con respecto a los pesos deuna red neuronal artificial [43].

En particular, nuestro objetivo será minimizar el error de la red, por lo que las funciones decoste se optimizarán con el método de Gradient Descent. En resumen, para entrenar un modelotipo red neuronal, necesitamos actualizar los pesos/parámetros de las redes de tal manera que seminimice la función de coste.

La magnitud y la dirección de las actualizaciones se especifican mediante los gradientes cal-culados durante la propagación hacia atrás, que determinan en qué sentido hay más diferencia dela función de coste.

Podemos describir el proceso de actualización con la fórmula siguiente:

W =W − α( ∂L∂W

),

13

Page 19: Ciencia de datos para la predicción de mortalidad

donde W es el peso que se actualiza, α es la llamada tasa de aprendizaje (learning rate), quenormalmente está definida por el usuario. Finalmente, L es la función de coste. Por ejemplo,podemos escoger la función error cuadrático medio (del inglés mean squared error, MSE) comofunción de coste para problemas de regresión:

L(W ) =1

n

n∑i=1

(Wxi − yi)2 =1

n

n∑i=1

(yi − yi)2,

donde x representa los datos de entrada, y el vector de n predicciones e y el vector de los verda-deros valores.

4.2. Regresión logística (LR)

Una regresión lineal consiste en encontrar relación entre datos de entrada y salida, general-mente en forma de línea o curva o superficies.

La regresión logística es un clasificador lineal [44], ya que principalmente usa una funciónlineal llamada logit, que es una combinación lineal de las variables de entrada multiplicadas porcoeficientes/pesos adecuados: f(x) = b0 + b1x1 + . . . + brxr, donde x = (x1,. . . , xr).

La función de regresión logística p(x) es la función sigmoidea (curva en forma de S) de f(x):

p(x) =1

(1 + exp−f(x))

Sus valores están entre 0 y 1. En caso de clasificación binaria, la función p(x) a menudo seinterpreta como la probabilidad predicha de que la salida para una entrada x dada sea igual a 1(etiqueta de clase positivo). Por lo tanto, 1 - p(x) es la probabilidad de que la salida sea 0 (etiquetade clase negativo).

La regresión logística determina los mejores coeficientes de manera que la función p(x) sea lomás cercana posible a todas las salidas (etiquetas) reales. El proceso se denomina entrenamiento oajuste del modelo. Una vez se determinen los mejores pesos que definen la función p(x), podemospredecir las salidas p(x) para cualquier entrada x dada.

En este trabajo, por un lado usamos la regresión logística de una sola variable en las predic-ciones que usan únicamente la puntuación de riesgo OASIS. Solo hay una variable independiente,es decir, x = x1.

La regresión logística encuentra los pesos b0 y b1 adecuados maximizando la función LLF(log-likelihood function) para todas las observaciones x. Este método se denomina estimación demáxima verosimilitud (maximum likelihood estimation):

LLF =∑i

(yi log(p(xi)) + (1− yi) log(1− p(xi))),

donde i = 1, . . . , n es el número de entradas u observaciones. E yi son las salidas (etiquetas)reales de las observaciones xi.

Los mejores pesos que corresponden al LLF máximo se pueden calcular utilizando variosmétodos matemáticos, siendo uno de ellos es el método de descenso por gradiente.

Los pesos obtenidos definen el logit f(x) = b0 + b1x1. Por lo cual, también definen la proba-bilidad predicha p(x). En resumen, primero se encuentra la función f(x) y luego se predice con lafunción sigmoidea p(x).

14

Page 20: Ciencia de datos para la predicción de mortalidad

Por otro lado, en predicciones con modelos del benchmark [22] se usa regresión logísticamultivariante con regularización L2 y fuerza de regularización C = 0.001.

El sobreajuste suele ocurrir con modelos complejos. La regularización normalmente inten-ta reducir o penalizar la complejidad del modelo. Las técnicas de regularización aplicadas conregresión logística tienden en su mayoría a penalizar grandes coeficientes b0, b1, . . . , br:

La regularización L1 penaliza el LLF con la suma escalada de los valores absolutos de lospesos: | b0 | + | b1 | + . . .+ | br |.

La regularización L2 penaliza el LLF con la suma escalada de los cuadrados de los pesos:| b20 | + | b21 | + . . .+ | b2r |.

4.3. Recurrent neural networks (RNN)

Se utiliza RNN cuando abordamos los problemas en los que el orden de los datos importa.Por ejemplo en nuestro caso, observar la evolución de los signos vitales de un paciente ayuda aexaminar si su estado va mejorando. Una red neuronal (NN) normal no tiene en cuenta el orden.Una NN no puede aprender de eventos anteriores porque la información no se traslada de un pasoal siguiente; solo el error se propaga hacia atrás. En cambio, en RNN, las entradas (inputs) futurasde la red se derivan de las salidas (outputs) pasadas.

4.3.1. Definición del modelo

Figura 4.1: Una RNN sindesplegar. Imagen extraídade [45] Figura 4.2: Una RNN desplegada. Imagen extraída de [46]

Las Figuras 4.1 y 4.2 son diagramas simplificados de la arquitectura de RNN. En la Figura4.2 tenemos:

xk representa la información entrada al instante(timestep) k.

Wrec,Win representa los parámetros (vector/matriz de peso) que se comparten a lo largo detoda la red. Es constante para todos los instantes de un mismo sample. Pero se actualiza concada nueva sample mediante Gradient Descent y BackPropagation con el fin de minimizarel error de predicción.

σ representa la función de activación, que sirve para añadir No-linealidad a la red. Tambiénsirve para transformar las entradas a un cierto rango. Esta función puede ser tanh, sigmoido ReLu.

15

Page 21: Ciencia de datos para la predicción de mortalidad

ck (cell state) representa la ’memoria’ o el estado de la red al instante k. Esta memoria con-tiene información sobre los tiempos anteriores. Este estado se calcula mediante la ecuaciónck = σ(Wrec · ck−1 +Win · xk)

hk (hidden state) representa la salida en el instante k. Su fórmula de cálculo es la misma quela de ck. Pero hay que tener en cuenta que el diagrama está simplificado. Siendo riguroso,este hk para ser salida se multiplicará con otro vector/matriz de peso.

Intuitivamente y tal como se puede ver en la Figura 4.1, una RNN tiene una conexión desdeuna capa oculta (hidden layer ’A’) a sí mismo, es decir, el output (cell state ck) de la capa seretroalimenta como un input a la red. Por lo tanto, es ’recurrente’.

4.3.2. Explosión/Desaparición del gradiente

Las RNN tienen que encontrar un equilibrio entre retener información durante largo plazoo ser eficientes con el método de Gradient Descent. Las secuencias largas en RNN causan laexplosión o desaparición del gradiente (en inglés, vanishing gradient) [49].

El problema de explosión/desaparición del gradiente durante el proceso de Gradient Descentconsiste en que los pesos W se actualizan en proporción a sus gradientes asociados. Si cuandoretropropagándose (BackPropagation) a través del tiempo los gradientes se vuelven muy pequeños(desaparición del gradiente), las actualizaciones de los pesos serán insignificantes. Entonces, elaprendizaje se inhibirá, ya que los pesos no se actualizan como se requiere. Análogamente, silos gradientes se vuelven extremadamente grandes (explosión del gradiente), serán inestables y elalgoritmo de aprendizaje no convergerá.

En el caso de las RNN, que se pueden desplegar y considerar como redes con pesos compar-tidos, significa que no captan las dependencias a largo plazo.

Partiendo de los artículos [46] y [47], una explicación más detallada con perspectiva matemá-tica sería:

El gradiente ∂L∂W se usa para actualizar los parámetros del modelo W por Gradient Descent

con el fin de minimizar el error de predicción (loss L):

W =W − α( ∂L∂W

)

Utilizamos T para denotar el número total de pasos de tiempo. Calculamos la función de costeLT y usamos el algoritmo de propagación hacia atrás para calcular el gradiente, después de quela RNN genere el vector de predicción hT :

∂L

∂W=

T∑t=1

∂Lt

∂W

El gradiente vendrá dado por la acumulación de gradientes de todos los instantes de tiempo(timesteps).

Si tenemos una tarea de aprendizaje con T timesteps, el gradiente de Loss en el instante detiempo t viene dado por la siguiente ecuación aplicando la regla de la cadena multivariable [49] :

16

Page 22: Ciencia de datos para la predicción de mortalidad

∂Lt

∂W=

t∑i=1

∂Lt

∂ht· ∂ht∂hi· ∂hi∂W

(4.1)

Podemos expandir el factor ∂ht∂hi

de (4.1) aplicando otra vez la regla de la cadena:

∂ht∂hi

=∂ht∂ht−1

· ∂ht−1∂ht−2

. . .∂hi+1

∂hi=

t−1∏k=i

∂hk+1

∂hk(4.2)

El término hk+1 se puede escribir como hk+1 = σ(Wrec · hk +Win · xk+1). Entonces, esposible formular el factor ∂hk+1

∂hkde (4.2) como:

∂hk+1

∂hk= σ′(Wrec · hk +Win · xk+1) ·

∂hk· [Wrec · hk +Win · xk+1]

= σ′(Wrec · hk +Win · xk+1) ·Wrec

(4.3)

Por lo tanto, recapitulando las fórmulas, insertamos la ecuación (4.3) a la ecuación (4.2). Asípues, obtenemos el gradiente retropropagado a través de t-1 pasos de tiempo:

∂ht∂h1

=t−1∏k=1

σ′(Wrec · hk +Win · xk+1) ·Wrec (4.4)

Cuando t es un valor grande, o mejor dicho, si tenemos que retropropagar muchos pasos detiempo, el gradiente (4.4) tiende a desaparecer:

∂ht∂h1→ 0

Ya que por una parte la derivada de la función de activación σ′ es menor que 1, si σ es unafunción sigmoidea. Por consiguiente, multiplicar t-1 números pequeños, el resultado puede serinsignificante.

Por otra parte, si Wrec no es igual a 1, el factor∏t−1

k=1Wrec disminuirá a cero exponencial-mente, o crecerá exponencialmente [49]. En consecuencia, tenemos la desaparición del gradiente,o la explosión del gradiente si los pesos Wrec son lo suficientemente grandes como para combatircontra σ′ pequeña. En la práctica, la desaparición del gradiente es más común, por lo que noscentramos en ello.

Para concluir, intuitivamente la derivada ∂ht∂h1

nos dice cuánto cambiará nuestro estado en eltiempo k (hk) cuando cambiemos un poco el estado en el tiempo 1 (h1). Entonces, si el gradientedesaparece, indica que los estados anteriores tienen muy poco efecto sobre los estados posteriores,lo que significa que no se han aprendido dependencias a largo plazo. Además, si miramos laecuación (4.1), vemos que los sumandos con subíndice i lejano de subíndice t no tienen efectoreal en el cálculo del gradiente de Loss [51].

17

Page 23: Ciencia de datos para la predicción de mortalidad

4.4. Long short-term memory (LSTM) original

4.4.1. Definición del modelo

Los modelos LSTM son un tipo de RNN que están diseñados explícitamente para evitar elproblema de la dependencia a largo plazo. En la Figura 4.3 se puede ver la arquitectura de unLSTM.

Figura 4.3: Arquitectura desplegada de un LSTM. Imagen extraída de [45]

Como se describe en [45], el LSTM tiene 3 puertas (gates):

Forget gate: decidir qué información va a eliminar del estado de la red (cell state o ’cellmemory’, Ct).

Input gate: decidir qué nueva información va a almacenar en cell state.

Output gate: controla qué información codificada en cell state se envía como entrada en elLSTM cell del siguiente timestep, que también será lo que sale en el output (hidden state,ht).

Primero de todo, los inputs pasan por la forget gate, representada por la ecuación:

ft = σ(Wf · [ht−1, xt] + bf )

donde ht−1 es la salida del LSTM cell anterior, xt es la entrada en el instante (timestep) t, W esla matriz/vector de pesos o parámetros a entrenar y b denota el bias. Como la función sigmoideaσ puede generar una salida de 0 a 1, se puede usar para olvidar o recordar la información. Todasestas puertas sigmoideas van seguidas de una multiplicación elemento a elemento. (0 = no guardarnada, 1 = mantener todo, los valores intermedios son posibles).

Por ejemplo, si la forget gate genera una matriz de valores que están muy cerca de 1, significaque la forget gate ha concluido que, según la entrada actual (xt y ht), el historial de la serietemporal anteriores (cell state Ct−1) es muy importante. Y por lo tanto, cuando el cell state deltimestep anterior se multiplica por el output de la forget gate, el cell state continúa reteniendo lamayor parte de su valor original, es decir ’recuerda su pasado’. Si la forget gate genera una matrizde valores cercanos a 0, los valores del cell state se reducen a un conjunto de números diminutos,lo que significa que la forget gate le ha dicho a la red que olvide la mayor parte de su pasado hastaese punto.

18

Page 24: Ciencia de datos para la predicción de mortalidad

A continuación, pasamos a la input gate, representada por las ecuaciones:

it = σ(Wi · [ht−1, xt] + bi)

C ′t = tanh(Wc · [ht−1, xt] + bc)

En la input gate, una capa sigmoid σ decide qué valores actualizaremos. Luego, una capa tanhcrea un vector de nuevos valores candidatos, C ′t, que podrían agregarse al cell state Ct. Se puedeconsiderar que el output de tanh como una versión codificada y normalizada del hidden stateanterior ht−1 combinado con información del timestep actual.

Una vez decidido qué nueva información se va a almacenar en cell state, se renueva el cellstate anterior, Ct−1 al nuevo cell state Ct. Para llevarlo a cabo, se multiplica el cell state anteriorpor la salida de la forget gate, olvidando las cosas que decidió olvidar. Luego se suma la salida dela input gate, que son los nuevos valores candidatos escogidos para actualizar. Este paso se puededescribirse con la fórmula siguiente:

Ct = ft · Ct−1 + it · C ′t

Finalmente, lo que sucede en la puerta de salida es:

ot = σ(Wo · [ht−1, xt] + bo)

ht = ot · tanh(Ct)

Primero, una capa sigmoidea determina qué partes se envían a la salida según la entrada actual(xt y ht). Posteriormente, el cell state pasa a través de la capa tanh, de modo que los valores estanentre -1 y 1. Luego se combina los dos resultados: la salida de la capa sigmoidea selecciona laspartes que queremos que aparezca en la salida del estado oculto. Estas partas también se enviaráncomo entrada a la celda LSTM del siguiente paso de tiempo.

4.4.2. Solución de la desaparición del gradiente

En la Figura 4.4 se puede ver los principales gradientes que se calculan durante BackPropa-gation.

Figura 4.4: Retropropagación en el tiempo para el cálculo de gradientes. Imagen extraída de [46]

Como en las RNN, en el caso de LSTM, el gradiente de Loss viene dado por la siguiente sumade gradientes de T timesteps:

∂L

∂W=

T∑t=1

∂Lt

∂W

19

Page 25: Ciencia de datos para la predicción de mortalidad

Y el gradiente de Loss en el instante de tiempo t viene dado por la siguiente ecuación simpli-ficada 1 [46, 47]:

∂Lt

∂W=

t∑i=1

∂Lt

∂ht· ∂ht∂Ct· ∂Ct

∂Ci· ∂Ci

∂W

=t∑

i=1

∂Lt

∂ht· ∂ht∂Ct· ∂Ct

∂Ct−1. . .

∂Ci+1

∂Ci· ∂Ci

∂W

=

t∑i=1

∂Lt

∂ht· ∂ht∂Ct·( t∏k=i+1

∂Ck

∂Ck−1

)· ∂Ci

∂W

(4.5)

Como podemos ver en la sección Explosión/Desaparición del gradiente, la derivada recursiva∂ht∂hi

hace que los gradientes desaparezcan en las RNNs. Aquí, en los LSTM, tenemos una derivadarecursiva ∂Ct

∂Ci.

Recordamos que Ck = fk · Ck−1 + ik · C ′k y, como antes, expandemos la derivada de Ck:

∂Ck

∂Ck−1=

∂Ck−1[fk · Ck−1 + ik · C ′k]

=∂

∂Ck−1[fk · Ck−1] +

∂Ck−1[ik · C ′k]

=∂fk∂Ck−1

· Ck−1 +∂Ck−1∂Ck−1

· fk +∂ik

∂Ck−1· C ′k +

∂C ′k∂Ck−1

· ik

(4.6)

Calculamos los 4 sumandos de la ecuacón (4.6) sustituyendo las puertas fk, ik, C ′k con susrespectivas fórmulas y aplicando la regla de la cadena. También, por simplicidad, obviamos losbias. Finalmente, este gradiente aditivo se formula como:

∂Ck

∂Ck−1= σ′(Wf · [hk−1, xk]) ·Wf · ok−1 · tanh′(Ck−1) · Ck−1

+ fk

+ σ′(Wi · [hk−1, xk]) ·Wi · ok−1 · tanh′(Ck−1) · C ′k+ tanh′(Wc · [hk−1, xk]) ·Wc · ok−1 · tanh′(Ck−1) · ik= Ak +Bk +Dk + Ek

(4.7)

Insertamos la ecuación (4.7) a la ecuación (4.5). Así pues, obtenemos:

∂Lt

∂W=

t∑i=1

∂Lt

∂ht· ∂ht∂Ct·( t∏k=i+1

[Ak +Bk +Dk + Ek])· ∂Ci

∂W(4.8)

Por varias razones, esta propiedad aditiva dentro del productorio∏

permite que el gradientede LSTM decaiga de forma distinta que en el caso de RNN.

Primero, observamos que en (4.8) tenemos un término Bk = fk = σ(Wf · [hk−1, xk] + bk),mientras en RNN tenemos σ′ dentro del productorio (4.4). También sabemos que la derivada de la

1Hay otras pequeñas derivadas que son indispensables para realizar la derivación completa, pero no son necesariasen nuestro caso, ya que nos centramos en explicar que al menos una parte de derivación completa no desaparece. Latesis doctoral de Alex Graves enumera esas fórmulas derivadas.

20

Page 26: Ciencia de datos para la predicción de mortalidad

función de activación (σ′) tiene un rango menor que la función de activación (σ). Como resultado,los gradientes de RNN decaen mucho más rápido que los gradientes de LSTM.

En segundo lugar, podemos ver que en la ecuación (4.7) hay un sumando fk, que se actualizaen cada timestep y puede tomar valores en el rango [0,1] (salida de la función de activaciónsigmoidea). Recordamos que fk controla qué recordar y qué olvidar del pasado. En la mayoríade casos, retendría algo del pasado. Sin embargo, dada la probabilidad de que un modelo pocointeligente siempre olvide todo el pasado (es decir, siempre establezca la forget gate en un valormuy bajo), la desaparición del gradiente es posible. Esperamos que debido a que la forget gate esentrenable, se entrenará para controlar la forget gate de una manera que mejore el rendimiento delmodelo.

Por último, para ralentizar la desaparición del gradiente, podemos elevar los valores de fk.Por ejemplo, inicializar el bias de la forget gate a un valor más alto. En el artículo [50] realizanuna exploración empírica de diferentes arquitecturas de redes neuronales recurrentes. Muestranque agregando un bias de tamaño 1 a la forget gate mejoró significativamente el rendimiento delLSTM. Además, este método de configuración fue adoptado por Keras, de forma predeterminada,establecen el bias de la forget gate de su capa LSTM a 1.

En resumen, los LSTM abordan el problema de desaparición del gradiente mediante el empleode una estructura de gradiente aditivo que proporciona acceso directo a las salidas de la forget gateft, lo que permite que la red promueva el comportamiento óptimo del gradiente de la función lossal actualizar los valores de las puertas en cada paso de tiempo de entrenamiento.

No obstante, la explosión de gradientes sigue siendo un problema para los LSTM. Los gra-dientes aún podrían explotar y la forma en que lo manejaríamos sería moviéndonos en la direccióndel gradiente para actualizar los parámetros, pero solo en una pequeña magnitud.

4.4.3. Variaciones de LSTM

Gated Recurrent Unit (GRU)

Figura 4.5: Arquitectura desplegada de un GRU. Imagen extraída de [45]

Una variación del LSTM es el GRU, Figura 4.5. En lugar de las tres puertas del LSTM (input,output y forget gate), el GRU se compone de dos puertas, la update gate (zt) y la reset gate (rt).Combina las forget gate y input gate en una única ’update gate’. También fusiona el cell state yel hidden state. El modelo resultante es más simple que los modelos LSTM estándar, por lo quereduce el número de parámetros.

Las siguientes ecuaciones describen la idea detrás de una capa GRU:

21

Page 27: Ciencia de datos para la predicción de mortalidad

zt = σ(Wz · [ht−1, xt] + bz)

rt = σ(Wr · [ht−1, xt] + br)

ht = tanh(Wh · [rt ∗ ht−1, xt] + bh)

ht = (1− zt) ∗ ht−1 + zt ∗ ht

Bidirectional LSTM

Otra variante del LSTM estándar es el LSTM bidireccional, Figura 4.6.

Estas redes constan de dos LSTM que se ejecutan en paralelo, en sentido de instantes de tiem-po (timesteps), uno hacia adelante y otro hacia atrás. En cualquier timestep t, la salida yt es lacombinación de los resultados de los LSTM hacia adelante y hacia atrás mediante la función σ,donde la función σ [48] puede ser una concatenación, una suma, un promedio o una multipli-cación. En Keras, un LSTM bidireccional por defecto define la función σ como una función deconcatenación.

Figura 4.6: Arquitectura desplegada de LSTM bidireccional con tres instantes (timesteps) consecutivos. Imagen extraída de [48]

4.5. Tipos de LSTMs y GRUs usados en el presente trabajo

Esta sección resume los modelos tipo LSTM o GRU usados en las tareas de predicción deLOS y mortalidad de este trabajo.

Los modelos predictivos LSTM y LSTM_w usados en las tareas con OASIS son modelosbásicos basados en LSTM bidireccionales de tipo Many input (indicando número de timesteps ynúmero de variables) One output (la etiqueta de clase). Más detalles en Figura 4.7.

El Standard LSTM (S_LSTM) está basado en una versión Many input (varios timesteps) deLSTM bidireccional. Cada input es concatenación de series de tiempo de variables a través delaxis de variables. Es decir, cada input en un timestep concreto es un solo input vector. Comopuede ver en la Figura 4.8: con hiperparámetro depth = 2, S_LSTM tiene 2 capas LSTM (unacapa LSTM bidirectional many to many y una capa LSTM many to one). Además añadimosMasking layers, es una forma de decirle a las capas de procesamiento de secuencias que faltanciertos pasos de tiempo en una entrada y, por lo tanto, deben omitirse al procesar los datos.

22

Page 28: Ciencia de datos para la predicción de mortalidad

Figura 4.7: Model Summary de modelos: LSTM, LSTM_w. Figura 4.8: Model Summary del modelo S_LSTM.

El channel-Wise LSTM (C_LSTM) preprocesa los datos de diferentes variables de forma in-dependiente utilizando capas de LSTM bidireccional. Utilizan diferentes capas LSTM para dife-rentes variables. Luego, las salidas de estas capas LSTM se concatenan y se alimentan a otra capaLSTM para sacar un único output (la etiqueta de clase). Más detalles en Figura 4.9.

Figura 4.9: Model Summary del modelo C_LSTM. Nota: Slice layer corta el tensor 3D tomando x[:, :, índices]. (índices ' númerode features). En otras palabras, separa los datos de diferentes variables para poder alimentarlos a capas LSTM distintas de formaindependiente.

El channel-Wise GRU (C_GRU) es semejante a C_LSTM, solo que cambiando capas deLSTM bidireccional por capas de GRU bidireccional. Más detalles en Figura 4.10.

Como se muestra en Figura 4.10 y Figura 4.9, C_GRU tiene un total de 20.121 parámetros,mientras que C_LSTM cuenta con 26.817. Entrenando los modelos en CPU de Google Colabo-ratory, se observa que C_GRU acelera el tiempo de aprendizaje por un cuarto (25 %). En concre-to, para entrenar una epoch de C_LSTM se necesita aproximadamente 30 minutos; ahora bien,

23

Page 29: Ciencia de datos para la predicción de mortalidad

C_GRU solo tarda alrededor de 22 minutos para completar una epoch.

Figura 4.10: Model Summary del modelo C_GRU.

24

Page 30: Ciencia de datos para la predicción de mortalidad

Capítulo 5

Experimentación

En este capítulo, describimos los subconjuntos de datos usados, las tareas de predicción rea-lizadas en cada experimento, las arquitecturas base (baselines) utilizadas, los detalles de imple-mentación, las métricas de evaluación y los tests de análisis de los resultados usados.

5.1. Experimentos

En esta sección, describimos los procesos de extracción, transformación y carga (ETL) de lossubconjuntos de los datos usados. Además, definimos las tareas de predicción y explicamos losmodelos predictivos entrenados.

5.1.1. Predicciones usando OASIS

5.1.1.1. Procesos de ETL y cálculo de OASIS

En primer lugar, para poder predecir usando OASIS tuvimos que calcular esta medida paracada estancia en la UCI. OASIS [5] es un entero que puntúa el nivel de riesgo de un paciente.La puntuación se obtiene mediante mediciones de las 10 variables que componen OASIS, en lasprimeras 24 horas de una estancia en la UCI.

Al ser un dataset grande, después de varios intentos de agrupar datos por estancia en la UCIa la vez, decidimos elegir la estructura de trabajo de Harutyunyan et al. [22], que consiste en lossiguientes pasos (resumidos en la Figura 5.1).

Utilizamos datos brutos de MIMIC-III. Los datos de cada estancia en la UCI se dividieron encarpetas separadas; en cada una había archivos en formato csv que contenían datos fisiológicos(10 variables necesarias para el cálculo OASIS) y otras informaciones para crear etiquetas depredicción.

Más concretamente, primero cogimos los csv PATIENTS, ADMISSIONS y ICUSTAYS deMIMIC-III y, los unimos mediante las claves de las tres tablas relacionales en una única. Elresultado fue un Dataframe que contenía 61.532 estancias en la UCI durante 57.786 ingresoshospitalarios para 46.476 pacientes.

De este Dataframe sacamos las informaciones generales (SUBJECT_ID, HADM_ID, AD-MITTIME, ADMISSION_TYPE, ICUSTAY_ID, INTIME, LOS, AGE, PRELOS) para cada es-tancia en cuidados intensivos (ICUSTAY_ID).

25

Page 31: Ciencia de datos para la predicción de mortalidad

Seguidamente, generamos un directorio para cada ICUSTAY_ID ( data/root/ICUSTAY_ID) yescribimos las informaciones generales en data/root/ICUSTAY_ID/stays.csv. También distribui-mos las mediciones guardadas entre estos directorios diferentes. Es decir, escribimos los eventosde CHARTEVENTS.csv (temperatura, frecuencia cardíaca, frecuencia respiratoria, puntuaciónde la escala de coma de Glasgow, presión arterial media) en data/root/ICUSTAY_ID/events.csv.De manera similar, escribimos los eventos de OUTPUTEVENTS.csv (urine) en data/root/ICUS-TAY_ID/urine.csv y los de PROCEDUREEVENTS_MV.csv (ventilation) en data/root/ ICUS-TAY_ID/ventilation.csv. Una vez obtenidos los tres archivos, decidimos tratarlos de manera di-ferente ya que tienen cabeceras distintas, y era más directo de este modo.

Cuando tuvimos los datos bien distribuidos, para cada ICUSTAY_ID, creamos un Datafra-me que contenía la información de las 10 variables que servían para calcular el oasis score de eseICUSTAY_ID. Para ello, iteramos los directorios data/root/ICUSTAY_ID. Luego, para cada direc-torio leímos los ventilation.csv, urine.csv y events.csv como Pandas Dataframes y según ITEMIDde cada fila y, separamos las filas en dataframes diferentes, con un dataframe para cada variable(por ejemplo, las mediciones de temperatura en df_temp). Obtenidos estos dataframes, pudimosunir (left join merge) el dataframe (leído del stay.csv) que contenía la información general delICUSTAY_ID (por ejemplo, el día que fue ingresado en la UCI) con estos dataframes de varia-bles. De esta manera, filtramos las mediciones tomadas en las primeras 24 horas estando en laUCI y creamos un único dataframe que pasaríamos a la función compute_oasis() para calcularel OASIS. La función compute_oasis() es un código de fuente abierto proporcionado por TomPollard.1

Durante este proceso de ETL, eliminamos las mediciones que eran marcadas como erróneas,unificamos las unidades de medida de cada variable y, a la hora de calcular OASIS, si habíanvariables fisiológicas que no tenían ninguna medición tomada (missing value), imputamos esasvariables con valores dentro de un rango de valores fisiológicos normales. Este método de impu-tación refleja la práctica clínica. En el caso de que faltara algún valor vital, o de laboratorio nomedido, hasta cierto momento en concreto durante la hospitalización del paciente, era probableque para dicha fecha el paciente no hubiese mostrado síntomas los cuales sugieran hacer la medi-ción. Por lo tanto, un médico asumiría (de manera apropiada o inapropiada) que este valor faltanteestuviese dentro de un rango normal no amenazante [40].

Figura 5.1: Diagrama de flujo simple del proceso ETL para calcular OASIS.

1https://gist.github.com/tompollard/d4c216d0c4ad30481c99#file-oasis_score-L6

26

Page 32: Ciencia de datos para la predicción de mortalidad

5.1.1.2. Predicción de LOS usando OASIS

Tras el proceso de ETL, obtuvimos una cohorte raíz de 61.532 estancias en la UCI durante57.786 ingresos hospitalarios para 46.476 pacientes. Cada estancia tenía asociada una puntuaciónde OASIS calculada.

Luego, con el fin de poder comparar adecuadamente los resultados de las predicciones usandoOASIS con los resultados del benchmark de Harutyunyan et al., decidimos usar la misma cohorteque el benchmark.

Concretamente, en el benchmark [22] excluyeron a los pacientes menores de 18 años, las es-tadías en la UCI con traslados, los ingresos hospitalarios con 2 o más estadías en la UCI, todaslas estancias que se desconocía su LOS, las que eran inferiores a 24 horas y finalmente las queno tenían observaciones en las primeras 24 horas. Dividieron el conjunto de datos en dos subcon-juntos. El primer subconjunto se utilizaba para ajustar el modelo de predicción y se denominabaconjunto de datos de entrenamiento (Train set). El segundo subconjunto no se utilizaba para entre-nar el modelo; en su lugar, se utilizaba para evaluar el modelo entrenado. Este segundo conjuntode datos se denominaba conjunto de datos de prueba (Test set), era un 15 % del conjunto total.Esto produjo conjuntos de test y train finales de 5.282 y 29.846 estadías en la UCI, respectiva-mente. Los identificadores de estas estancias en la UCI se guardaban separadamente en ficheros.csv llamados listfiles. Para tener los mismos conjuntos de train y test, hicimos un merge de estosficheros con nuestra cohorte raíz.

Formulamos la predicción de la duración de la estancia en cuidados intensivos como un pro-blema de clasificación binaria. Asignamos etiquetas de clasificación a cada estancia: las estanciascortas,≤ 3 días, son la clase negativa (label 0), y las estancias largas, >3 días, son la clase positiva(label 1). Escogimos este umbral por la facilidad de comparación con otro benchmark [15].

El resultado final del conjunto de datos para entrenar un modelo de predicción es una tabla(Dataframe) con dos columnas, una para la etiqueta y otra para la puntuación OASIS. Cada filadel Dataframe representaba una estancia de UCI (sample).

Luego, realizamos un proceso llamado Data Scaling que consiste en ajustar los rangos delas variables de un conjunto de datos en una misma escala. Concretamente, estandarizamos lasvariables sustrayendo la media y escalando a la varianza unitaria.

El último paso era seleccionar modelos de predicción. Elegimos Logistic Regression2 y Ran-dom Forest Classifier3 de la librería Scikit-learn. Además, teniendo en cuenta que nuestro conjun-to de datos era sesgado, para cada tipo de modelo entrenamos dos modelos. En uno ajustamos elhiperparámetro class_weight dando más peso a los ejemplos positivos, que eran de clase minorita-ria. Es decir, penalizamos los errores de clase positivo con un peso más alto, en lugar de penalizarlas dos clases con el mismo. Un peso más alto significa que se pretende poner más énfasis en esaclase. En el otro modelo usamos un mismo peso para ambas clases.

Entrenamos los modelos -abreviados como RF, RF_w, LR y LR_w- con Train set y evaluamosel rendimiento de los modelos sobre Test set con las métricas de evaluación explicadas en la sec-ción Métricas de evaluación: Accuracy(ACC), AUC-ROC y AUC-PR. Los resultados se presentanen la Tabla 6.1.

Como se puede ver en la tabla, el rendimiento de predicción de los modelos solo usando

2https://scikit-learn.org/stable/modules/generated/sklearn.linear_model.LogisticRegression.html

3https://scikit-learn.org/stable/modules/generated/sklearn.ensemble.RandomForestClassifier.html

27

Page 33: Ciencia de datos para la predicción de mortalidad

una única variable OASIS era pobre. Por lo tanto, inspirado en el benchmark de Harutyunyanet al., decidimos probar a usar Long short-term memory (LSTM) para subir el rendimiento. Nousamos la OASIS calculada, sino que cogimos las series temporales de 7 variables que componíanOASIS (gcs, heart rate, mean arterial blood pressure, respiratory rate, temperature, age, prelos)e intentamos capturar más informaciones de los patrones temporales. Decidimos no incluir lavariable orina, ya que tenía una tasa de valor faltante relativamente alta y era difícil determinar,de una manera razonable, cuál era el valor ’normal’ que imputamos a esos valores faltantes de laserie temporal de la variable orina. Además, excluimos la variable ventilación mecánica porque,a diferencia de otras variables, no solo tenía una marca de tiempo que indicaba cuándo se midióla variable, sino que también tenía una marca de tiempo que señalaba cuándo se completó esteprocedimiento de respiración artificial. Por lo tanto, se requería un método de procesamiento dedatos distinto del utilizado para las otras variables para derivar una serie de tiempo adecuada apartir de esta variable.

El LSTM es un tipo de Red Neuronal Recurrente diseñado para capturar dependencias a lar-go plazo en datos secuenciales. Para más detalles, véase el capítulo Introducción a los modelospredictivos.

Así pues, implementamos un LSTM bidireccional básico de tipo Many input (indicando nú-mero de timesteps y número de variables), y lo denominamos como LSTM. Este modelo tomabacomo input la concatenación de todas las series temporales de diferentes variables a lo largo deleje de variables. Para más detalles véase la Figura 4.7.

La extracción de la serie temporal era similar al proceso ETL mencionado anteriormente.Los datos de cada estancia en la UCI se dividieron en carpetas separadas. Pero entonces, enlugar de crear un Dataframe para cada estancia que contenían información de las 10 variables deOASIS, creamos un Dataframe que contenía mediciones de 7 variables ordenadas por tiempo. Esdecir, cada columna contenía mediciones de una variable concreta. Y tenemos una columna extra(Hours) que indicaba cuando fueron tomadas las mediciones. Si habían variables que no fuerontomadas a cierta hora se indicaban con NaNs.

Luego creamos un conjunto de datos limpio de series temporales para la tarea de predicción.Igual que el benchmark [22], extrajimos las series temporales de las primeras 24 horas en la UCIy volvimos a muestrearlas en intervalos regularmente espaciados. Si habían varias medicionesen el mismo intervalo, usábamos el valor de la última medición. También imputamos los valoresfaltantes usando el valor de medición más reciente si existía y, un valor ’normal’ predeterminadoen caso contrario. Finalmente, los datos se estandarizaron antes de entrenar.

El LSTM básico se componían de una sola capa Bidirectional LSTM, una capa Dropout parareducir el sobreajuste y, por último, una capa de salida Dense con función de activación sigmoidpara predecir el label de los samples. La función loss que usamos para entrenar el LSTM bási-co es binary cross entropy. Usamos el optimizador Adam y la métrica utilizada para evaluar elrendimiento es la precisión.

Análogamente, considerando el problema de tener datos sesgados, entrenamos dos modelos,uno con pesos personalizados en cada clase de samples (LSTM_w) y, el otro con pesos iguales enlas dos clases (LSTM). Entrenamos los modelos con Train set y los evaluamos sobre Test set. Verresultados en la Tabla 6.1.

28

Page 34: Ciencia de datos para la predicción de mortalidad

5.1.1.3. Predicción de la mortalidad usando OASIS

Para esta tarea, realizamos un pre-procesamiento similar a la tarea anterior. Cogimos el con-junto de datos después del proceso de ETL, obtuvimos una cohorte de 61.532 estancias en la UCI.Cada estancia tenía asociada una puntuación de OASIS calculada.

Luego, como antes, con el fin de poder comparar adecuadamente los resultados, decidimosusar la misma cohorte que el benchmark [22].

Concretamente, en el benchmark [22] excluyeron los pacientes menores de 18 años, las esta-días en la UCI con traslados, los ingresos hospitalarios con 2 o más estadías en la UCI, todas lasestancias que se desconocía su LOS, las que eran inferiores a 48 horas y finalmente las que notenían observaciones en las primeras 48 horas. Dividieron el conjunto de datos en dos subconjun-tos: Train set (85 % del total) y Test set (15 % del total). Esto produjo conjuntos de test y trainfinales de 3.236 y 17.903 estadías en la UCI, respectivamente.

Formulamos la predicción de la mortalidad hospitalaria como un problema de clasificaciónbinaria. Asignamos etiquetas de clasificación a cada estancia: las que sobrevivieron son la clasenegativa (label 0), y las que no sobrevivieron son la clase positiva (label 1). Más concretamente,determinamos la mortalidad hospitalaria comparando la fecha de muerte del paciente con lasfechas de ingreso y de alta hospitalaria. El resultado final del conjunto de datos para entrenar unmodelo de predicción fue un Dataframe con dos columnas, una para la etiqueta y otra para lapuntuación OASIS. Cada fila del Dataframe representaba una estancia de UCI (sample).

Después, realizamos el proceso de Data Scaling usando la estandarización mencionada en latarea de predicción de LOS.

El último paso fue seleccionar los modelos de predicción. Elegimos los mismos modelos que latarea anterior: Logistic Regression y Random Forest Classifier de la librería Scikit-learn. Tambiénconsiderando el problema de tener datos sesgados (la clase positiva solo representa un 10 % delos samples), para cada tipo de modelo entrenamos dos modelos, uno con pesos personalizadosen cada clase de samples y, el otro con pesos iguales en las dos clases.

Entrenamos los modelos -abreviados como RF, RF_w, LR y LR_w- con Train set y evaluamosel rendimiento de los modelos sobre Test set. Ver resultados en la Tabla 6.2.

Como se puede ver en la tabla, ocurre algo similar que en la tarea anterior: los resultadosno son satisfactorios. Por lo tanto, entrenamos dos modelos LSTM, siguiendo exactamente losmismos pasos que la tarea pasada cambiando solo las etiquetas de las clases. Ver detalles delrendimiento en la Tabla 6.2.

5.1.2. Benchmark de Harutyunyan et al.

Tal como se detalla en la introducción, también hemos replicado el benchmark de Harutyunyanet al. [22] que tenía buenos resultados del estado de arte.

Harutyunyan et al. extrajeron 17 series temporales de variables fisiológicas con 12 series tem-porales de valor real y 5 categóricas (por ejemplo, frecuencia cardíaca, frecuencia respiratoria,escala de coma de Glasgow) de las primeras horas de las estancias en la UCI, muestreadas aintervalos regularmente espaciados, por ejemplo, de hora en hora. Las variables categóricas seconvirtieron en vectores one-hot. También agregaron 17 variables de enmascaramiento para de-notar los valores faltantes. Asimismo, normalizaron los datos para tener media cero y desviaciónestándar 1.

29

Page 35: Ciencia de datos para la predicción de mortalidad

Compilaron un subconjunto de la base de datos MIMIC-III que contenía más de 31 millones deeventos clínicos que correspondían a 17 variables clínicas. Estos eventos cubrían 42.276 estadíasen la UCI de 33.798 pacientes únicos. Los datos de cada paciente se dividieron en episodiosseparados que contenían tanto series temporales de eventos como resultados a nivel de episodio.

Además, usaron la regresión logística, dos modelos basados en arquitecturas LSTM (StandardLSTM y Channel-wise LSTM) y dos modelos con multi-task learning para realizar las tareas depredicción. Detallaremos los primeros tres modelos en la subsección siguiente.

Las métricas de evaluación utilizadas en el benchmark [22] eran AUC-ROC, AUC-PR y ACC(explicadas en la sección Métricas de evaluación).

Cabe destacar que su tarea de predicción de LOS tenía una definición distinta a la nuestra.Por consiguiente, actualizamos algunas funciones obsoletas del código del benchmark [22] ymodificamos el código para adaptarlo a nuestra definición.

En el benchmark [22] se usaban diferentes conjuntos de cohortes para diferentes tareas. Éstoslos detallaremos más adelante en las subsecciones de las tareas correspondientes.

5.1.2.1. Predicción de la mortalidad

Definieron esta tarea como un problema de clasificación binaria.

Para preparar el conjunto de datos a entrenar, comenzaron con la cohorte raíz (42.276 esta-días en la UCI) y además excluyeron todas las estancias para las que se desconocía su LOS, lasque eran inferiores a 48 horas, y las que no tenían observaciones en las primeras 48 horas. Estoprodujo conjuntos de test y train finales de 3.236 y 17.903 estadías en la UCI, respectivamen-te. Determinaron la mortalidad hospitalaria comparando la fecha de muerte del paciente con lostiempos de admisión y alta hospitalaria. La tasa de mortalidad resultante fue del 13,23 % (2.797de 21.139 estancias en la UCI).

Así pues, ejecutamos los comandos proporcionados por los autores del benchmark [22] queindicaban los hiperparámetros que obtuvieron mejores resultados en:

Logistic regression: Harutyunyan et al. incluyeron variables hand-engineered. Para cadavariable, calcularon seis variables estadísticas diferentes (p. ej. mínimo, máximo, media... )en siete subsecuencias diferentes de una serie temporal.

Standard LSTM: modelo basado en Long short-term memory recurrent neural networks(LSTM RNNs).

Cada entrada (sample) al modelo LSTM es la concatenación de las series de tiempo dediferentes variables a lo largo del eje de variables. El modelo toma una instancia (entrada,etiqueta de clase) y usa capas Multi-Step LSTM bidireccionales para procesar la entrada.Para predecir el objetivo, se agrega la capa de salida (Dense layer) con activación sigmoid.La función loss es binary cross entropy. Se aplica dropout en conexiones no recurrentesentre capas LSTM y antes de la capa de salida.

Channel-wise LSTM: este modelo preprocesa los datos de diferentes variables de formaindependiente. Usa distintas capas de LSTM bidireccional para diferentes variables. Luego,las salidas de estas capas LSTM se concatenan y alimentan a otra capa LSTM. La capa desalida (Dense layer) y las funciones loss son las mismas que las del Standard LSTM.

Usamos el módulo channel-wise por dos razones. Primero, ayuda a procesar los datos deuna sola variable antes de combinarlos con datos de otras variables, lo que permite que el

30

Page 36: Ciencia de datos para la predicción de mortalidad

modelo aprenda a almacenar cualquier información valiosa específica de esa variable. Ensegundo lugar, es más fácil incluir información de datos faltantes con variables de enmas-caramiento explícitas.

Adicionalmente, inspirado en Channel-wise LSTM, añadimos un nuevo modelo llamado Cha-nnel-wise GRU. A diferencia de Channel-wise LSTM, el último modelo emplea capas de GRU(Gated Recurrent Unit) bidireccional en lugar de capas de LSTM bidireccional. El GRU es unavariante del LSTM; produce resultados comparables a los del LSTM pero se entrena con me-nos parámetros, lo que implica menos tiempo de entreno. Para más detalles, véase el capítuloIntroducción a los modelos predictivos.

Para cada modelo tipo LSTM o GRU se entrenaron 35 epochs4 y evaluamos el Test set conel modelo de la mejor epoch, es decir, la que contaba con el aucpr más alto del conjunto devalidación.

Los detalles de AUC-ROC y AUC-PR, con intervalos de confianza del 95 %, obtenidos mues-treando el conjunto de prueba (Test set) 10000 veces con reemplazo, están en la Tabla 6.3.

5.1.2.2. Predicción de LOS

Originalmente, Harutyunyan et al. definieron esta tarea como un problema de clasificaciónmulticlase (con 10 clases). Además, intentaron predecir el tiempo restante de estancia en la UCIen cada hora de estancia. Esto produjo conjuntos de test y train finales de 525.912 y 2.925.434samples, respectivamente. Esta cantidad de samples no fue posible manejarlo en los recursos quedisponía. Por consiguiente, decidimos modificar la tarea a un problema de clasificación binaria.Asimismo, esta nueva definición del problema nos permitió comparar los resultados con otrotrabajo de state-of-art, MIMIC-Extract [15].

Formulamos la predicción de la duración de la estancia en cuidados intensivos como un pro-blema de clasificación binaria. Asignamos etiquetas de clasificación a cada estancia: las estanciascortas,≤ 3 días, son la clase negativa (label 0), y las estancias largas, >3 días, son la clase positiva(label 1).

Para ello, modificamos los scripts de selección de cohorte, los de asignación de labels, losde lectura de datos y los de avaluación. Los modificamos siguiendo una estructura similar a lapredicción de mortalidad de Harutyunyan et al.

Para preparar el conjunto de datos a entrenar, comenzamos con la cohorte raíz (42.276 estadíasen la UCI) y además excluimos todas las estancias para las que se desconocía su LOS, las que eraninferiores a 24 horas, y las que no tenían observaciones en las primeras 24 horas. Esto produjoconjuntos de test y train finales de 5.282 y 29.846 estadías en la UCI, respectivamente. La tasade estancias largas resultante fue de un 38 % (13.555 de 35.128 estancias en la UCI) para lapredicción de LOS >3 días. Para esta tarea, tenemos datos más balanceados comparando con latarea de predecir la mortalidad hospitalaria.

Entrenamos los mismos modelos mencionados en la subsección anterior: Logistic regression,Standard LSTM, Channel-wise LSTM y Channel-wise GRU. Para cada modelo tipo LSTM oGRU se entrenaron 35 epochs y se evaluó el Test set con el modelo de la mejor epoch.

Los detalles de AUC-ROC y AUC-PR, con intervalos de confianza del 95 %, obtenidos mues-treando el conjunto de prueba 10000 veces con reemplazo, están en la Tabla 6.4.

4El número de epochs es un hiperparámetro que define el número de veces que el algoritmo de aprendizaje seentrenará en todo el conjunto de datos de entrenamiento (Train set).

31

Page 37: Ciencia de datos para la predicción de mortalidad

5.2. Métricas de evaluación

En esta sección vamos a definir las métricas utilizadas para medir el rendimiento de los mo-delos en este trabajo.

La métrica informada con más frecuencia en la investigación de predicción de la mortalidades area under the receiver operator characteristic curve (AUC-ROC).

En una curva ROC, se traza la tasa de verdaderos positivos (TPR = True Positive Rate =Sensitivity) contra la tasa de falsos positivos (FPR = False Positive Rate = 1 - Specificity) paradiferentes umbrales de decisión. Dicho de otra manera, la FPR se traza en el eje x y la TPR setraza en el eje y. Cada punto de la curva ROC representa un par de TPR/FPR correspondiente aun umbral de decisión particular.

Predicho0 1

Rea

l 0 TN FP1 FN TP

Cuadro 5.1: Convención de matriz de confusión

TPR =TP

TP + FN

FPR = 1− TN

TN + FP

La métrica AUC-ROC, o área bajo la curva ROC, es un número que resume el rendimientode un modelo en términos de su curva ROC. Es decir, es una medida de qué tan bien un modelopuede distinguir entre dos clases. Un modelo con alta capacidad de discriminación tendrá una altasensibilidad y sería muy específico, lo que conducirá a un AUC-ROC más cercano a 1. Cuantomenor sea el AUC-ROC, más pobre será el rendimiento del modelo.

También usamos la métrica area under the precision-recall curve (AUC-PR), ya que puedeser más informativa cuando se trata de conjuntos de datos muy sesgados. Es decir, cuando lossupervivientes dominan el conjunto de datos en la predicción de la mortalidad, o cuando haymuchas más estancias cortas en la UCI que estancias largas en la predicción de LOS.

En estas situaciones, la curva ROC, que grafica TPR contra FPR, dando las mismas pondera-ciones para las clases minoritarias y mayoritarias, puede ser engañosa. La intuición es la siguiente:para conjuntos de datos altamente desequilibrados, una gran cantidad de verdaderos negativos re-duce la FPR. Sin embargo, la curva PR no tiene este problema.

La curva PR analiza el valor predictivo positivo (PPV = Precision) y la tasa positiva verdadera(TPR = Sensitivity = Recall) para un set de diferentes umbrales de decisión.

PPV =TP

TP + FP

TPR = 1− TP

TP + FN

Dado que la curva PR se centra principalmente en la clase positiva (por ejemplo, la clasepositiva en el caso de la predicción de la mortalidad hospitalaria son los pacientes que fallecieron

32

Page 38: Ciencia de datos para la predicción de mortalidad

en el hospital), se preocupa menos por la clase negativa. De esta manera, AUC-PR puede reflejarmejor el resultado del modelo en un conjunto de datos desequilibrado.

Una alta AUC-PR representa tanto una alta cobertura (recall) como una alta precisión. Muestraque el clasificador está dando resultados precisos (alta precisión), así como también da la mayoríade los resultados positivos (alto recall).

También incluimos la métrica Accuracy (número de predicciones correctas / número total depredicciones) por su fácil interpretación.

Accuracy =TP + TN

TP + FP + TN + FN

5.3. Tests de análisis de resultados

En esta sección introducimos diferentes tests utilizados para comparar los resultados de losmodelos predictivos desarrollados en nuestro trabajo.

5.3.1. Bootstrapping

Como se describe en el libro [57], la idea principal detrás del bootstrapping es utilizar unaforma de remuestreo de los datos disponibles para obtener más conocimiento sobre la poblaciónsubyacente y hacer inferencias de ella.

Principalmente, el procedimiento de bootstrap es un método que se usa para estimar la distri-bución de muestreo al tomar múltiples muestras con reemplazo de la muestra aleatoria disponible.Con bootstrapping, tratamos los datos disponibles (por ejemplo, las predicciones del Test set) co-mo la población y las muestras repetidas de la muestra original representan lo que obtendríamos sitomáramos muchas muestras de la población. Es decir, sustituimos la distribución de la poblacióncon la distribución de la muestra original y luego extraemos muestras repetidamente de la muestraoriginal para imitar el proceso de generación de una distribución de muestreo.

Bootstrapping también es una forma apropiada de controlar la estabilidad de los resultados. Sila muestra original tiene valores extremos o atípicos, el bootstrap promediará estos valores y lavariabilidad del bootstrap será menor.

Otra aplicación de bootstrapping es generar intervalos de confianza (IC) con intervalos depercentiles. La idea básica es generar una gran cantidad de muestreos con reemplazo y ordenarlos.Una vez ordenado, podemos eliminar el 5 % de los resultados más extremos (es decir, 2,5 % enel extremo inferior y 2,5 % en el extremo superior) y los valores extremos resultantes serán loslímites del IC.

Por ejemplo, para calcular AUC-ROC de un modelo con IC del 95 %, primero muestreamoslas predicciones del Test set con reemplazo, luego calculamos y guardamos el AUC-ROC delconjunto muestreado. Repetimos este proceso 10000 veces. Por último, ordenamos los AUC-ROCs guardados y escogemos el 2,5◦ percentil y 97,5◦ percentil como los límites del intervalo deconfianza. Estos intervalos nos permiten realizar la comparativa con más confianza.

33

Page 39: Ciencia de datos para la predicción de mortalidad

5.3.2. Calibración

Aparte de las métricas que indican la capacidad de discriminación de un modelo predictivo (p.ej. AUC-ROC), introducimos una calibración simple.

La calibración [55, 56] se refiere al acuerdo entre los resultados observados y las prediccio-nes. Es posible realizar una evaluación gráfica de la calibración con predicciones en el eje x ylos resultados reales en el eje y. Como ejemplo ilustrativo, véase la Figura 5.2. Las prediccio-nes perfectas deben estar en la diagonal. Una curva cercana a la diagonal indica que los riesgospredichos se corresponden bien con las proporciones observadas. A modo de ejemplo, si predeci-mos un 10 % de riesgo de muerte para un paciente, la frecuencia observada de muerte debería seraproximadamente 10 de cada 100 pacientes con tal predicción.

Figura 5.2: Un ejemplo ilustrativo de la calibración. Imagen adaptada del artículo [56]

También podemos graficar los resultados para sujetos con probabilidades similares y, por lotanto, comparar la media de probabilidad predicha de ese grupo de sujetos con el resultado realde ese grupo. Por ejemplo, podemos graficar los resultados observados por decil de predicciones,como se hizo en [22] y [52]. Sin embargo, debemos señalar que dicha agrupación, aunque escomún, puede ser arbitraria e inexacta.

5.3.3. T-test

Existen varios tipos de pruebas de hipótesis, con aplicaciones a las comparaciones de mode-los predictivos [58]. En este trabajo se emplea la prueba t pareada con validación cruzada de kiteraciones (en inglés, K-fold cross-validated paired t test).

Primero de todo, consideramos un conjunto de datos D y dos modelos (A y B). Luego, comose explica en [58], dividimos el conjunto de datos en k grupos disjuntos de igual tamaño. A con-tinuación, se emplean k-1 grupos para entrenar los modelos A y B (Train set) y el grupo restantese emplea como test (Test set). Este proceso se repite k veces utilizando un grupo distinto comotest en cada iteración. Además, en cada iteración de validación cruzada, calculamos la diferencia

34

Page 40: Ciencia de datos para la predicción de mortalidad

de rendimiento (por ejemplo, diferencia de AUC-PR) entre A y B, de modo que obtenemos kmedidas de diferencia.

Por último, asumiendo que estas k diferencias siguen una distribución normal, podemos apli-car la prueba t de Student con la hipótesis nula de que los modelos A y B tienen el mismo ren-dimiento. Para ello, calculamos el estadístico t (t-statistic) con k-1 grados de libertad usando lasiguiente fórmula:

t =p ·√k√∑k

i=1(pi−p)2k−1

,

donde k es el número de iteraciones de cross-validation, pi es la diferencia entre los rendimien-tos de los modelos A y B en la i-ésima iteración (por ejemplo, pi = AUCPRA

i −AUCPRBi ), y

p es la media de las diferencias (p = 1k

∑ki=1 pi).

Una vez que tenemos el t-statistic, podemos calcular el valor p (p-value) y compararlo con unnivel de significancia α. Por ejemplo, escogemos α = 0, 05. Si el valor p es menor o igual que α,entonces podemos rechazar la hipótesis nula y afirmar que hay una diferencia significativa entreel rendimiento de los dos modelos.

5.4. Detalles de implementación

Aunque existen varias alternativas técnicas para combinar subconjuntos de datos de diversastablas relacionales de MIMIC-III (por ejemplo, utilizando SQL), en este trabajo se usa principal-mente la librería pandas5.

Pandas es una librería de software para el lenguaje de programación Python especializada en elmanejo y análisis de datos. El uso de pandas aporta simplicidad y eficiencia para el tratamiento delos datos. Permite leer y escribir fácilmente ficheros Excel, CSV y bases de datos SQL. Asimismo,ofrece estructuras de datos y operaciones para trabajar con series temporales y tablas numéricas.

Sin embargo, pandas tiene limitaciones en la RAM. Por lo tanto, para manipular grandesficheros, como en la sección Análisis exploratorio de MIMIC-III, usamos otra librería llamadasqlite36. Mediante sqlite3, se puede transformar un archivo CSV en un archivo de base de datos(con extensión .db) para luego definir consultas SQL en ese archivo. La respuesta de esas consultasserá un subconjunto del original, por lo tanto más pequeño. De esta manera, podemos convertir elsubconjunto en un DataFrame de pandas que se podrá guardar en la memoria RAM.

Para la implementación y el entreno de los modelos de aprendizaje profundo y automáticooptamos por las librerías Keras7 (ejecutándose sobre TensorFlow8) y Scikit-learn9.

Para el análisis de los resultados empleamos las librerías Numpy10, SciPy11, Seaborn12 y Mat-plotlib13.

5https://pandas.pydata.org/6https://docs.python.org/3/library/sqlite3.html7https://keras.io/8https://www.tensorflow.org/9https://scikit-learn.org/stable/

10https://numpy.org/11https://www.scipy.org/scipylib/index.html12https://seaborn.pydata.org/13https://matplotlib.org/

35

Page 41: Ciencia de datos para la predicción de mortalidad

Como el entrenamiento de los modelos requiere mucho tiempo y consume la potencia de lacomputadora personal, elegimos Google Colaboratory como el servidor en la nube para trabajar.Este servidor es compatible con Python y tiene instaladas las bibliotecas principales, por lo queel usuario solo necesita importarlas.

Finalmente, como hemos indicado anteriormente, usamos el código de Tom Pollard14 paracalcular el OASIS, el código de Jordi Albiol15 para algunos pasos del ETL y por último, el códigodel benchmark de Harutyunyan et al.16.

14https://gist.github.com/tompollard/d4c216d0c4ad30481c99#file-oasis_score-L6

15https://github.com/Jordi588/Final-Project-Master16https://github.com/YerevaNN/mimic3-benchmarks

36

Page 42: Ciencia de datos para la predicción de mortalidad

Capítulo 6

Resultados

En este capítulo recopilamos los resultados de evaluación de todos los modelos predictivospresentados en el capítulo Experimentación.

En la Tabla 6.1 se resume el desempeño de los modelos entrenados para la tarea ’Predicciónde LOS >3 días’. Estos modelos utilizan la puntuación OASIS o series temporales de las variablesque componen OASIS. Como se puede ver en la tabla, los modelos entrenados con series tempo-rales (LSTM y LSTM_w) superaron a los modelos que usan únicamente la puntuación OASIS enun 10 %, en términos de AUC-ROC, AUC-PR y ACC.

Modelo ACC train ACC test AUC-ROCtest

AUC-PRtest

confusionmatrix Testset

Random Forest(RF) 64.9032 65.0511 0.6590 0.5435

[[2824 416][ 1430 612]]

Random Forest conclass weight(RF_w)

61.9916 61.5676 0.6590 0.5435[[1990 1250][ 780 1262]]

Logistic Regression(LR) 64.7691 65.0890 0.6565 0.5367

[[2881 359][ 1485 557]]

Logistic Regressioncon class weight(LR_w)

62.0653 61.7190 0.6565 0.5367[[2020 1220][ 802 1240]]

LSTM(LSTM) 71.9900 72.2832 0.7301 0.6528 [[2803 437]

[ 1027 1015]]

LSTM con classweight(LSTM_w)

71.2500 71.5259 0.7313 0.6400[[2672 568][ 936 1106]]

Cuadro 6.1: Predicción de LOS >3 días. Datos de las primeras 24 horas + imputar missing values con valores ’normales’ + excluir<18 años + excluir estadías en la UCI con traslados + excluir todas las estancias que se desconocía su LOS, las que eran inferioresa 24 horas, y las que no tenían observaciones (de 17 variables escogidas en el benchmark de Harutyunyan et al.) en las primeras 24horas. Esto produjo conjuntos de test y train finales de 5.282 y 29.846 estadías en la UCI, respectivamente.

En la Tabla 6.2 se resume el rendimiento de los modelos entrenados para la tarea ’Predicción

37

Page 43: Ciencia de datos para la predicción de mortalidad

de la mortalidad hospitalaria’. Estos modelos utilizan la puntuación OASIS o series temporalesde las variables que componen OASIS. Como se ve en la tabla, para esta tarea, los modelos entre-nados con series temporales (LSTM y LSTM_w) superaron a los modelos que usan únicamentela puntuación OASIS en un 5 % en términos de AUC-ROC y un 20 % en AUC-PR. Y como ob-servación, analizando las matrices de confusión que se incluyen en la Tabla 6.2, los modelos condiferentes pesos (es decir, los que llevan sufijo ’_w’) no cometen el error de clasificar todos lossamples en clase dominante. Esta característica no se refleja en los aucrocs ni en los aucprs, yaque disminuyen los falsos negativos pero a la vez aumentan los falsos positivos.

Modelo ACC train ACC test AUC-ROCtest

AUC-PRtest

confusionmatrix Testset

Random Forest(RF) 86.5721 88.5661 0.7021 0.2424

[[2859 3][ 367 7]]

Random Forest conclass weight(RF_w)

60.2972 60.7540 0.7020 0.2395[[1690 1172][ 98 276]]

Logistic Regression(LR) 86.4436 88.5043 0.7058 0.2557

[[2855 7][ 365 9]]

Logistic Regressioncon class weight(LR_w)

65.6873 66.5637 0.7058 0.2557[[1905 957][ 125 249]]

LSTM(LSTM) 86.6300 87.9481 0.7395 0.3041

[[2778 84][ 306 68]]

LSTM con classweight(LSTM_w)

74.1600 73.8875 0.7739 0.3356 [[2149 713][ 132 242]]

Cuadro 6.2: Predicción de la mortalidad hospitalaria. Datos de las primeras 24 horas + imputar missing values con valores ’normales’+ excluir <18 años + excluir todas las estancias que se desconocía su LOS, las que eran inferiores a 48 horas, y las que no teníanobservaciones en las primeras 48 horas (de 17 variables escogidas en el benchmark de Harutyunyan et al.). Esto produjo conjuntosde test y train finales de 3.236 y 17.903 estadías en la UCI, respectivamente.

La Tabla 6.3 muestra los resultados de los modelos entrenados para predecir la mortalidadhospitalaria, junto con sus intervalos de confianza del 95 %. Estos modelos son más sofisticadosque los de las tablas anteriores, y utilizan un conjunto de variables que consta de 17 variables fi-siológicas, donde se incluye algunas pruebas de laboratorio. Este conjunto de variables se proponeen el benchmark de Harutyunyan et al. [22].

Se observa que estos resultados son muy similares y, por lo tanto, estudiamos si las diferenciasentre estos resultados son estadísticamente significativas en la sección siguiente.

Finalmente, la Tabla 6.4 muestra los resultados de los modelos entrenados para predecir lasestancias en la UCI >3 días, junto con sus intervalos de confianza del 95 %. Estos modelos tambiénse entrenan con el conjunto de variables que consta de 17 variables fisiológicas.

38

Page 44: Ciencia de datos para la predicción de mortalidad

Modelos Test setAUC-ROC

Test setAUC-PR

confusionmatrix Test set

Test setAccuracy

Logistic Regression(LR_BM)

0.848 (0.827,0.867)

0.482 (0.427,0.538)

[[2798 64][ 256 118]]

2862 negativo374 positivo

0.901

Standard LSTM(S_LSTM)

0.852 (0.831,0.871)

0.487 (0.433,0.540)

[[2801 61][ 261 113]]

0.900

Channel-wise LSTM(C_LSTM)

0.859 (0.841,0.878)

0.519 (0.467,0.568)

[[2787 75][ 255 119]]

0.898

Channel-wise GRU(C_GRU)

0.857 (0.838,0.875)

0.513 (0.460,0.565)

[[2772 90][ 238 136]]

0.898

Cuadro 6.3: Predicción de la mortalidad hospitalaria. Datos de las primeras 48 horas + imputar missing values con valores ’normales’+ excluir <18 años + excluir todas las estancias para las que se desconocía su LOS, las que eran inferiores a 48 horas, y las que notenían observaciones en las primeras 48 horas. Esto produjo conjuntos de test y train finales de 3.236 y 17.903 estadías en la UCI,respectivamente.

Modelos Test setAUC-ROC

Test setAUC-PR

confusionmatrix Test set

TestSetAccuracy

Logistic Regression(LR_BM) 0.765 (0.752,

0.778)0.665 (0.643,0.689)

[[2823 417][ 979 1063]]

0.735

Standard LSTM(S_LSTM) 0.785 (0.772,

0.798)0.712 (0.691,0.733)

[[2798 442][ 903 1139]]

0.745

Channel-wise LSTM(C_LSTM) 0.790 (0.777,

0.803)0.719 (0.697,0.739)

[[2735 505][ 843 1199]]

0.744

Channel-wise GRU(C_GRU) 0.789 (0.776,

0.801)0.716 (0.695,0.737)

[[2824 416][ 914 1128]]

0.748

Cuadro 6.4: Predicción de LOS >3 días. Datos de las primeras 24 horas + imputar missing values con valores ’normales’ + ex-cluir <18 años + excluir todas las estancias para las que se desconocía su LOS, las que eran inferiores a 24 horas, y las que notenían observaciones en las primeras 24 horas. Esto produjo conjuntos de test y train finales de 5.282 y 29.846 estadías en la UCI,respectivamente.

39

Page 45: Ciencia de datos para la predicción de mortalidad

6.1. Análisis de los resultados

En esta sección, se contrastan y se analizan los resultados de predicción de los modelos men-cionados anteriormente. Además, se comparan estos resultados con otros trabajos relacionados.

6.1.1. Bootstrapping

Para empezar, vamos a comparar el rendimiento de los diferentes modelos mediante Boots-trapping. Es decir, vamos a estudiar si las diferencias de los resultados entre los modelos sonestadísticamente significativas.

Inicialmente intentamos realizar la comparación de los rendimientos de los diferentes modelosmediante Cross Validation. Para los modelos que usaban OASIS era fácil aplicar Cross Valida-tion, ya que eran modelos menos complejos y no requerían mucho tiempo para entrenarse variasveces (en el Apéndice se pueden ver los resultados de validación cruzada de estos modelos mássimples). Sin embargo, para los modelos S_LSTM, C_LSTM y C_GRU se requería mucho mástiempo. Por lo tanto, optamos por usar otra técnica que consumiera menos tiempo y, a la vez fueraampliamente aplicada [22, 52, 53]: Bootstrapping.

Las tablas 6.5, 6.6, 6.7, 6.8 muestran si las diferencias entre los modelos son estadísticamentesignificativas: contamos el número de veces en los que el modelo de la i-ésima fila tiene un mejorresultado en aucroc/aucpr que el modelo de la j-ésima columna sobre el Test set remuestreadoscon reemplazo, y lo denotamos como cij. La celda en la i-ésima fila y la j-ésima columna dela tabla muestra el porcentaje de cij en K, donde K indica las veces que volvemos a muestrearel test set con reemplazo. En nuestro caso, K = 10000 veces. El modelo de la i-ésima fila essignificativamente mejor que el modelo de la j-ésima columna si [(cij÷K) · 100] > 95.

Modelo(compararaucprs)

RF RF_w LR LR_w LSTMLSTM_w

LR_BM

S_LSTM

C_LSTM

C_GRU

RF NaN 59.09 90.97 91.53 0.00 0.00 0.00 0.0 0.0 0.00RF_w 40.91 NaN 90.51 90.58 0.00 0.00 0.00 0.0 0.0 0.00LR 9.03 9.49 NaN 0.00 0.00 0.00 0.00 0.0 0.0 0.00LR_w 8.47 9.42 0.00 NaN 0.00 0.00 0.00 0.0 0.0 0.00LSTM 100.00 100.00 100.00 100.00 NaN 99.98 5.65 0.0 0.0 0.00LSTM_w 100.00 100.00 100.00 100.00 0.02 NaN 0.13 0.0 0.0 0.00LR_BM 100.00 100.00 100.00 100.00 94.35 99.87 NaN 0.0 0.0 0.00S_LSTM 100.00 100.00 100.00 100.00 100.00 100.00 100.00 NaN 5.8 17.89C_LSTM 100.00 100.00 100.00 100.00 100.00 100.00 100.00 94.2 NaN 70.69C_GRU 100.00 100.00 100.00 100.00 100.00 100.00 100.00 82.11 29.31 NaN

Cuadro 6.5: Resultados de las comparaciones de los valores aucprs (con Bootstrapping), entre diferentes modelos de la tarea ’predic-ción de LOS >3 días’.

40

Page 46: Ciencia de datos para la predicción de mortalidad

Modelo(compararaucrocs)

RF RF_w LR LR_w LSTMLSTM_w

LR_BM

S_LSTM

C_LSTM

C_GRU

RF NaN 23.50 87.37 87.77 0.00 0.00 0.0 0.00 0.00 0.00RF_w 76.33 NaN 87.65 87.77 0.00 0.00 0.0 0.00 0.00 0.00LR 12.63 12.34 NaN 0.00 0.00 0.00 0.0 0.00 0.00 0.00LR_w 12.23 12.23 0.00 NaN 0.00 0.00 0.0 0.00 0.00 0.00LSTM 100.00 100.00 100.00 100.00 NaN 20.38 0.0 0.00 0.00 0.00LSTM_w 100.00 100.00 100.00 100.00 79.62 NaN 0.0 0.00 0.00 0.00LR_BM 100.00 100.00 100.00 100.00 100.00 100.00 NaN 0.00 0.00 0.00S_LSTM 100.00 100.00 100.00 100.00 100.00 100.00 100.00 NaN 1.36 5.68C_LSTM 100.00 100.00 100.00 100.00 100.00 100.00 100.00 98.64 NaN 70.51C_GRU 100.00 100.00 100.00 100.00 100.00 100.00 100.00 94.32 29.49 NaN

Cuadro 6.6: Resultados de las comparaciones de los valores aucrocs (con Bootstrapping), entre diferentes modelos de la tarea ’pre-dicción de LOS >3 días’.

Como se puede ver en las Tablas 6.5 y 6.6, para la tarea ’predicción de LOS >3 días’:

Los modelos tipo LSTM usando OASIS son significativamente mejores en comparación alos modelos tipo RF, LR usando OASIS.

Los modelos adaptados del benchmark [22] (LR_BM, S_LSTM, C_LSTM, C_GRU) tam-bién son significativamente mejores que los modelos que usan OASIS (LSTM, LSTM_w,RF, RF_w,LR, LR_w). Sin embargo, existe una excepción en el siguiente caso: no pode-mos decir que LR_BM es significativamente mejor que LSTM comparando aucpr, porqueno supera el umbral del 95 % (tenemos 94.35 %).

S_LSTM, C_LSTM y C_GRU son significativamente mejores que LR_BM.

LSTM es mejor que LSTM_w en aucprs, pero no podemos decir que sea mejor en aucroc.Debido a esto, no podemos tener la certeza de que las diferencias entre estos dos modelossean estadísticamente significativas.

Análogamente, C_LSTM es mejor que S_LSTM en aucroc, pero no podemos decir lo mis-mo en base a aucprs.

Para acabar, vemos que las diferencias entre C_GRU y C_LSTM, o entre C_GRU y S_LSTM,no son estadísticamente significativas ya que no superan el umbral del 95 %.

41

Page 47: Ciencia de datos para la predicción de mortalidad

Modelo(compararaucprs)

RF RF_w LR LR_w LSTMLSTM_w

LR_BM

S_LSTM

C_LSTM

C_GRU

RF NaN 91.11 5.88 5.77 0.39 0.00 0.00 0.00 0.00 0.00RF_w 8.60 NaN 3.48 3.54 0.33 0.00 0.00 0.00 0.00 0.00LR 94.12 96.52 NaN 0.00 2.25 0.07 0.00 0.00 0.00 0.00LR_w 94.23 96.46 0.00 NaN 2.19 0.05 0.00 0.00 0.00 0.00LSTM 99.61 99.67 97.75 97.81 NaN 0.55 0.00 0.00 0.00 0.00LSTM_w 100.00 100.00 99.93 99.95 99.45 NaN 0.00 0.00 0.00 0.00LR_BM 100.00 100.00 100.00 100.00 100.00 100.00 NaN 42.01 3.34 5.45S_LSTM 100.00 100.00 100.00 100.00 100.00 100.00 57.99 NaN 0.12 1.33C_LSTM 100.00 100.00 100.00 100.00 100.00 100.00 96.66 99.88 NaN 68.68C_GRU 100.00 100.00 100.00 100.00 100.00 100.00 94.55 98.67 31.32 NaN

Cuadro 6.7: Resultados de las comparaciones de los valores aucprs (con Bootstrapping), entre diferentes modelos de la tarea ’predic-ción de mortalidad’.

Modelo(compararaucrocs)

RF RF_w LR LR_w LSTMLSTM_w

LR_BM

S_LSTM

C_LSTM

C_GRU

RF NaN 94.87 17.02 17.22 0.82 0.0 0.00 0.00 0.00 0.00RF_w 4.72 NaN 16.95 16.68 0.85 0.0 0.00 0.00 0.00 0.00LR 82.98 83.05 NaN 0.00 1.27 0.0 0.00 0.00 0.00 0.00LR_w 82.78 83.31 0.00 NaN 1.63 0.0 0.00 0.00 0.00 0.00LSTM 99.18 99.15 98.73 98.37 NaN 0.0 0.00 0.00 0.00 0.00LSTM_w 100.00 100.00 100.00 100.00 100.00 NaN 0.00 0.00 0.00 0.00LR_BM 100.00 100.00 100.00 100.00 100.00 100.00 NaN 29.63 4.63 8.34S_ LSTM 100.00 100.00 100.00 100.00 100.00 100.00 70.37 NaN 3.11 10.55C_LSTM 100.00 100.00 100.00 100.00 100.00 100.00 95.36 96.89 NaN 71.65C_GRU 100.00 100.00 100.00 100.00 100.00 100.00 91.66 89.45 28.35 NaN

Cuadro 6.8: Resultados de las comparaciones de los valores aucrocs (con Bootstrapping), entre diferentes modelos de la tarea ’pre-dicción de mortalidad’.

Como se puede ver en las Tablas 6.7 y 6.8, para la tarea ’predicción de mortalidad’:

Los modelos tipo LSTM que usaban OASIS son significativamente mejores que los mode-los tipo RF y LR, que también usaban OASIS.

Por otra parte, los modelos adaptados del benchmark [22] (LR_BM, S_LSTM, C_LSTM,C_GRU) también son significativamente mejores que los modelos que usaban OASIS (LSTM,LSTM_w, RF, RF_w,LR, LR_w).

42

Page 48: Ciencia de datos para la predicción de mortalidad

Las diferencias entre LR_BM y S_LSTM no son estadísticamente significativas porque nosupera el umbral del 95 %.

C_LSTM es significativamente mejor que S_LSTM y LR_BM, tanto si comparamos aucroccomo aucprs.

En contraste a lo anterior, las diferencias entre C_GRU y C_LSTM, C_GRU y S_LSTM,y C_GRU y LR_BM, no son estadísticamente significativas porque tampoco superan elumbral del 95 %.

Fijándonos en LSTM_w y LSTM, vemos que LSTM_w es significativamente mejor tantoen aucprs como en aucrocs. Esto podría deberse a que la tarea ’Predicción de mortalidad’ serealiza sobre un dataset no balanceado. No obstante, los modelos tipo RF, LR no presentaneste resultado. Ni RF_w es mejor que RF, ni LR_w es mejor que LR.

Los modelos LR, LR_w son mejores que RF_w comparando aucprs.

En resumen, en las tareas que usan OASIS, los modelos de tipo LSTM tienen mejores resul-tados que los modelos random forest y regresión logística, tal como esperábamos, ya que estosúltimos usan una única variable.

Así también, también esperábamos que las predicciones usando modelos del benchmark [22]tuvieran mejores resultados que las predicciones usando OASIS, ya que en el benchmark se usan17 variables, mientras que OASIS se compone de 10 variables. Además, los modelos usados enel benchmark de Harutyunyan et al. son más sofisticados.

Los C_LSTM del benchmark [22] son mejores que los modelos tipo regresión logística (LR_BM),ya que en LR_BM se usan variables estadísticas que resumen los datos, mientras que en C_LSTMse pueden ver las series temporales completas y es un tipo de modelo mucho más complejo. Sinembargo, observamos que los modelos S_LSTM y C_GRU no son estadísticamente mejores queLR_BM en la tarea de mortalidad, posiblemente debido a que tenemos un dataset no balanceado.

Ya para acabar, vemos que los C_GRU tienen resultados similares a los C_LSTM, pero nomejores que los C_LSTM, ya que los anteriores son variantes ’simplificadas’ de los últimos.

6.1.2. Calibración

Las Figuras 6.1 y 6.2 grafican las curvas de calibración para los modelos más sofisticados ycon mejor rendimiento.

De acuerdo con la Figura 6.1, se puede observar que los modelos tienen más o menos la mismacalibración para la tarea ’predicción de mortalidad hospitalaria’. Pero la curva de calibración delC_LSTM parece ser ligeramente mejor, ya que está próxima a la diagonal en la mayoría de losbins.

Luego, según la Figura 6.2, también se puede observar que los modelos tienen más o menosla misma calibración, excepto el modelo LR_BM. Y, para la tarea ’predicción de LOS >3 días’,la calibración del C_GRU parece ser ligeramente mejor.

43

Page 49: Ciencia de datos para la predicción de mortalidad

Figura 6.1: Calibración de los modelos de la tarea ’predicción de mortalidad’

Figura 6.2: Calibración de los modelos de la tarea ’predicción de LOS >3 días’

44

Page 50: Ciencia de datos para la predicción de mortalidad

6.1.3. Comparativa con trabajos relacionados

Esta sección proporciona una comparativa de nuestros resultados con los de estudios ante-riores recientes: Tabla 6.9 y Tabla 6.10. Sin embargo, es necesario destacar que cada trabajotiene ligeras diferencias en la definición de la cohorte de MIMIC-III, el número de variables o ladefinición de la tarea.

Número devariables

Tipo demodelo

MejorAUC-ROC

MejorAUC-PR

Nuestro trabajo 17 C_LSTM 0.859 0.519Gupta et al. [29] 17 TimeNet-48 0.852 0.519Li et al. [30] 99 VS-GRU 0.858 -Song et al. [26] 17 SAnD-Multi 0.859 0.519Wang et al. [15] 104 GRU-D 0.876 0.532Johnson et al. [27] 148 GB 0.927 -Purushotham etal. [23]

136 MMDL 0.941 0.785

Tang et al. [28] >19 LSTM 0.949 -

Cuadro 6.9: Resultados de trabajos que predicen la mortalidad hospitalaria.Abreviaciones: TimeNet-48: RNN que está previamente entrenado en diversas series de tiempo de varios dominios; VS-GRU: VariableSensitive GRU; SanD-Multi: Self-attention mechanism y Multitasking; GRU-D: Gated Recurrent Unit con Delay; GB: GradientBoosting; MMDL: Multimodal deep learning. MMDL es una combinación de FFN (Feedforward Neural Network) y GRU.

Tipo declasificación

Número devariables

Tipo deModelo

MejorAUC-ROC

MejorAUC-PR

Nuestrotrabajo

Binaria(LOS >3días)

17 C_LSTM 0.790 0.719

Wang etal. [15]

Binaria(LOS >3días)

104 RF 0.736 0.685

Tang etal. [28]

Multiclass(7 clases)

19 CNN-LSTM

0.846(micropromedio)

-

0.645(LOS entre3 a 5 días)

-

0.758(LOS entre1 a 3 días)

-

Cuadro 6.10: Resultados de trabajos que predicen las duraciones de las estancias en la UCI (como una tarea de classificación).Abreviaciones: CNN-LSTM: Convolutional Neural Network-Long Short-Term Memory; RF: Random Forest.

Podemos ver que, nuestros modelos adaptados del benchmark de Harutyunyan et al., tienenresultados coherentes con los otros trabajos para estas tareas de predicción. Para la predicción demortalidad, AUC-ROC 0.859 y AUC-PR 0.519 son comparables a los demás trabajos, excepto[23] y [28] que obtienen mejores resultados debido a que usan muchas características. Por unlado, en [23] utilizan pruebas de laboratorio, prescripciones, inyecciones, etc. y, por otro lado,en [28], incluyen también informaciones demogáficas, además de las pruebas de laboratorio.

45

Page 51: Ciencia de datos para la predicción de mortalidad

Luego, para la predicción de LOS >3 días, aunque Wang et al. [15] utilizan más característicasque nosotros, el rendimiento de su modelo es inferior al nuestro. Quizás se deba a que su principalobjetivo es construir un pipeline de selección de cohorte y de procesos de preprocesamiento dedatos para obtener series de tiempo multivariadas preparadas para entrenar en modelos predicti-vos. Por consiguiente, prestan menos atención a la mejora del rendimiento del modelo predictivo.Y para acabar, vemos que [28] consigue un alto promedio de AUC-ROC. Ahora bien, se debedestacar que Tang et al. [28] tratan la predicción de LOS como una clasificación multiclase. En-tonces, teniendo clases de LOS extremadamente largas (por ejemplo, >8 días) que son más fácilesde identificar, ésto ayudaría a subir el promedio de AUC-ROC.

Observamos que el hecho de agregar más características clínicas puede mejorar las prediccio-nes hasta cierto punto. Por ejemplo, si nos fijamos en la fila 2 y la fila 3 de la Tabla 6.9, y vemosque subiendo el número de variables del 17 al 99, el AUC-ROC solo mejora un 0.006. También,fijándonos en la fila 6 y 7, el [23] de la fila 7 usa menos variables pero logra un mejor AUC-ROCque el [27] de la fila 6. Pasa algo similar con los trabajos de la fila 1 y fila 2 de la Tabla 6.10.

Por un lado, sospechamos que la razón de esta mejora limitada es debido a que muchas va-riables en MIMIC-III tienen un alto porcentaje de valores faltantes (missing rate), ya que algunasde las variables no se registran de forma rutinaria, a menos que se trate de grupos especialesde pacientes. Por otro lado, cada paciente en la UCI tiene unas características clínicas diferen-tes y complejas, lo cual dificulta las tareas de predicción. Creemos que agrupando los pacientespreviamente mediante aprendizaje no supervisado, se conseguiría abarcar informaciones útiles yparticulares de cada grupo.

Además, cabe destacar el problema de interpretabilidad e interoperabilidad [3]. Primero, amedida que los modelos se vuelven más sofisticados y se les agregan más características, tambiéntienden a volverse menos interpretables, lo que supondría una barrera para convencer a los médi-cos de que adopten estos apoyos de decisiones clínicas en la práctica. Luego, están las diferenciasen la generación de los datos: distintos sistemas de administración, dispositivos de monitoreo,pruebas de laboratorio, etc. De modo que, usar más características puede dificultar más la inter-operabilidad.

46

Page 52: Ciencia de datos para la predicción de mortalidad

Capítulo 7

Conclusiones

El objetivo esencial ha sido explorar datos clínicos electrónicos aplicando conocimientos deciencia de datos, análisis predictivo y estadística.

Partimos de un conjunto de datos de cuidados intensivos de fuente abierta (MIMIC-III). Eneste trabajo presentamos un proceso de ingeniería de datos (ETL) que combina datos de pacientesde diversas tablas de la base de datos. Luego, construimos varios modelos (tanto modelos deaprendizaje automático como de aprendizaje profundo) para predecir la mortalidad hospitalariay la estancia en la UCI >3 días (LOS >3 días). Además, entrenamos los modelos usando dosconjuntos de variables inspirados en trabajos previos de la literatura.

Finalmente, las conclusiones que se derivan de los resultados de los experimentos realizadosson las que se exponen a continuación.

En primer lugar, este estudio analiza si el uso de una puntuación de gravedad, OASIS, tienesuficiente capacidad de predicción para las dos tareas mencionadas anteriormente. Resulta quetiene un rendimiento aceptable para la predicción de mortalidad, pero no es satisfactorio en lapredicción de LOS. Esto es a causa de que el uso de indicadores como OASIS es por convenienciay facilidad de aplicación clínica, y éstos están diseñados para funcionar con un número limitadode variables (en este caso, 10). Así pues, a pesar de la generación de grandes volúmenes de datospor paciente, la mayoría de ellos no se utilizan.

En segundo lugar, descubrimos que modelar datos de secuencia empleando arquitecturas RNNproducen predicciones con mayor confianza. En concreto, destacan los modelos tipo LSTM yGRU. El modelo Channel-wise LSTM (propuesto en el benchmark [22] y que utiliza una ca-pa LSTM bidireccional diferente para cada característica) se desempeña ligeramente mejor queChannel-wise GRU, aunque la diferencia no es estadísticamente significativa.

Además, observamos que empleando más características y modelos sofisticados de aprendiza-je profundo se puede lograr un desempeño mejor.

Para concluir, los modelos desarrollados pueden servir para desarrollar herramientas para lapráctica clínica que ayudan a los intensivistas a ser más eficientes y productivos.

47

Page 53: Ciencia de datos para la predicción de mortalidad

Capítulo 8

Posibles ampliaciones

Hay varias direcciones de investigación posibles que podrían conducir a mejores resultados.La primera sería experimentar con modelos distintos a los de tipo RNN. Por ejemplo, imple-mentar modelos que utilizan Attention Models [26]. En el github repositorio khirotaka/SAnD1 sepresenta un ejemplo de implementación no oficial del artículo anterior, codificado en PyTorch.Otra arquitectura basada en Attention Models es Transformers [54], un modelo de aprendizajeprofundo reciente que se introdujo en el contexto de la traducción automática con el propósito deevitar la recurrencia para permitir la computación paralela y también para reducir la caída en elrendimiento debido a dependencias a largo plazo. Explorar este modelo también sería interesante.

Otra dirección sería crear clústeres (unsupervised clustering) [25] de pacientes previamente aentrenar los modelos. La agrupación no supervisada se podría realizar como una herramienta depreprocesamiento de datos, antes de la clasificación. Primero se subdividen los puntos de datos(o series temporales) en grupos y luego se entrenan los modelos de clasificación para cada uno deestos grupos con modelos de machine learning o deep learning apropiados.

1https://github.com/khirotaka/SAnD

48

Page 54: Ciencia de datos para la predicción de mortalidad

Capítulo 9

Apéndice

En este apéndice incluimos otros resultados realizados:

Validación cruzada de k iteraciones (k-Fold cross-validation): Es una técnica utilizada paraevaluar el rendimiento de un modelo predictivo y garantizar que es independiente de lapartición entre datos de entrenamiento y prueba. Consiste en dividir el conjunto de datosen k grupos de forma aleatoria, donde k-1 grupos se emplean para entrenar el modelo(Train set) y uno de los grupos se emplea como validación (Test set). Este proceso deentrenamiento y validación se repite k veces utilizando un grupo distinto como validaciónen cada iteración. El proceso genera k resultados de evaluación y la media aritmética deestos k resultados es el resultado final.

Las Tablas 9.1 y 9.4 presentan los resultados de 5-Fold cross-validation de los modelosentrenados con el valor OASIS o con el subconjunto de variables que componen OASIS,para las cuales podemos apreciar que el rendimiento del modelo LSTM supera a los otrosmodelos.

T-tests: Como se explica en el apartado T-test, aplicamos 5-fold cross-validated paired t-testcon los resultados de evaluación (AUC-ROCs o AUC-PRs) de las 5-fold cross-validationrealizadas anteriormente. Estos tests comparan dos a dos los modelos entrenados con elvalor OASIS o con el subconjunto de variables que componen OASIS.

Los p-values resultantes de los t-tests realizados se guardan en las Tablas 9.2, 9.3, 9.5 y9.6 y se usan para determinar si existen diferencias significativas entre el rendimiento delos modelos.

Las Tablas 9.2 y 9.3 comparan modelos entrenados para la tarea ’predicción de LOS >3días’. Podemos ver que los p-values marcados en negrita son valores menores que α = 0,05(α es el nivel de significancia escogido). Si el valor p es menor o igual que 0.05, entoncespodemos rechazar la hipótesis nula de que los modelos tienen un comportamiento similary decir que hay una diferencia significativa entre los modelos.

Por ejemplo, en la Tabla 9.2 vemos que el p-value resultante del paired t-test realizado conel modelo RF y LSTM es 5.637e-07. Este valor es menor que 0.05, entonces podemos decirque la diferencia entre los resultados de estos dos modelos es estadísticamente significativa.Otro ejemplo de p-value >0.05 sería el test entre los modelos RF y LR. Este test presentaun p-value de 0.416. Por lo tanto, no podemos rechazar la hipótesis nula.

Finalmente, las Tablas 9.5 y 9.6 comparan modelos entrenados para la tarea ’predicción demortalidad hospitalaria’, y se interpretan de manera similar a como lo hicimos en el párrafo

49

Page 55: Ciencia de datos para la predicción de mortalidad

anterior.

Como conclusión extraída de las tablas mencionadas, vemos que hay una diferencia estadísti-camente significativa entre el rendimiento de los modelos LSTM y los modelos RF y LR, la cualconcuerda con la conclusión de la sección Bootstrapping. Por lo tanto, podemos afirmar con cer-teza que, para la predicción de mortalidad y de LOS >3 días, los modelos LSTM logran mejoresresultados (AUC-ROC y AUC-PR) que los modelos RF y LR.

Modelo Media de AUC-PRde 5-Fold CV

Media deAUC-ROC de5-Fold CV

Media de ACC de5 Fold CV

Random Forest (RF) 0.5328 0.6598 64.8315

Random Forest conclass weight (RF_w)

0.5329 0.6598 62.4317

Logistic Regression (LR) 0.5312 0.6572 64.8230

Logistic Regressioncon class weight (LR_w)

0.5312 0.6572 62.0132

LSTM (LSTM) 0.6672 0.7461 72.6230

LSTM con classweight (LSTM_w)

0.6660 0.7460 72.1049

Cuadro 9.1: Rendimientos de los modelos entrenados para la tarea ’Predicción de LOS >3 días’. Se usan datos de las primeras 24horas + imputar missing values con valores ’normales’ + excluir <18 años + excluir estadías en la UCI con traslados + excluir todaslas estancias para las que se desconocía su LOS, las que eran inferiores a 24 horas, y las que no tenían observaciones (de 17 variablesescogidas en el benchmark de Harutyunyan et al.) en las primeras 24 horas. Esto produjo conjuntos de test y train finales de 5.282 y29.846 estadías en la UCI, respectivamente.Abreviaciones: CV significa Cross-Validation

Modelos(compareaucprs)

RF RF_w LR LR_w LSTM LSTM_w

RF 0.220 0.416 0.416 5.637e-07 3.617e-07RF_w 0.378 0.378 6.340e-07 4.169e-07LR NaN 1.030e-06 7.710e-07LR_w 1.030e-06 7.710e-07LSTM 5.880e-02LSTM_w

Cuadro 9.2: 5-fold cross-validated paired t-test con los resultados (AUC-PRs) de 5-Fold cross-validation de los modelos de la tarea’predicción de LOS >3 días’. El contenido de la tabla son p_values resultantes de los tests. Si p_value >0.05, no podemos rechazar lahipótesis nula de que los modelos tienen un comportamiento similar. Y si p_value <= 0.05 (los valores en negrita), podemos rechazarla hipótesis nula y decir que las diferencias entre los resultados de los modelos son estadísticamente significativas.

50

Page 56: Ciencia de datos para la predicción de mortalidad

Modelos(compareaucrocs)

RF RF_w LR LR_w LSTM LSTM_w

RF 0.104 0.072 0.072 6.581e-07 3.940e-07RF_w 0.073 0.073 6.589e-07 3.934e-07LR NaN 5.696e-07 2.000e-07LR_w 5.696e-07 2.000e-07LSTM 9.568e-01LSTM_w

Cuadro 9.3: 5-fold cross-validated paired t-test con los resultados (AUC-ROCs) de cross-validation de los modelos de la tarea ’pre-dicción de LOS >3 días’. El contenido de la tabla son p_values. Si p_value >0.05, no podemos rechazar la hipótesis nula de que losmodelos tienen un comportamiento similar. Y si p_value <= 0.05 (los valores en negrita), podemos rechazar la hipótesis nula y decirque las diferencias entre los resultados de los modelos son estadísticamente significativas.

Modelo Media de AUC-PRde 5-Fold CV

Media deAUC-ROC de5-Fold CV

Media de ACC de5 Fold CV

Random Forest (RF) 0.2681 0.7150 86.7922

Random Forest conclass weight (RF_w)

0.2655 0.7140 60.3529

Logistic Regression (LR) 0.2739 0.7152 86.7638

Logistic Regressioncon class weight (LR_w)

0.2739 0.7152 65.8215

LSTM (LSTM) 0.4003 0.8001 87.2936

LSTM con classweight (LSTM_w)

0.3947 0.8019 71.9429

Cuadro 9.4: Rendimientos de los modelos entrenados para la tarea ’Predicción de la mortalidad hospitalaria’. Se usan datos de lasprimeras 24 horas + imputar missing values con valores ’normales’ + excluir <18 años + excluir estadías en la UCI con traslados +excluir todas las estancias para las que se desconocía su LOS, las que eran inferiores a 48 horas, y las que no tenían observaciones(de 17 variables escogidas en el benchmark de Harutyunyan et al.) en las primeras 48 horas. Esto produjo conjuntos de test y trainfinales de 3.236 y 17.903 estadías en la UCI, respectivamente.Abreviaciones: CV significa Cross-Validation

Modelos(compareaucprs)

RF RF_w LR LR_w LSTM LSTM_w

RF 0.195 0.118 0.118 1.320e-04 4.540e-04RF_w 0.128 0.128 1.220e-04 3.840e-04LR NaN 1.240e-04 4.880e-04LR_w 1.240e-04 4.000e-04LSTM 0.161LSTM_w

Cuadro 9.5: 5-fold cross-validated paired t-test con los resultados (AUC-PRs) de cross-validation de los modelos de la tarea ’pre-dicción de mortalidad’. El contenido de la tabla son p_values. Si p_value >0.05, no podemos rechazar la hipótesis nula de que losmodelos tienen un comportamiento similar. Y si p_value <= 0.05 (los valores en negrita), podemos rechazar la hipótesis nula y decirque las diferencias entre los resultados de los modelos son estadísticamente significativas.

51

Page 57: Ciencia de datos para la predicción de mortalidad

Modelos(compareaucrocs)

RF RF_w LR LR_w LSTM LSTM_w

RF 0.025 0.740 0.740 8.000e-05 9.400e-05RF_w 0.123 0.123 8.100e-05 9.200e-05LR NaN 1.190e-04 1.280e-04LR_w 1.190e-04 1.280e-04LSTM 0.255LSTM_w

Cuadro 9.6: 5-fold cross-validated paired t-test con los resultados (AUC-ROCs) de cross-validation de los modelos de la tarea ’pre-dicción de mortalidad’. El contenido de la tabla son p_values. Si p_value >0.05, no podemos rechazar la hipótesis nula de que losmodelos tienen un comportamiento similar. Y si p_value <= 0.05 (los valores en negrita), podemos rechazar la hipótesis nula y decirque las diferencias entre los resultados de los modelos son estadísticamente significativas.

52

Page 58: Ciencia de datos para la predicción de mortalidad

Bibliografía

[1] Chá Ghiglia, M.M. Historia clínica electrónica: herramienta para la continuidad de asisten-cia Rev Méd Urug 35(3):212-217, doi: 10.29193/RMU.35.3.6 (2019). [URL]

[2] Celi, L.A., Mark, R.G., et al. ’Big data’ in the intensive care unit. Closing the data loop.Am J Respir Crit Care Med. 187(11):1157-60, doi: 10.1164/rccm.201212-2311ED (2013).[URL]

[3] Panch, T., Mattie, H., et al. The ’inconvenient truth’ about AI in healthcare. npj Digit. Med.2(77), doi: 10.1038/s41746-019-0155-4 (2019). [URL]

[4] Johnson, A.E.W. et al. MIMIC-III, a freely accessible critical care database. Sci. Data3:160035, doi: 10.1038/sdata.2016.35 (2016). [URL]

[5] Johnson, A.E., Kramer, A.A., Clifford, G.D. A new severity of illness scaleusing a subset of Acute Physiology And Chronic Health Evaluation data elementsshows comparable predictive accuracy. Critical Care Medicine 41(7):1711-8, doi:10.1097/CCM.0b013e31828a24fe (July 2013). [URL]

[6] Zimmerman, J.E., Kramer A.A. et al. Acute Physiology and Chronic Health Evaluation(APACHE) IV: hospital mortality assessment for today’s critically ill patients. Crit CareMed. 34(5):1297-1310, doi: 10.1097/01.CCM.0000215112.84523.F0 (2006). [URL]

[7] Dernoncourt, F., Lee, J. Y. et al. De-identification of Patient Notes with Recurrent NeuralNetworks. arXiv:1606.03475v1 [cs.CL] (2016). [URL]

[8] Lokhandwala S., McCague N. et al. One-year mortality after recovery from criticalillness: A retrospective cohort study. PLoS ONE 13(5):e0197226, doi: 10.1371/jour-nal.pone.0197226 (2018). [URL]

[9] Choi, E., Bahadori, M.T. et al. Doctor AI: Predicting Clinical Events via Recurrent NeuralNetworks. arXiv:1511.05942v11 [cs.LG] (2016). [URL]

[10] Shickel, B., Tighe, P. et al. Deep EHR: A Survey of Recent Advances in Deep LearningTechniques for Electronic Health Record (EHR) Analysis. IEEE Journal of Biomedicaland Health Informatics vol. 22(5):1589-1604, doi: 10.1109/JBHI.2017.2767063, (2018).[URL]

[11] Liu, J., Zhang, Z. et al. Deep EHR: Chronic Disease Prediction Using Medical Notes.arXiv:1808.04928v1 [cs.LG] (2018). [URL]

[12] Lin, Y.W., Zhou, Y. et al. Analysis and prediction of unplanned intensive care unit read-mission using recurrent neural networks with long shortterm memory. PLoS ONE 14(7),doi: 10.1371/journal.pone.0218942 (2019). [URL]

53

Page 59: Ciencia de datos para la predicción de mortalidad

[13] Scherpf, M., et al. Predicting sepsis with a recurrent neural network usingthe MIMIC III database. Computers in Biology and Medicine 113, doi:10.1016/j.compbiomed.2019.103395 (2019). [URL]

[14] Festag S, Spreckelsen C. A Visualisation and Extraction Tool for Time Series in the MIMICIII Database. Studies in Health Technology and Informatics 67:134-141, doi: 10.3233/SH-TI190817 (2019). [URL]

[15] Wang S., McDermott M.B.A. et al. MIMIC-Extract: a data extraction, preprocessing, andrepresentation pipeline for MIMIC-III. ACM CHIL 2020 Proceedings of the 2020 ACMConference on Health, Inference, and Learning 222-235, doi:10.1145/3368555.3384469(2020). [URL]

[16] Li, Z., Yang, Z. et al. Integrating shortest dependency path and sentence sequence into adeep learning framework for relation extraction in clinical text. BMC Medical Informaticsand Decision Making 19(22), doi:10.1186/s12911-019-0736-9 (2019). [URL]

[17] Dandala, B., Joopudi, V., et al. Extraction of Information Related to Drug Safety Sur-veillance From Electronic Health Record Notes: Joint Modeling of Entities and Re-lations Using Knowledge-Aware Neural Attentive Models. JMIR Med Inform 8(7),doi:10.2196/18417 (2020). [URL]

[18] Mandalapu, V., Ghaemmaghami, B. et al. Understanding the relationship between health-care processes and in-hospital weekend mortality using MIMIC III. Smart Health 14,doi:10.1016/j.smhl.2019.100084 (2019). [URL]

[19] Baker, S., Xiang, W. and Atkinson, I. Continuous and automatic mortality risk predictionusing vital signs in the intensive care unit: a hybrid neural network approach. Sci Rep10(1), doi:10.1038/s41598-020-78184-7 (2020). [URL]

[20] Searle, T., Ibrahim, Z. et al. Experimental Evaluation and Development of a Silver-Standardfor the MIMIC-III Clinical Coding Dataset. arXiv:2006.07332v1 [cs.LG] (2020). [URL]

[21] Fagerström, J., et al. LiSep LSTM: A Machine Learning Algorithm for Early Detection ofSeptic Shock. Sci Rep 9, 15132, doi:10.1038/s41598-019-51219-4 (2019). [URL]

[22] Harutyunyan, H., Khachatrian, H., Kale, D.C. et al. Multitask learning and benchmarkingwith clinical time series data. Sci. Data 6(96), doi:10.1038/s41597-019-0103-9 (2019).[URL]

[23] Purushotham, S., Meng C., Che Z., et al., Benchmarking deep learning mo-dels on large healthcare datasets. Journal of Biomedical Informatics, 83:112-134,doi:10.1016/j.jbi.2018.04.007 (2018). [URL]

[24] Cao T.,Vo. C., et al., A Kernel k-Means-Based Method and Attribute Selections for Dia-betes Diagnosis. J. Adv. Comput. Intell. Intell. Inform., 24(1): 73-82, doi: 10.20965/ja-ciii.2020.p0073 (2020). [URL]

[25] Rouzbahman, M. Jovicic, A. et al. Can Cluster-Boosted Regression Improve Prediction ofDeath and Length of Stay in the ICU? IEEE J Biomed Health Inform 21(3):851-858, doi:10.1109/JBHI.2016.2525731 (2017).[URL]

[26] Song, H., Rajan, D. et al. Attend and Diagnose: Clinical Time Series Analysis Using At-tention Models. arXiv:1711.03905v2 [stat.ML] (2017). [URL]

54

Page 60: Ciencia de datos para la predicción de mortalidad

[27] Johnson, A.E.W. and Mark R.G. Real-time mortality prediction in the Intensive Care Unit.AMIA Annu Symp Proc 2017:994-1003, PMID: 29854167, PMCID: PMC5977709 (2018)[URL]

[28] Tang, F., Xiao, C. et al. Predictive modeling in urgent care: a comparative study of machi-ne learning approaches. JAMIA Open 1(1):87-98, doi: 10.1093/jamiaopen/ooy011 (2018).[URL]

[29] Gupta, P., Malhotra, P. et al. Using Features from Pre-trained TimeNet for Clinical Predic-tions. KHD@IJCAI (2018) [URL]

[30] Li, Q. and Xu, Y. VS-GRU: A variable sensitive gated recurrent neural network for multi-variate time series with massive missing values. Applied Sciences (Switzerland) 9(15), doi:10.3390/app9153041 (2019). [URL]

[31] Caicedo-Torres, W. and Gutierrez, J., ISeeU: Visually interpretable deep learningfor mortality prediction inside the ICU. Journal of Biomedical Informatics, 98, doi:10.1016/j.jbi.2019.103269 (2019). [URL]

[32] S. Krishnan Gokul and S. Sowmya Kamath A novel GA-ELM model for patient-specificmortality prediction over large-scale lab event data. Applied Soft Computing Journal80:525-533, doi: 10.1016/j.asoc.2019.04.019 (2019). [URL]

[33] Yu, R., Zheng, Y. et al. Using a Multi-Task Recurrent Neural Network with AttentionMechanisms to Predict Hospital Mortality of Patients. IEEE J Biomed Health Inform24(2):486-492, doi: 10.1109/JBHI.2019.2916667 (2020). [URL]

[34] García-Gallo, J.E., Fonseca-Ruiz, N.J. et al. A machine learning-based model for 1-yearmortality prediction in patients admitted to an Intensive Care Unit with a diagnosis of sep-sis. Medicina Intensiva 44(3):160-170, doi: 10.1016/j.medin.2018.07.016 (2020). [URL]

[35] Sadeghi, R., Banerjee, T. et al. Early hospital mortality prediction using vital signals. SmartHealth 9-10:265-274, doi:10.1016/j.smhl.2018.07.001 (2018). [URL]

[36] Jentzer, J.C. et al. Admission diagnosis and mortality risk prediction in a contempo-rary cardiac intensive care unit population. American Heart Journal 224:57-64, doi:10.1016/j.ahj.2020.02.018 (2020). [URL]

[37] Jentzer, J.C., Murphree D.H., et al. Comparison of Mortality Risk Prediction Among Pa-tients ≥ 70 Versus < 70 Years of Age in a Cardiac Intensive Care Unit. Am J Cardiol122(10):1773-1778, doi: 10.1016/j.amjcard.2018.08.011 (2018). [URL]

[38] Bennett, C.E. et al. Severity of illness assessment with application of the APACHE IVpredicted mortality and outcome trends analysis in an academic cardiac intensive care unit.Journal of Critical Care 50:242-246, doi: 10.1016/j.jcrc.2018.12.012 (2019). [URL]

[39] Olier, I. Sansom, A. et al. Using MLP partial responses to explain in-hospital morta-lity in ICU. International Conference on Data Analytics for Business and Industry: WayTowards a Sustainable Economy (ICDABI), doi: 10.1109/ICDABI51230.2020.9325691(2020). [URL]

[40] Agor, J. et al. The value of missing information in severity of illness score development.Journal of Biomedical Informatics 97, doi: 10.1016/j.jbi.2019.103255 (2019). [URL]

55

Page 61: Ciencia de datos para la predicción de mortalidad

[41] Donges, N. Gradient Descent: An Introduction to 1 of Machine Learning’s Most PopularAlgorithms. [en línea]. Edición 2020. [consulta: Mayo de 2021]. Disponible a: [URL]

[42] Wang, Q., Ma, Y., et al. A Comprehensive Survey of Loss Functions in Machine Learning.Ann. Data. Sci., doi: 10.1007/s40745-020-00253-5 (2020). [URL]

[43] Nielsen, M. A. Neural Networks and Deep Learning. Determination Press [en línea]. Edi-ción 2019. [consulta: Mayo de 2021]. Disponible a: [URL]

[44] Stojiljkovic, M. Logistic Regression in Python. [en línea]. [consulta: Abril de 2021]. Dis-ponible a: [URL]

[45] Google Brain Team. Olah, C. Understanding LSTM Networks. [en línea]. Edición 2015[consulta: Abril de 2021]. Disponible a: [URL]

[46] Arbel, N. How LSTM networks solve the problem of vanishing gradients. [en línea]. Edi-ción 2018 [consulta: Abril de 2021]. Disponible a: [URL]

[47] Weber, N. Why LSTMs Stop Your Gradients From Vanishing: A View from the BackwardsPass [en línea]. Edición 2017 [consulta: Mayo de 2021]. Disponible a: [URL]

[48] Cui, Z., Ke, R. et al. Deep Bidirectional and Unidirectional LSTM Recurrent Neural Net-work for Network-wide Traffic Speed Prediction. arXiv:1801.02143 [cs.LG] (2019) [URL]

[49] Pascanu, R., Mikolov, T. et al. On the difficulty of training Recurrent Neural Networks. Pro-ceedings of the 30th International Conference on Machine Learning arXiv:1211.5063v2[cs.LG] (2013) [URL]

[50] Jozefowicz, R., Zaremba, W. et al. An empirical exploration of recurrent network architec-tures. ICML’15: Proceedings of the 32nd International Conference on Machine Learning37:2342-2350, (2015). [URL]

[51] Bengio, Y., Simard, P. et al. Learning long-term dependencies with gradient descent isdifficult. IEEE Transactions on Neural Networks 5(2):157-166, doi: 10.1109/72.279181(1994). [URL]

[52] Rajkomar, A., Oren, E. et al. Scalable and accurate deep learning with electronic healthrecords. npj Digital Med 1(18), doi: 10.1038/s41746-018-0029-1 (2018). [URL]

[53] Smith, L., Tanabe, L.K. et al. Overview of BioCreative II gene mention recognition. Geno-me Biol. 9(Suppl 2):S2, doi: 10.1186/gb-2008-9-s2-s2 (2008) [URL]

[54] Vaswani, A., Shazeer, N. et al. Attention Is All You Need. arXiv:1706.03762v5 [cs.CL](2017) [URL]

[55] Steyerberg, Ewout W., Vickers, Andrew J. et al. Assessing the Performance of Predic-tion Models. Epidemiology 21(1):128-138, doi: 10.1097/EDE.0b013e3181c30fb2 (2010).[URL]

[56] Van Calster, B., McLernon, D.J. et al. Calibration: the Achilles heel of predictive analytics.BMC Medicine 17(230), doi: 10.1186/s12916-019-1466-7 (2019). [URL]

[57] Bittmann, Felix. Bootstrapping : An Integrated Approach with Python and Stata Berlin,Boston: De Gruyter, doi: 10.1515/9783110693348 (2021). [URL]

56

Page 62: Ciencia de datos para la predicción de mortalidad

[58] Dietterich, T. G. Approximate Statistical Tests for Comparing Supervised Clas-sification Learning Algorithms Neural Computation 10(7):1895-1923, doi:10.1162/089976698300017197 (1998). [URL]

57