
La tecnología desarrollada en colaboración con KAUST con Intel, Microsoft y la Universidad de Washington puede aumentar drásticamente la velocidad del aprendizaje automático en sistemas informáticos paralelos. Crédito: KAUST; Anastasia Serin
La inserción de un código de optimización ligero en dispositivos de red de alta velocidad permitió que la colaboración dirigida por KAUST multiplicara por cinco la velocidad del aprendizaje automático en sistemas informáticos paralelos.
Esta tecnología de “agregación en la red”, desarrollada en colaboración con investigadores y arquitectos de sistemas en Intel, Microsoft y la Universidad de Washington, puede proporcionar mejoras de velocidad dramáticas a través de una red programable de fácil acceso. hardware.
La principal ventaja de la inteligencia artificial (IA), que le brinda tan grandes oportunidades para “comprender” el mundo e interactuar con el mundo, es la etapa de aprendizaje automático en la que Modelo se entrena utilizando grandes conjuntos de datos de entrenamiento etiquetados. Cuantos más datos entrene la IA, mejor funcionará el modelo cuando se exponga a nuevas entradas.
El reciente aumento de las aplicaciones de inteligencia artificial se debe en gran parte a un mejor aprendizaje automático y al uso de modelos más grandes y conjuntos de datos más diversos. Sin embargo, realizar cálculos basados en el aprendizaje automático es una tarea extremadamente onerosa que depende cada vez más de grandes conjuntos de computadoras que se ejecutan en paralelo con el algoritmo de aprendizaje.
“Cómo entrenar modelos de aprendizaje profundo a gran escala es un tema muy difícil”, dice Marco Canini del equipo de investigación de KAUST. “Los modelos de inteligencia artificial pueden constar de miles de millones de parámetros y podemos utilizar cientos de procesadores que deben funcionar de manera eficiente en paralelo. En tales sistemas, la comunicación entre CPU durante las actualizaciones incrementales del modelo se convierte fácilmente en un importante cuello de botella en el rendimiento “.
El equipo encontró una solución potencial en una nueva tecnología de redes desarrollada por Barefoot Networks, una división de Intel.
“Estamos utilizando el nuevo hardware de red programable de Barefoot Networks para descargar parte del trabajo realizado en el aprendizaje automático distribuido”, explica Amedeo Sapio, un graduado de KAUST que se ha unido al equipo de Barefoot Networks de Intel. “El uso de este nuevo hardware de red programable, no solo redes, para mover datos significa que podemos realizar cálculos a lo largo de las rutas de la red”.
Una innovación clave de la plataforma SwitchML del equipo es permitir que el hardware de red realice la tarea de agregación de datos en cada etapa de sincronización durante la fase de actualización del modelo del proceso de aprendizaje automático. Esto no solo alivia parte de la carga informática, sino que también reduce significativamente la cantidad de transmisión de datos.
“Si bien un conmutador de datos programable puede realizar operaciones muy rápidamente, las operaciones que puede realizar son limitadas”, dice Canini. “Por lo tanto, nuestra solución tenía que ser lo suficientemente simple para el hardware, pero lo suficientemente flexible para enfrentar desafíos como la capacidad de memoria limitada de la placa base. SwitchML resuelve este desafío co-creando comunicación la red y un algoritmo de entrenamiento distribuido que se acelera hasta 5,5 veces en comparación con el enfoque de vanguardia “.
Escalar el aprendizaje automático distribuido con agregación en la red. arxiv.org/abs/1903.06701 arXiv: 1903.06701v2 [cs.DC]
Entregado por
Universidad de Ciencia y Tecnología King Abdullah