Predicción de tráfico con redes neuronales gráficas avanzadas

'Predicción de tráfico con redes neuronales avanzadas'

Al asociarse con Google, DeepMind puede llevar los beneficios de la inteligencia artificial a miles de millones de personas en todo el mundo. Desde reunir a un usuario con discapacidad del habla con su voz original, hasta ayudar a los usuarios a descubrir aplicaciones personalizadas, podemos aplicar investigaciones innovadoras a problemas del mundo real de manera inmediata y a gran escala en Google. Hoy nos complace compartir los resultados de nuestra última colaboración, que tiene un impacto verdaderamente global en los más de mil millones de personas que utilizan Google Maps.

Nuestra colaboración con Google Maps

Las personas confían en Google Maps para obtener predicciones precisas de tráfico y tiempos estimados de llegada (ETAs). Estas son herramientas críticas que son especialmente útiles cuando necesitas evitar un atasco de tráfico, si necesitas avisar a tus amigos y familiares que llegarás tarde o si necesitas salir a tiempo para asistir a una reunión importante. Estas características también son útiles para empresas como las compañías de viajes compartidos, que utilizan la plataforma de Google Maps para alimentar sus servicios con información sobre los tiempos de recogida y entrega, junto con los precios estimados basados en la duración del viaje.

Investigadores de DeepMind se han asociado con el equipo de Google Maps para mejorar la precisión de los tiempos estimados de llegada en tiempo real hasta en un 50% en lugares como Berlín, Jakarta, São Paulo, Sydney, Tokio y Washington D.C., utilizando técnicas avanzadas de aprendizaje automático, incluyendo redes neuronales gráficas, como muestra la siguiente gráfica:

Cómo Google Maps predice los tiempos estimados de llegada (ETAs)

Para calcular los ETAs, Google Maps analiza datos de tráfico en tiempo real de segmentos de carreteras de todo el mundo. Si bien estos datos brindan a Google Maps una imagen precisa del tráfico actual, no tienen en cuenta el tráfico que un conductor puede esperar ver en 10, 20 o incluso 50 minutos de su viaje. Para predecir con precisión el tráfico futuro, Google Maps utiliza el aprendizaje automático para combinar las condiciones de tráfico en tiempo real con los patrones de tráfico históricos de carreteras de todo el mundo. Este proceso es complejo por varias razones. Por ejemplo, aunque inevitablemente hay horas punta todas las mañanas y tardes, el momento exacto de las horas punta puede variar significativamente de un día a otro y de un mes a otro. Factores adicionales como la calidad de las carreteras, los límites de velocidad, los accidentes y los cierres también pueden agregar complejidad al modelo de predicción.

DeepMind se asoció con Google Maps para ayudar a mejorar la precisión de sus ETAs en todo el mundo. Si bien los ETAs predictivos de Google Maps han sido consistentemente precisos en más del 97% de los viajes, trabajamos con el equipo para minimizar aún más las inexactitudes restantes, a veces en más del 50% en ciudades como Taichung. Para lograr esto a escala global, utilizamos una arquitectura de aprendizaje automático generalizada llamada redes neuronales gráficas que nos permite realizar razonamiento espacio-temporal al incorporar sesgos de aprendizaje relacional para modelar la estructura de conectividad de las redes viales del mundo real. Así es como funciona:

Dividir las carreteras del mundo en supersegmentos

Dividimos las redes de carreteras en “supersegmentos” que consisten en múltiples segmentos de carretera adyacentes que comparten un volumen de tráfico significativo. Actualmente, el sistema de predicción de tráfico de Google Maps consta de los siguientes componentes: (1) un analizador de rutas que procesa terabytes de información de tráfico para construir supersegmentos y (2) un modelo novedoso de redes neuronales gráficas, que se optimiza con múltiples objetivos y predice el tiempo de viaje para cada supersegmento.

La arquitectura del modelo para determinar rutas óptimas y su tiempo de viaje.

En el camino hacia arquitecturas novedosas de aprendizaje automático para la predicción de tráfico

El mayor desafío al crear un sistema de aprendizaje automático para estimar los tiempos de viaje utilizando supersegmentos es de naturaleza arquitectónica. ¿Cómo representamos ejemplos de segmentos conectados de tamaño dinámico con una precisión arbitraria de tal manera que un solo modelo pueda tener éxito?

Nuestra prueba de concepto inicial comenzó con un enfoque sencillo que utilizaba el sistema de tráfico existente tanto como fuera posible, específicamente la segmentación existente de las redes de carreteras y el canal de datos en tiempo real asociado. Esto significaba que un supersegmento cubría un conjunto de segmentos de carretera, donde cada segmento tiene una longitud específica y características de velocidad correspondientes. Al principio, entrenamos un solo modelo de red neuronal completamente conectada para cada supersegmento. Estos resultados iniciales fueron prometedores y demostraron el potencial de utilizar redes neuronales para predecir el tiempo de viaje. Sin embargo, dado el tamaño dinámico de los supersegmentos, necesitábamos un modelo de red neuronal entrenado por separado para cada uno. Para implementar esto a gran escala, tendríamos que entrenar millones de estos modelos, lo que plantearía un desafío considerable en términos de infraestructura. Esto nos llevó a investigar modelos que pudieran manejar secuencias de longitud variable, como las redes neuronales recurrentes (RNNs). Sin embargo, resultó difícil incorporar una estructura adicional de la red de carreteras. En cambio, decidimos utilizar redes neuronales gráficas. Al modelar el tráfico, nos interesa cómo fluyen los autos a través de una red de carreteras, y las redes neuronales gráficas pueden modelar la dinámica de la red y la propagación de la información.

Nuestro modelo trata la red vial local como un grafo, donde cada segmento de ruta corresponde a un nodo y existen arcos entre segmentos que son consecutivos en la misma carretera o conectados a través de una intersección. En una Red Neuronal de Grafos, se ejecuta un algoritmo de paso de mensajes donde los mensajes y su efecto en los estados de los arcos y los nodos son aprendidos por redes neuronales. Desde este punto de vista, nuestros Supersegmentos son subgrafos de carreteras, que se muestrearon al azar en proporción a la densidad de tráfico. Por lo tanto, se puede entrenar un solo modelo utilizando estos subgrafos muestreados y se puede implementar a gran escala.

Las Redes Neuronales de Grafos amplían el sesgo de aprendizaje impuesto por las Redes Neuronales Convolucionales y las Redes Neuronales Recurrentes al generalizar el concepto de “proximidad”, lo que nos permite tener conexiones arbitrariamente complejas para manejar no solo el tráfico que está delante o detrás de nosotros, sino también a lo largo de carreteras adyacentes e intersecciones. En una Red Neuronal de Grafos, los nodos adyacentes se envían mensajes entre sí. Al mantener esta estructura, imponemos un sesgo de localidad donde los nodos encontrarán más fácil confiar en los nodos adyacentes (esto solo requiere un paso de mensajes). Estos mecanismos permiten que las Redes Neuronales de Grafos aprovechen de manera más efectiva la estructura de conectividad de la red vial. Nuestros experimentos han demostrado mejoras en el poder predictivo al incluir carreteras adyacentes que no forman parte de la carretera principal. Por ejemplo, piense en cómo un embotellamiento en una calle lateral puede afectar el tráfico en una carretera más grande. Al abarcar múltiples intersecciones, el modelo adquiere la capacidad de predecir nativamente retrasos en giros, retrasos debido a la fusión y el tiempo total de recorrido en tráfico de parada y marcha. Esta capacidad de las Redes Neuronales de Grafos para generalizar sobre espacios combinatorios es lo que otorga a nuestra técnica de modelado su poder. Cada Supersegmento, que puede tener una longitud y una complejidad variables, desde rutas simples de dos segmentos hasta rutas más largas que contienen cientos de nodos, puede ser procesado por el mismo modelo de Red Neuronal de Grafos.

Desde la investigación básica hasta modelos de aprendizaje automático listos para producción

Un gran desafío para un sistema de aprendizaje automático de producción que a menudo se pasa por alto en el entorno académico implica la gran variabilidad que puede existir en múltiples ejecuciones de entrenamiento del mismo modelo. Si bien las pequeñas diferencias de calidad simplemente se pueden descartar como malas inicializaciones en entornos más académicos, estas pequeñas inconsistencias pueden tener un gran impacto cuando se suman en millones de usuarios. Como tal, hacer que nuestra Red Neuronal de Grafos sea resistente a esta variabilidad en el entrenamiento tomó protagonismo cuando llevamos el modelo a la producción. Descubrimos que las Redes Neuronales de Grafos son particularmente sensibles a los cambios en el currículo de entrenamiento, siendo la causa principal de esta inestabilidad la gran variabilidad en las estructuras de grafos utilizadas durante el entrenamiento. Un lote único de grafos podría contener desde pequeños grafos de dos nodos hasta grandes grafos de más de 100 nodos.

Después de mucho ensayo y error, sin embargo, desarrollamos un enfoque para resolver este problema al adaptar una novedosa técnica de aprendizaje por refuerzo para su uso en un entorno supervisado.

En el entrenamiento de un sistema de aprendizaje automático, la tasa de aprendizaje de un sistema especifica qué tan “plástico” -o capaz de cambiar ante nueva información- es. Los investigadores suelen reducir la tasa de aprendizaje de sus modelos con el tiempo, ya que hay un equilibrio entre aprender cosas nuevas y olvidar características importantes ya aprendidas, de manera similar a la progresión de la infancia a la edad adulta. Inicialmente, utilizamos un programa de tasa de aprendizaje exponencialmente decreciente para estabilizar nuestros parámetros después de un período predefinido de entrenamiento. También exploramos y analizamos técnicas de conjunto de modelos que han demostrado ser efectivas en trabajos anteriores para ver si podíamos reducir la varianza del modelo entre las ejecuciones de entrenamiento.

Al final, el enfoque más exitoso para este problema fue utilizar MetaGradients para adaptar dinámicamente la tasa de aprendizaje durante el entrenamiento, lo que permite que el sistema aprenda su propia programación óptima de la tasa de aprendizaje. Al adaptar automáticamente la tasa de aprendizaje durante el entrenamiento, nuestro modelo no solo logró una mayor calidad que antes, sino que también aprendió a disminuir automáticamente la tasa de aprendizaje. Esto condujo a resultados más estables, lo que nos permitió utilizar nuestra arquitectura novedosa en la producción.

Haciendo que los modelos generalicen mediante funciones de pérdida personalizadas

Aunque el objetivo final de nuestro sistema de modelado es reducir los errores en las estimaciones de viaje, descubrimos que el uso de una combinación lineal de múltiples funciones de pérdida (ponderadas de manera apropiada) aumentó en gran medida la capacidad del modelo para generalizar. Específicamente, formulamos un objetivo de múltiple pérdida utilizando un factor de regularización en los pesos del modelo, pérdidas L_2 y L_1 en los tiempos de recorrido globales, así como pérdidas individuales de Huber y de probabilidad logarítmica negativa (NLL) para cada nodo en el grafo. Al combinar estas pérdidas, pudimos guiar a nuestro modelo y evitar el sobreajuste en el conjunto de datos de entrenamiento. Si bien nuestras mediciones de calidad en el entrenamiento no cambiaron, las mejoras observadas durante el entrenamiento se tradujeron de manera más directa en conjuntos de pruebas y en nuestros experimentos de extremo a extremo.

Actualmente estamos explorando si la técnica de MetaGradient también se puede utilizar para variar la composición de la función de pérdida de múltiples componentes durante el entrenamiento, utilizando la reducción de errores en la estimación de viaje como métrica guía. Este trabajo está inspirado en los esfuerzos de MetaGradient que han tenido éxito en el aprendizaje por refuerzo, y los experimentos iniciales muestran resultados prometedores.

Colaboración

Gracias a nuestra estrecha y fructífera colaboración con el equipo de Google Maps, pudimos aplicar estas técnicas novedosas y recién desarrolladas a gran escala. Juntos, pudimos superar tanto los desafíos de investigación como los problemas de producción y escalabilidad. Al final, el modelo final y las técnicas llevaron a un lanzamiento exitoso, mejorando la precisión de los tiempos estimados de llegada en Google Maps y las API de Google Maps Platform en todo el mundo.

Trabajar a escala de Google con investigación de vanguardia representa un conjunto único de desafíos. Si estás interesado en aplicar técnicas de vanguardia como las Redes Neuronales de Gráficos para abordar problemas del mundo real, obtén más información sobre el equipo que trabaja en estos problemas aquí.