Este documento de AI de Google presenta un conjunto de optimizaciones que colectivamente logran cifras de latencia revolucionarias para ejecutar grandes modelos de difusión en varios dispositivos.

This Google AI document presents a set of optimizations that collectively achieve revolutionary latency figures for running large broadcast models on multiple devices.

El tamaño del modelo y las cargas de trabajo de inferencia han aumentado drásticamente a medida que los grandes modelos de difusión para la producción de imágenes se han vuelto más comunes. Debido a las limitaciones de recursos, optimizar el rendimiento para la inferencia de ML en el dispositivo en contextos móviles es un acto de equilibrio delicado. Debido a los considerables requisitos de memoria y demandas computacionales de estos modelos, la inferencia de grandes modelos de difusión (LDM) en dispositivos plantea obstáculos aún mayores, especialmente en vista de la necesidad de rentabilidad y privacidad del usuario.

La rápida creación y el uso generalizado de modelos base han transformado por completo la inteligencia artificial. Debido a su versatilidad y capacidad para producir imágenes fotorrealistas, los grandes modelos de difusión han atraído mucha atención. La reducción de los costos del servidor, las capacidades sin conexión y la mejora de la privacidad del usuario son solo algunas de las ventajas de implementar estos modelos localmente en el dispositivo del usuario. Debido a los recursos computacionales y de memoria limitados en los dispositivos, los modelos típicos de difusión tienen más de mil millones de parámetros, lo que plantea dificultades. Los investigadores de Google ofrecen un conjunto de modificaciones a la implementación de grandes modelos de difusión que permiten la latencia de inferencia más rápida en dispositivos móviles con GPU hasta la fecha. Estas actualizaciones mejoran la experiencia general del usuario en varios dispositivos y aumentan el alcance del uso de la IA generativa.

Debido a sus muchos beneficios sobre los métodos basados en el servidor, como una latencia más baja, una mayor privacidad y una mayor escalabilidad, la aceleración de la inferencia del modelo en el dispositivo ha atraído recientemente mucho interés. La complejidad de la operación softmax utilizada con frecuencia en el aprendizaje profundo ha motivado esfuerzos de optimización, lo que ha dado lugar a varias estrategias de aceleración diferentes. La convolución de Winograd se desarrolló para mejorar la eficiencia del cálculo de convolución al minimizar el número de multiplicaciones requeridas, lo que es especialmente útil para las unidades de procesamiento gráfico (GPU).

El éxito y la adopción generalizados del diseño Transformer han impulsado la investigación para acelerar el mecanismo de atención. Reformer utiliza una aproximación dispersa para reducir el costo de cómputo, mientras que otros trabajos utilizan baja clasificación o una combinación de técnicas de aproximación. FlashAttention, por otro lado, es un algoritmo de atención preciso que considera las configuraciones de hardware para lograr un mejor rendimiento.

El enfoque principal se centra en el desafío de crear visuales a partir de descripciones escritas mediante el empleo de grandes modelos de difusión. Aunque esta explicación se centra en cómo funcionan las mejoras propuestas con la arquitectura de difusión estable, es importante destacar que estas optimizaciones son fácilmente transferibles a otros grandes modelos de difusión. La inferencia a partir de texto requiere una condicionante adicional basada en la descripción textual deseada para dirigir el proceso de difusión inversa.

El bloque de atención utilizado extensamente por el modelo denoiser en LDM presenta un área principal para la mejora. El modelo puede centrarse en la información relevante dando a los bloques de atención más peso en la entrada. Los módulos de atención se pueden optimizar de varias maneras; los investigadores suelen utilizar solo una de las dos optimizaciones detalladas a continuación, la que produce los mejores resultados.

La primera optimización, llamada softmax parcialmente fusionado, reduce la cantidad de memoria leída y escrita durante el softmax del módulo de atención fusionándolo con la multiplicación de matrices. El otro ajuste utiliza un método de atención preciso consciente de la E/S llamado FlashAttention. Se reduce el número de accesos a la memoria de alta velocidad de la GPU con este enfoque, lo que lo convierte en una excelente opción para aplicaciones con ancho de banda de memoria restringido. Se necesitan una gran cantidad de registros y descubrieron que el método solo funciona con tamaños específicos de SRAM. Por lo tanto, solo utilizan este método en un subconjunto de GPU para matrices de atención de un tamaño particular.

Además, el equipo descubrió que las ventanas de fusión para capas y unidades comúnmente utilizadas en LDM deben ser considerablemente mayores en una GPU móvil que lo que está actualmente disponible en los motores de inferencia de ML acelerados por GPU disponibles comercialmente. A la luz de las limitaciones de las reglas de fusión estándar, diseñaron implementaciones personalizadas capaces de ejecutar una variedad más amplia de operadores neuronales. Su atención se centró en dos subcampos: la unidad lineal de error gaussiano (GELU) y la capa de normalización de grupo.

Las limitaciones en el tamaño del archivo del modelo, las enormes necesidades de memoria en tiempo de ejecución y la prolongada latencia de inferencia han demostrado ser obstáculos significativos al realizar inferencias de ML de grandes modelos en el dispositivo mismo. Los investigadores se dieron cuenta de que el uso del ancho de banda de memoria era la principal restricción. Por lo tanto, se enfocaron en mejorar la utilización del ancho de banda de memoria mientras mantenían una relación saludable de eficiencia ALU/memoria. En conjunto, las optimizaciones que demostraron permitieron la ejecución de grandes modelos de difusión en una amplia gama de dispositivos con valores de latencia sin precedentes. Gracias a estas mejoras, se amplía la aplicabilidad del modelo y se mejora la experiencia del usuario en una amplia gama de dispositivos.