Los investigadores a menudo usan simulaciones cuando diseñan nuevos algoritmos, ya que probar ideas en el mundo real puede ser costoso y arriesgado. Pero dado que es imposible capturar todos los detalles de un sistema complejo en una simulación, normalmente recopilan una pequeña cantidad de datos reales que reproducen mientras simulan los componentes que quieren estudiar.
Conocido como simulación basada en trazas (los pequeños fragmentos de datos reales se denominan trazas), este método a veces produce resultados sesgados. Esto significa que los investigadores pueden elegir, sin saberlo, un algoritmo que no es el mejor que evaluaron y que funcionará peor en datos reales de lo que predijo la simulación.
Los investigadores del MIT han desarrollado un nuevo método que elimina esta fuente de sesgo en la simulación basada en trazas. Al permitir simulaciones imparciales basadas en trazas, la nueva técnica podría ayudar a los investigadores a diseñar mejores algoritmos para una variedad de aplicaciones, incluida la mejora de la calidad del video en Internet y el aumento del rendimiento de los sistemas de procesamiento de datos.
El algoritmo de aprendizaje automático de los investigadores se basa en los principios de causalidad para aprender cómo los rastros de datos se vieron afectados por el comportamiento del sistema. De esta manera, pueden reproducir la versión correcta e imparcial de la traza durante la simulación.
Cuando se comparó con un simulador basado en trazas desarrollado anteriormente, el método de simulación de los investigadores predijo correctamente qué algoritmo recién diseñado sería mejor para la transmisión de video, es decir, el que condujo a menos almacenamiento en búfer y mayor calidad visual. Los simuladores existentes que no tienen en cuenta el sesgo habrían señalado a los investigadores un algoritmo de peor rendimiento.
«Los datos no son lo único que importa. La historia detrás de cómo se generan y recopilan los datos también es importante. Si desea responder una pregunta hipotética, debe conocer la historia subyacente de la generación de datos para que solo intervenga en aquellas cosas que realmente quieres simular», dice Arash Nasr-Esfahany, estudiante graduado de ingeniería eléctrica y ciencias de la computación (EECS) y coautor principal de un artículo sobre esta nueva técnica.
A él se unen en el artículo los coautores principales y compañeros estudiantes graduados de EECS Abdullah Alomar y Pouya Hamadanian; estudiante recién graduado Anish Agarwal PhD ’21; y los autores principales Mohammad Alizadeh, profesor asociado de ingeniería eléctrica e informática; y Devavrat Shah, profesor Andrew y Erna Viterbi en EECS y miembro del Instituto de Datos, Sistemas y Sociedad y del Laboratorio de Sistemas de Información y Decisión. La investigación se presentó recientemente en el Simposio USENIX sobre diseño e implementación de sistemas en red.
Simulaciones engañosas
Los investigadores del MIT estudiaron la simulación basada en trazas en el contexto de las aplicaciones de transmisión de video.
En la transmisión de video, un algoritmo de tasa de bits adaptable decide continuamente la calidad del video, o la tasa de bits, para transferir a un dispositivo en función de los datos en tiempo real del ancho de banda del usuario. Para probar cómo los diferentes algoritmos de tasa de bits adaptables afectan el rendimiento de la red, los investigadores pueden recopilar datos reales de los usuarios durante una transmisión de video para una simulación basada en rastreo.
Utilizan estos rastros para simular lo que habría sucedido con el rendimiento de la red si la plataforma hubiera utilizado un algoritmo de tasa de bits adaptable diferente en las mismas condiciones subyacentes.
Los investigadores han asumido tradicionalmente que los datos de seguimiento son exógenos, lo que significa que no se ven afectados por factores que cambian durante la simulación. Supondrían que, durante el período en que recogieron los datos de rendimiento de la red, las elecciones que hizo el algoritmo de adaptación de tasa de bits no afectaron esos datos.
Pero esta es a menudo una suposición falsa que da como resultado sesgos sobre el comportamiento de los nuevos algoritmos, lo que hace que la simulación sea inválida, explica Alizadeh.
«Reconocimos, y otros han reconocido, que esta forma de hacer simulación puede inducir errores. Pero no creo que la gente supiera necesariamente cuán significativos podrían ser esos errores», dice.
Para desarrollar una solución, Alizadeh y sus colaboradores enmarcaron el problema como un problema de inferencia causal. Para recolectar un rastro imparcial, uno debe comprender las diferentes causas que afectan los datos observados. Algunas causas son intrínsecas a un sistema, mientras que otras se ven afectadas por las acciones que se toman.
En el ejemplo de transmisión de video, el rendimiento de la red se ve afectado por las elecciones que hizo el algoritmo de adaptación de la tasa de bits, pero también se ve afectado por elementos intrínsecos, como la capacidad de la red.
«Nuestra tarea es desenredar estos dos efectos, tratar de entender qué aspectos del comportamiento que estamos viendo son intrínsecos al sistema y cuánto de lo que estamos observando se basa en las acciones que se tomaron. Si podemos desenredar estos dos efectos, entonces podemos hacer simulaciones imparciales», dice.
Aprender de los datos
Pero los investigadores a menudo no pueden observar directamente las propiedades intrínsecas. Aquí es donde entra la nueva herramienta, llamada CausalSim. El algoritmo puede aprender las características subyacentes de un sistema utilizando solo los datos de seguimiento.
CausalSim toma datos de seguimiento que se recopilaron a través de un ensayo de control aleatorio y estima las funciones subyacentes que produjeron esos datos. El modelo les dice a los investigadores, bajo exactamente las mismas condiciones subyacentes que experimentó un usuario, cómo un nuevo algoritmo cambiaría el resultado.
Usando un simulador típico basado en trazas, el sesgo puede llevar a un investigador a seleccionar un algoritmo de peor rendimiento, aunque la simulación indique que debería ser mejor. CausalSim ayuda a los investigadores a seleccionar el mejor algoritmo que se probó.
Los investigadores del MIT observaron esto en la práctica. Cuando usaron CausalSim para diseñar un algoritmo de adaptación de tasa de bits mejorado, los llevó a seleccionar una nueva variante que tenía una tasa de bloqueo casi 1,4 veces menor que un algoritmo de la competencia bien aceptado, mientras lograba la misma calidad de video. La tasa de bloqueo es la cantidad de tiempo que un usuario pasó volviendo a almacenar el video.
Por el contrario, un simulador basado en trazas diseñado por expertos predijo lo contrario. Indicó que esta nueva variante debería causar una tasa de bloqueo casi 1,3 veces mayor. Los investigadores probaron el algoritmo en la transmisión de video del mundo real y confirmaron que CausalSim era correcto.
«Las ganancias que obtuvimos en la nueva variante estaban muy cerca de la predicción de CausalSim, mientras que el simulador experto estaba muy lejos. Esto es realmente emocionante porque este simulador diseñado por expertos se ha utilizado en la investigación durante la última década. Si CausalSim puede tan claramente ser mejor que esto, ¿quién sabe qué podemos hacer con él? dice Hamadanian.
Durante un experimento de 10 meses, CausalSim mejoró constantemente la precisión de la simulación, lo que dio como resultado algoritmos que cometieron aproximadamente la mitad de errores que los diseñados con métodos de referencia.
En el futuro, los investigadores quieren aplicar CausalSim en situaciones en las que no se disponga de datos de ensayos controlados aleatorios o en las que sea especialmente difícil recuperar la dinámica causal del sistema. También quieren explorar cómo diseñar y monitorear sistemas para hacerlos más susceptibles al análisis causal.