Triage del COVID-19

Inteligencia Artificial en Salud

Triage del COVID-19

Triage del COVID-19 Por: Dr. Juan Ignacio Barrios MS MsC DSc

Si quiere tener acceso al formulario de Triage haga clic en este enlace:

Quiénes Somos?

Este proyecto del Triage del COVID-19, es un esfuerzo de un grupo de profesionales en Medicina especialistas en el área de la Salud Pública, de la Administración de Servicios de Salud, de la Administración Pública, de la  Informática  Médica y de la Ciencia de Datos en diversos países. También complementan el grupo antropólogos e informáticos mas nuestras familias y amigos que han contribuido a mejorar la redacción de las preguntas y la Experiencia del usuario en general.  El proyecto no está concluido y pretendemos irlo mejorando ampliándolo a varios idiomas (De hecho, ya tenemos una versión en catalán)

Objetivo:

La cantidad abrumadora de Datos sobre la Pandemia, disponibles en diversos sitios nos permitieron crear un modelo de prevalencia de una diversidad de síntomas,.que junto con evidencia epidemiológica lograron a través de algoritmos de Machine Learning (inteligencia Artificial) explicar los fenómenos detrás del contagio de los pacientes en ésta Pandemia, con un instrumento de Triage del COVID-19

Nuestro objetivo no es sustituir las pruebas de tamizaje, por el contrario, queremos tratar de perfeccionar el instrumento y hacerlo cada vez más sensible para que muchas personas puedan acceder a las pruebas  de manera más seleccionada hasta tanto, las pruebas no sean masivas, lo cual resulta de por mas financiera y logísticamente inviable.

¿Cómo lo estamos trabajando?

Para producir la mejor predicción hemos utilizado varios algoritmos como en la técnica corresponde.  Tratándose de que buscamos algoritmos supervisados  de clasificación y por su facilidad de aplicación utilizaremos en primer término el algoritmo de Regresión logística

En éste caso  hemos conseguido una matriz de confusión como sigue:

 

el valor resumen del modelo según el indicador f1 es de 0.88 o sea una precisión del  88% , lo cual lo hace MUY preciso pero probaremos con otros algoritmos, con el propósito de lograr todavía una mayor capacidad predictiva de este modelo Triage del COVID-19.  En segundo lugar usaremos Árboles  Decisorios,  que también es un algoritmo supervisado dentro de lo que se conoce como Aprendizaje Automático clásico y luefgo algunos algorios de ensamble 

Este algoritmo nos permite ver gráficamente las  51 variables utilizadas y  como el algoritmo las representa gracias a sus «pesos relativos» en una estructura similar a la de un árbol. (tronco, ramas y hojas ) en este caso: ( nodos, variables  y las de resultado.)

La enorme cantidad de información disponible sobre el COVID 19,  nos ha permitido crear un conjunto de datos de prueba con toda la evidencia disponible en relación con 3 tipos de variables:

  • Perfiles de los pacientes
  • Aspectos epidemiológicos
  • y el estado de salud ,

Creamos un conjunto de datos semilla con datos de incidencias y prevalencia tomados de artículos de MBE  y con un total de 25.000 casos,  presentamos nuestros primeros  resultados:

Resultados

En este árbol de decisión del Triage del COVID-19,  que ha sido optimizado a 18 niveles (el nodo raíz no se incluye) , las propias  variables del formulario van creando gracias a sus pesos y prioridades las diferetes ramas.  Como se divide una rama ? Estas divisiones o decisiones se van produciendo de acuerdo a un numero minimo de observaciones en cada «compartimento , luego esta estructura se va replicando por todos los niveles   hasta llegar a los elementos terminales llamadas también hojas)  en donde se produce la predicción con el resultado de la clase , en etse caso el posible valor de la prueba de covid19 ,  y de modo muy sencillo con un resultado que puede ser (positivo o negativo) .  Esto viene siendo algo así como lo que  en medicina llamamos “un  triage o clasificación ” con cajitas azules para los resultados  negativos y con color marrón oscuro para los positivos.

En cada rama de este «árbol»,  se produce una decisión en donde se involucra una variable, si la variable resulta de interés o el modelo considera que además tiene relación con otras variables es posible que la misma variable aparezca varias veces en el árbol.   Este modelo fue descrito inicialmente como el modelo ID3 de J. Ross Quinlan.  En este caso en particular decidimos utilizar  el  parámetro de la  entropía ( una forma de medir la incertidumbre y el desorden)  para  decidir si la etiqueta que nos clasifica como positivo o negativo a determinado paciente,  tiene la suficiente precisión.   o sea que cada etiqueta tendrá un valor de entropía.

Cómo se interpreta este árbol ?

Las “ramas” de este árbol del Triage del COVID-19, representan las 54  variables y sus relaciones.  El algoritmo las ordena y prioriza de acuerdo a ese modelo matemático que identifica relaciones y patrones de los datos, y  en donde influyen los «pesos» de las variables.  Los resultados obtenidos es posible que se salga de nuestro esquema de pensamiento tradicional dentro del fenómeno salud-enfermedad.  La Ciencia de Datos  lo explica como  un  fenómeno de  MULTI DIMENSIONALIDAD.  (esto es:  cuando todas las variables entran en juego, el modelo se va ordenando por prioridades y pesos  y se va  re acomodando.  Hay variables  que podrían parecernos muy importantes de previo, pero  para el modelo,  talvéz no lo son, etc.).

Sin embargo gracias a este tipo de modelos  podemos dar respuesta,  por ejemplo a:  Qué tanto influye el Distanciamiento Social y en que proporción ? , o  Porqué unas enfermedades previas son más importantes que otras , porqué determinadas etnias están siendo mas o menos afectadas,  porqué ciertas clases sociales son mas  afectadas que otras, o porque hay países con comportamientos tan diferentes .

La Multidimensionalidad

También nos permite entender porqué unos síntomas cuando están en presencia de factores epidemiológicos toman mayor peso , y toda esta infinita gama de posibilidades  y combinaciones que  hacen a las personas  diferentes unas de otras y que hacen que la disciplina del BIG DATA y el machine learning (aprendizaje automático) sean la revolución del milenio. La mayor riqueza de esta información no está en el peso de una variable por si misma,  sino en la mezcla de todas .

Podemos saber que entrar en contacto con una persona sintomática tiene mucho peso. Pero cuando hacemos esa relación con todas las variables al mismo tiempo, posiblemente veamos que estar en contacto con una persona sintomática siendo diabético o hipertenso me sube el riesgo en un 40%, y el hecho de tener un indice de masa corporal normal me lo reduce en un 20%, y esto solo por mencionar algunas relaciones que surgen a partir de este árbol.

El elaborar el primer «árbol» es una tarea que un algoritmo realiza en pocos minutos, el trabajo previo es posiblemente el mas complejo y el análisis de los datos también lleva implícito un enorme trabajo.

Cómo interpretar el valor de la entropía de las cajitas? 

Cajitas con valores de entropía cercanos a 1, son los casos en los que las muestras utilizadas,  tienen un número similar de casos  positivos y negativos  (Es nuestro  caso menos deseado); mientras que las cajitas con valores cercanos a cero,  son muestras homogéneamente distribuidas y sus casos  pertenecen a una misma clase por ej. Positivos o negativos “puros”.  Nuestro algoritmo les pondrá tonos de color  más intenso a las clases homogéneas , mientras que las clases heterogéneas tendrán los tonos de color más claros.

La entropía es muy importante, ya que los atributos que discriminan más objetos, tienden a reducir la entropía, y por tanto ese atributo ó será  utilizado como la nueva división ó  “rama” que se produce en nuestro árbol  (nuestro árbol tiene 18 niveles) .  Llegamos a la conclusión de que 18 niveles es el número «mágico» puesto que en ese nivel,  es donde el algoritmo, en este caso  tiene una mayor precisión.

¿Qué tan precisa son esas predicciones ?

En el caso de el algoritmo de Arboles decisorios , hemos logrado una precisión del 93.2%. La matriz de confusión  y sus métricas se muestran a continuación:

 

Las clases de la matriz

La clase 1 del modelo son los casos con resultados “positivos” .  En este caso el  modelo es mas  preciso para la clase 1.  Los resultados muestran   una   “precisión” (0.94)  y un  “recall” (0.94,)   lo que indica que nuestro  modelo maneja bien la clase en términos de especificidad y sensibilidad.

La clase 2, son los casos con resultados “negativos” y acá tenemos también alta “precisión” (0.88) y alto “recall”. (0.87), lo que indica que el nuestro modelo también maneja perfectamente ésta clase 2.  (Aunque estos valores sean ligeramente menores a la clase 1.)

Overfitting y ajuste de parámetros

Con los resultados obtenidos también podemos decir que nuestro modelo no presenta problema de overfitting, que es otra de las amenazas del machine learning.

Luego hay que hacer un trabajo de ajuste de los llamados hiper parámetros, para conseguir valores de precisión aún mayores.  Cuáles variables podemos ajustar ?  Podemos cambiar el número de niveles del árbol y escoger con cual número de niveles es más preciso y además podemos cambiar el número de elementos de cada nodo y el número de elementos que provocan que el nodo se divida.

Una tercera opción:

Considerando que existen algoritmos mas modernos hemos incluido dos opciones adicionales.  En primer lugar Random Forest que en principio es un algoritmo se forma de muchos árboles decisorios simultáneos, por tanto  es un algoritmo mas sofisticado porque es parte de los llamados:  algoritmos de impulso.

En este tipo de algoritmos,  el mecanismo consiste en usar el mismo algoritmo, pero entrenándolo con  diferentes subconjuntos de datos .  Al final  obtendremos mejores resultados que con el método tradicional   Porqué ocurre esto ? Es sabido que los datos en subconjuntos aleatorios pueden repetirse  con patrones ocultos.  Esto provoca   modelos predecibles de datos. Por ejemplo, de un conjunto como “1-2-3” podemos obtener subconjuntos como “2-2-3”, “1-2-2”, “3-1-2” y así sucesivamente.   El algoritmo usará estos  nuevos sub conjuntos de datos para entrenar  el mismo algoritmo muchísimas  veces y luego dar  la respuesta final a través de una mayoría simple de votos.

El algoritmo del bosque aleatorio (Random Forest)

Este es simplemente un algoritmo que empaqueta los árboles de decisión (que se ilustraron anteriormente).   Para que aplicaciones se utiliza usualmente ? Cuando abrimos  la aplicación de la cámara de nuestro  teléfono móvil y vemos que  dibuja cuadros alrededor de las caras de las personas, es probable que esto sea el resultado del trabajo de un algoritmo de Random Forest.

Las redes neuronales serían demasiado lentas para ejecutarse en tiempo real, pero los algoritmos de  empaquetamiento son ideales  dado que pueden «calcular árboles»  gracias a las pequeñísimas sombras que las fotos poseen, esto muestra la eficiente capacidad del Random Forest  para aplicaciones en tiempo real .  En el campo de la salud se utilizan por su facilidad de implementación y por su alta precisión.

El resultado de la Matriz de Confusión de Random Forest es bastante mejor al de árboles decisorios como era de esperar, con un f1 score  del 94%

 

Un Cuarto Algoritmo

Por último también hemos utilizado el Algoritmo Light-GBM que es un algoritmo también del grupo de los algoritmos de Ensamble (Dentro de este tipo de algoritmos hay un subgrupo conocido como algoritmos de  Boosting o de Impulso, categoría a la que pertenece Light-GBM junto con: XGBoost,  CatBoost y Ada Boost,  todos ellos están siendo muy utilizados actualmente en aplicaciones del mundo del BIG DATA en Salud.  Como se puede observar los resultados son muy similares entre Random Forest y Light GBM por lo que se podríamos utilizar cualquiera de los dos.

Un algoritmo que aprende más,  cada día!

El modelo se alimenta  de datos de pacientes (ANÓNIMOS) a los que se les han realizado la pruebas y a los que es posible “etiquetarlos” como POSITIVO Y NEGATIVO. Esta característica dinámica de la actualización permite que el algoritmo vaya “aprendiendo” cada día y alcanzando con cada caso nuevo, mayor precisión. (en principio así funcionan los algoritmos supervisados del aprendizaje automático)

Como verán, el objetivo con los datos es poder predecir, conforme se “entrena” el algoritmo  cuáles de los pacientes que llenaron la encuesta tienen suficiente “evidencia con sus datos” que los hace estar en la categoría de positivo o negativo y los hace candidatos para pruebas prioritarias o dirigidas. (con PCR, o las pruebas cualitativas séricas con inmunoglobulinas igG o IgM )

Pruebas con Anticuerpos

Recordemos que las pruebas cualitativas se utilizan preferentemente con fines epidemiológicos porque miden la memoria inmunológica del paciente en el caso de la IgG y en el caso de la IgM la presencia actual de anticuerpos con o sin síntomas.  Muchas veces su resultado es tardío y por ello no se les concede mucha validez ( aparecen positivas hasta 7 días después de que el paciente ya está  sintomático. ) Además de que tienen una  sensibilidad que no sobrepasa el 70%

Nuestro trabajo con el Triage del COVID-19tiene además un reto, que ya no es clínico y es el hecho de que un alto porcentaje de pacientes con Covid19, cursan la enfermedad de manera asintomática, por lo que un conjunto de preguntas cada vez más ampliado y cuidadosamente elegido,  por su relevancia,  podría ayudarnos a su identificación.  (Por ello las preguntas de nuestro cuestionario también irán variando).  Cuáles son las preguntas perfectas  ? Lo iremos averiguando…

¿Quiere ayudar en nuestro proyecto del Triage del COVID-19?

Si tienes dudas o comentarios o quieres colaborar con nuestro proyecto escríbenos a:  info@vigilaelcovid.online

Miembros del equipo:

Dr. Juan I. Barrios Arce,  El autor principal es médico, especialista en Informática médica , máster en Business Intelligence y especialista en BIG DATA y Ciencia de Datos.  Aplica modelos de Machine Learning y de Inteligencia Artificial al campo de la salud. Actualmente reside en Barcelona y colabora en la cátedra de Informática Médica de la Universidad de Barcelona, como profesor visitante.

Dr. Alvaro Salas Chaves, médico cirujano, graduado de la Universidad de Costa Rica, especialista en administración y planificación de Servicios de Salud de la Universidad de Leeds, Reino UNIDO; especialista en economía de la salud de la Universidad de Harvard, USA. Director de clínicas y hospitales de la CCSS y presidente ejecutivo de la misma en los años 1994-1998 , es  Profesor de Gestión de Servicios de Salud, Universidad de Costa Rica.

Saludos,  de parte el equipo de: Health BIG DATA

Si quiere tener acceso al formulario de Triage del COVID-19 haga clic en este enlace:

 

HTML Snippets Powered By : XYZScripts.com