Saltar para o conteúdo

News

WDL – Resolviendo Problemas Sociales con Data Science

Paulo Maia · 29 de noviembre de 2021

Este artículo describe los puntos clave de mi participación en la edición 2021 de la World Data League. El equipo Tech Moguls, compuesto por mí, Tiago Gonçalves, Tomé Albuquerque y Joana Morgado, del INESC TEC, finalizó en segundo lugar en esta edición.

World Data League (WDL) es una competencia de Data Science donde grupos de científicos de datos trabajan para resolver problemas sociales utilizando datos. Hubo varios temas principales: Transporte Público, Tráfico, Ciclismo, Medio Ambiente. Cada uno se dividió en 4 subtemas menores, generando una etapa de dos semanas por subtema.

Las finales fueron un evento de 3 días con los 10 mejores finalistas, sobre Contaminación Acústica. Todo el código, datos y descripciones de desafíos están disponibles en el gitlab oficial de WDL. Para más detalles que los proporcionados aquí, consulta los notebooks vinculados a continuación.

La forma en que abordamos la resolución de problemas en NILG.AI me permitió participar en este desafío. Todo el pipeline de Lean Data Science (crear una solución base, pensar en cómo el usuario final podría utilizarla y calcular métricas de negocio además de métricas técnicas) resulta muy relevante al desarrollar soluciones que generan valor. En este artículo, mostramos nuestra forma de razonar.

Etapa 1 – Transporte Público

En esta etapa, abordamos modelos de churn en transporte público. El conjunto de datos contenía dos períodos de tiempo (incluyendo los períodos de confinamiento por COVID-19 en Portugal) con el número promedio de usuarios de autobús por día agregado por diferentes ubicaciones, género y grupos de edad. El objetivo era identificar perfiles de abandono y proponer medidas para reducirlos.

Para esto, utilizamos un Decision Tree para predecir la probabilidad de que cierto segmento aumentara o disminuyera el uso del transporte público durante los dos períodos dados, con variables que consideramos relevantes, con el fin de crear grupos que pudieran explicar el abandono. Las ramas del árbol nos proporcionarían información sobre los segmentos y su tamaño.

(imagen en mejor resolución disponible en https://raw.githubusercontent.com/TiagoFilipeSousaGoncalves/wdl-tech-moguls/main/stage-1/code/decision_tree_v3.svg. Construida usando DTreeViz)

Descubrimos dos segmentos con alta propensión al abandono:

  • Nuestro primer segmento se refiere a usuarios del sur de Portugal, cuyas edades no están en 65+ ni en 25-34
  • Nuestro segundo segmento se refiere a usuarios de 25-34 distribuidos en todo el país

Las variables más relevantes que explicaron esta disminución fueron:

  • Densidad de población en el condado y distrito
  • Cambio relativo en el desempleo
  • Variabilidad en la demanda, extraída de la matriz Origen-Destino, que puede ser un indicador de la facilidad del flujo que sale de un condado hacia las parroquias
  • Grupo de edad

Etapa 2 – Tráfico

En la etapa 2, trabajamos en predecir el flujo de tráfico en la ciudad de Oporto usando sensores de bucle de inducción. Los datos disponibles eran sensores de tráfico, meteorológicos y calidad del aire distribuidos por toda la ciudad, durante tres años.

El gráfico a continuación muestra un ejemplo típico del flujo de tráfico promedio en la ciudad de Oporto: disminuye durante la noche y comienza a aumentar alrededor de las 04:00/05:00, lo que marca el momento en el que las personas inician su rutina laboral. Luego sigue aumentando hasta las 10:00/11:00 y tiene un comportamiento aproximadamente estable hasta el final de las horas laborales, 18:00/19:00, comenzando a disminuir después.

Nuestra solución se enfocó en pronosticar el tráfico para 24 horas después para la ciudad de Oporto. Utilizamos un XGBoost Classifier con características meteorológicas (actuales y pronosticadas), características de intensidad histórica (por ejemplo, intensidad promedio en el pasado), características de fecha (si es un día festivo/fin de semana en el momento de la predicción, hora, día de la semana, etc.) y características de posición de sensores (distancia al centroide del sensor).

Esto podría utilizarse, por ejemplo, para cambiar dinámicamente la frecuencia de semáforos dependiendo del área y la hora del día.

Esta etapa tuvo otro resultado: la aceptación de un artículo para SoGood 2021 (El 6º Workshop sobre Data Science para el Bien Social) (Paulo Maia, Joana Morgado, Tiago Gonçalves y Tomé Albuquerque – Aplicando Machine Learning para Pronósticos de Tráfico en Oporto, Portugal).

Etapa 3 – Ciclismo

En la tercera etapa, trabajamos en Allanando literalmente el camino hacia ciudades más seguras. En este desafío, tuvimos acceso a imágenes de Google Street Maps en Lisboa, desde cuatro ángulos diferentes (0 a 360º) y el objetivo era estimar una puntuación de seguridad vial percibida basada en objetos en una imagen.

Etiquetamos un subconjunto de imágenes con las siguientes clases:

  • Vista irrelevante: siempre que la calle sea completamente visible o la imagen solo apunte a una pared
  • Ancho de calle: un coche podría caber en la calle frente a más de un coche podría caber allí
  • Tipo de pavimento: paralelos (paralelo), asfalto (alcatrão) o tierra (terra batida)
  • Calidad del pavimento (baja, alta o media)

También se utilizó un modelo preentrenado para detección de automóviles para contar la cantidad de autos en cada imagen. Esto podría permitirnos obtener la intensidad del tráfico como un indicador del peligro.

Como ejemplo, aquí hay un subconjunto de imágenes que fueron etiquetadas como irrelevantes:

Posteriormente, asociamos una puntuación de riesgo con la presencia de cada uno de estos y promediamos la puntuación para cada ángulo, lo que podría utilizarse para crear un mapa de riesgo a nivel de calle.

Los grupos de 4 imágenes a continuación muestran puntuaciones de riesgo bajo y alto, respectivamente, según nuestras reglas establecidas.

Las imágenes con las puntuaciones de riesgo más bajas son imágenes con tipo de pavimento "alcatrão"/asfalto, donde la calidad del pavimento es alta (sin grietas visibles) y no hay autos presentes.

Las imágenes con las puntuaciones de riesgo más altas son imágenes con tipo de pavimento "paralelo", donde aparecen autos.

Etapa 4 – Medio Ambiente

Para la cuarta etapa, trabajamos en Optimización de la publicidad exterior en ciudades. Las ciudades están inundadas de innumerables paneles publicitarios al aire libre, a menudo con una distribución deficiente. Los aspectos visuales son cruciales en el proceso de planificación urbana, ya que cada elección de plan puede generar obstrucción de elementos urbanos, produciendo así efectos adversos en la imagen de la ciudad.

El conjunto de datos contenía las coordenadas de varios carteles publicitarios, así como el número promedio de visitantes.

Nuestro enfoque consideraba que solo podíamos agregar o quitar carteles de una ubicación, pero teníamos que reemplazarlos en otra ubicación existente, ya que no sabemos qué coordenadas son ubicaciones válidas para carteles.

Desarrollamos un algoritmo basado en metaheurísticas (búsqueda local/por vecindad) que optimiza la densidad de vallas publicitarias al aire libre (reduciéndola) y el número total de visualizaciones (es decir, el número de vallas publicitarias en un radio determinado, aumentándolo). Comenzamos creando soluciones vecinas a través de operaciones de intercambio en las que cambiamos las coordenadas de un cartel determinado y evaluamos el impacto en nuestra función de aptitud, que tiene esto en cuenta.

Finales – Contaminación Acústica

Las finales de WDL tuvieron un único desafío: Mejorar la calidad de vida reduciendo los niveles de ruido en la ciudad.

Los datos proporcionados eran sobre sensores de ruido en la ciudad de Turín, Italia, así como puntos de interés y denuncias policiales.

Desarrollamos un XGBoost Classifier explicable capaz de predecir la probabilidad de que los niveles de ruido excedan el límite legal para el día siguiente (a la misma hora) en el barrio. Se utilizó un modelo para predecir el volumen de denuncias. Finalmente, ambos modelos se combinaron en un valor de molestia esperada: la probabilidad de que el ruido exceda el nivel de umbral Y cause molestia (según valores tabulados en la literatura) Y genere una denuncia. Esto hace que la decisión sea muy accionable, ya que combina el razonamiento sobre las consecuencias negativas.

Los usuarios de esta solución podrían ser las fuerzas policiales locales que, sabiendo que en un área determinada al día siguiente la probabilidad de que el nivel de ruido exceda el límite es alta, pueden optimizar patrullas y organizar los equipos. Este modelo, al presentar la posible causa de que la probabilidad sea alta, permite a la policía saber de antemano qué esperar en el terreno.

Conclusión

Este artículo describió mi participación en la competencia WDL 2021. Ahora hay disponible un informe de insights con un resumen de todos los resultados del proyecto que puedes consultar.