Investigación · Ciencia de datos

Reemplazar la selección aleatoria para RT-PCR con una selección de viajeros basada en datos.

En 2023, los viajeros que llegaban al Aeropuerto Internacional Toronto Pearson eran elegidos al azar para revisar sus reportes de RT-PCR. Para el STEM Fellowship Big Data and AI Challenge, cuatro estudiantes de Lambton College propusimos una forma mejor: combinar los datos de COVID-19 de la OMS y del Gobierno de Canadá con el reporte RT-PCR de cada viajero para clasificar a los pasajeros en grupos de prioridad. Nuestro artículo se publicó en las memorias del reto en el STEM Fellowship Journal.

En resumen

La selección aleatoria trata a todos los viajeros por igual. Nuestro estudio calificó el riesgo actual de COVID-19 de cada país con datos de la OMS, usó datos del Gobierno de Canadá para identificar los grupos de edad con mayor riesgo de enfermedad grave, extrajo con Python los reportes RT-PCR de los viajeros desde PDF y combinó los tres en niveles de prioridad, de "Inmediata" a "Baja". Artículo: Eliminating Randomness in Selecting International Passengers for RT-PCR (doi:10.17975/sfj-2023-007). Código: GitHub.

El problema

A mediados de 2023, los viajes internacionales se habían reabierto con menos restricciones, pero el COVID-19 no había desaparecido. Nuevas subvariantes como Ómicron "Arcturus" se estaban propagando, y no estaba claro qué tan bien protegían las vacunas existentes contra ellas. Las cifras seguían siendo grandes:

1,7 Mturistas llegaron a Ontario en el primer trimestre de 2023
219.183casos nuevos reportados en el mundo en los 7 días al 7 de junio de 2023 (OMS)
Al azarasí se elegía a los viajeros para revisar sus reportes RT-PCR en Pearson

Las pruebas RT-PCR eran la forma más usada de detectar el virus, y muchos viajeros llevaban reportes RT-PCR. Pero elegir al azar a quién revisar ignora información que ya era pública. Nuestra pregunta: ¿podían esos datos orientar a la unidad de Inmigración de Pearson hacia los viajeros con más probabilidad de necesitar atención?

Los datos

FuenteQué usamos
Organización Mundial de la SaludCasos nuevos de COVID-19 por país en los últimos 7 días, y por cada 100.000 habitantes
Gobierno de CanadáEpidemiología del COVID-19: hospitalizaciones, ingresos a UCI y muertes, por grupo de edad y sexo, a lo largo del tiempo
Reportes RT-PCR de viajerosReportes de viajeros de varios países, con fecha de la prueba, edad, género, ubicación y resultado. Algunos se crearon a partir de reportes de muestra disponibles en internet.

El método

1. Un nivel de riesgo para cada país

Con los datos de la OMS calculamos la participación de cada país en los casos nuevos por cada 100.000 habitantes durante los últimos 7 días, y la convertimos en un nivel de riesgo simple:

participación (%) = casos_por_100k_últimos_7_días / suma(todos los países) × 100

nivel de riesgo = 2   si participación > 2%        (muy afectado)
                  1   si 1% ≤ participación < 2%
                  0   en otro caso                 (poco afectado)

2. Quién tiene más riesgo de enfermedad grave

Analizamos seis meses de datos del Gobierno de Canadá por edad, sexo y desenlace. Las personas de 70 años o más concentraban la mayor parte de las hospitalizaciones, los ingresos a UCI y las muertes, seguidas por el grupo de 50 a 69 años. Eso nos dio tres rangos de edad para el modelo: 70 o más, 50 a 69, y 0 a 49.

3. Leer los reportes RT-PCR

Extrajimos con Python los reportes desde PDF a un archivo CSV estructurado: fecha de la prueba, resultado, género, edad y ubicación, con el país derivado de la ubicación. También agregamos la antigüedad de cada reporte, en días desde la fecha de la prueba.

4. Grupos de prioridad

Al combinar los tres, cada viajero recibió un nivel de prioridad:

PrioridadEdadReporte RT-PCRRiesgo del país
Inmediata, nivel 370+Positivo, con más de 14 díasAlto (2)
Inmediata, nivel 2A70+Positivo, con menos de 14 díasAlto (2)
Inmediata, nivel 2B70+Positivo, con más de 14 díasBajo (1 o menos)
Alta, nivel 350 a 69Positivo, con más de 14 díasAlto (2)
Alta, nivel 2A50 a 69Positivo, con menos de 14 díasAlto (2)
Alta, nivel 2B50 a 69Positivo, con más de 14 díasBajo (1 o menos)
Media, nivel 2A50+NegativoCualquiera
Media, nivel 2B0 a 49PositivoCualquiera
Baja0 a 49NegativoCualquiera

Prioridad inmediata significa que el viajero debe ser seleccionado para una revisión RT-PCR. Los viajeros de prioridad alta y media pueden seleccionarse al azar, pero no requieren atención inmediata. Todos los demás son de prioridad baja.

Resultados

Aplicado a los reportes que recopilamos, el modelo ubicó a 2 viajeros en prioridad Inmediata nivel 2B, 8 en Alta nivel 2B y 19 en Media nivel 2A. En lugar de un sorteo, los oficiales habrían tenido una lista corta y ordenada, con una razón asociada a cada nombre.

Seleccionar al azar no es una estrategia óptima cuando los datos para hacerlo mejor ya son públicos.

Lo que aprendimos

  • Los datos públicos alcanzan para empezar. Los datos de la OMS y del Gobierno de Canadá, combinados con los reportes que los viajeros ya llevan, permitieron una política de selección clara y explicable.
  • Las reglas simples y transparentes son un buen primer paso. Cada nivel de prioridad se puede explicar en una frase, algo importante en una decisión que afecta a personas en una frontera.
  • El procesamiento automático de reportes es la base. Nada funciona hasta que los reportes en PDF se convierten en datos limpios y estructurados.
  • La colaboración y la mentoría lo hicieron posible. La guía del profesor Ashish Gupta mantuvo el trabajo riguroso y enfocado.

Alcance y próximos pasos

Como proyecto de un reto, el estudio se diseñó para demostrar el enfoque. Llevarlo más lejos implicaría:

  • aplicar el método a un conjunto más grande de reportes reales de viajeros;
  • validar las reglas de prioridad contra resultados reales de las revisiones;
  • revisar, con expertos en equidad y en temas legales, qué atributos de los viajeros son apropiados para usar.

Cómo lo construiríamos con las herramientas de hoy

Si empezáramos el proyecto en 2026, la misma idea llegaría mucho más lejos:

Leer cualquier reporte, en cualquier formato o idioma

Escribimos código en Python para extraer campos de reportes en PDF con un formato fijo. Hoy, los modelos de IA multimodales pueden leer PDF, fotos y escaneos en muchos idiomas y formatos, y devolver el tipo de prueba, la fecha, el resultado y el laboratorio como un JSON estructurado que sigue un esquema fijo, listo para validar. Explico ese patrón en JSON como contrato entre tus sistemas y la IA.

De reglas a un modelo probado

Con datos reales de resultados, por ejemplo qué viajeros seleccionados dieron positivo al llegar, las reglas podrían convertirse en un modelo entrenado. Los árboles con gradient boosting, como XGBoost o LightGBM, son una opción sólida y explicable para este tipo de datos tabulares, y los valores SHAP muestran qué factores pesan en cada predicción, así que los oficiales seguirían recibiendo una razón con cada recomendación. El modelo se probaría con datos reservados y se compararía con la selección aleatoria antes de que alguien dependiera de él.

Investigación más rápida con asistentes de IA

Los asistentes de programación con IA acelerarían la limpieza de datos, la visualización y el código de los experimentos, el trabajo que llenó nuestros notebooks. Las preguntas de investigación, las decisiones de criterio y la verificación seguirían siendo nuestras.

Equidad, privacidad y personas en el proceso

  • Equidad: medir con qué frecuencia se selecciona a cada grupo, y preferir factores del viaje y de la prueba, como la antigüedad del reporte y la tasa de casos actual en el origen, antes que características personales, siempre que sea posible.
  • Privacidad: tratar los resultados RT-PCR como datos de salud bajo la ley de privacidad canadiense: recoger lo mínimo, protegerlo y borrarlo cuando ya no se necesite.
  • Decisiones humanas: el modelo prioriza, un oficial decide.
  • Monitoreo: las tasas de casos y las variantes cambian cada semana, así que los niveles de riesgo y el modelo necesitan actualizaciones periódicas.

El artículo y el código

Título del artículo
Eliminating Randomness in Selecting International Passengers for RT-PCR
Autores
Umid Ghimire, Dharmik Limbani, Erwin Mongui, Sairam Kilari (Lambton College)
Mentor
Profesor Ashish Gupta, Lambton College
Escrito para
STEM Fellowship National Inter-University Big Data and AI Challenge 2023 (artículo fechado el 11 de junio de 2023)
Publicado en
STEM Fellowship Journal, Leveraging open data analytics and machine learning to improve diagnosis of diseases, patients' care, and support: Proceedings from the 2023 Inter-University Big Data and AI Challenge
Código
Notebooks de Jupyter en GitHub: visualización de datos de COVID-19, procesamiento de reportes RT-PCR y segmentación de viajeros

Agradecemos al profesor Gupta por su mentoría, y al STEM Fellowship por organizar el reto y darnos la oportunidad de contribuir.

Una primera versión de este artículo se publicó en inglés en LinkedIn.

Erwin MonguiDirector de Tecnología en Cedar Planters e ingeniero certificado en Inteligencia Artificial (Lambton College, 2024), en Toronto.

Recibe mis próximos casos y artículos en la Búsqueda de Google.