Token Pruning for Caching Better: 9 Times Acceleration on Stable Diffusion for Free
Zhang, Xiao, Tang et al.
Stable Diffusion has achieved remarkable success in the field of text-to-image generation, with its powerful generative capabilities and diverse generation results making a lasting impact. However, its iterative denoising introduces high computational costs and slows generation speed, limiting broader adoption. The community has made numerous efforts to reduce this computational burden, with methods like feature caching attracting attention due to their effectiveness and simplicity. Nonetheless, simply reusing features computed at previous timesteps causes the features across adjacent timesteps to become similar, reducing the dynamics of features over time and ultimately compromising the quality of generated images. In this paper, we introduce a dynamics-aware token pruning (DaTo) approach that addresses the limitations of feature caching. DaTo selectively prunes tokens with lower dynamics, allowing only high-dynamic tokens to participate in self-attention layers, thereby extending feature dynamics across timesteps. DaTo combines feature caching with token pruning in a training-free manner, achieving both temporal and token-wise information reuse. Applied to Stable Diffusion on the ImageNet, our approach delivered a 9$\times$ speedup while reducing FID by 0.33, indicating enhanced image quality. On the COCO-30k, we observed a 7$\times$ acceleration coupled with a notable FID reduction of 2.17.
academic
Poda de Tokens para Almacenamiento en Caché Mejorado: Aceleración de 9 Veces en Stable Diffusion de Forma Gratuita
Stable Diffusion ha logrado un éxito significativo en el campo de la generación de imágenes a partir de texto, pero su mecanismo iterativo de desruido conlleva altos costos computacionales y velocidades de generación lentas. Aunque métodos como el almacenamiento en caché de características han recibido atención por su efectividad y simplicidad, la simple reutilización de características calculadas en pasos de tiempo anteriores hace que las características en pasos de tiempo adyacentes se vuelvan similares, reduciendo la dinamicidad de las características a lo largo del tiempo y afectando finalmente la calidad de las imágenes generadas. Este artículo propone un método de poda de tokens consciente de la dinámica (DaTo) para abordar las limitaciones del almacenamiento en caché de características. DaTo poda selectivamente tokens con menor dinamicidad, permitiendo que solo tokens altamente dinámicos participen en capas de autoatención, extendiendo así la dinamicidad de características entre pasos de tiempo. Cuando se aplica a Stable Diffusion en ImageNet, el método logra una aceleración de 9×, mientras que el FID se reduce en 0.33; en COCO-30k se observa una aceleración de 7×, con una reducción significativa de FID de 2.17.
Los modelos de difusión han logrado avances significativos en el campo de la modelación generativa, con aplicaciones generalizadas en generación de imágenes a partir de texto, generación de video y otras tareas. Sin embargo, el mecanismo iterativo de desruido de los modelos de difusión conlleva enormes costos computacionales y velocidades de generación lentas, limitando sus aplicaciones más amplias.
Los métodos actuales para acelerar modelos de difusión incluyen principalmente:
Reducción del número de pasos de muestreo: Como muestreadores rápidos tipo DDIM
Reducción del costo computacional por paso: Incluyendo destilación de conocimiento, poda estructural, cuantificación, poda de tokens y almacenamiento en caché de características
Entre estos, el almacenamiento en caché de características es ampliamente popular por su efectividad y simplicidad, almacenando características calculadas en pasos de tiempo anteriores y reutilizándolas en pasos de tiempo posteriores. Sin embargo, la reutilización de características obliga a que las características en diferentes pasos de tiempo tengan valores similares, reduciendo la dinamicidad de las características a lo largo de los pasos de tiempo, dañando el proceso de difusión original y reduciendo así la calidad de generación.
El artículo descubre a través de experimentos que, en comparación con Stable Diffusion original, los modelos que utilizan almacenamiento en caché de características muestran diferencias de características significativamente reducidas entre pasos de tiempo adyacentes. Esto plantea una pregunta clave: ¿Es posible mantener la dinamicidad correcta de características mientras se realiza el almacenamiento en caché de características?
Propone el método de poda de tokens consciente de la dinámica (DaTo): Al podar tokens cuya dinamicidad ha sido reducida por el almacenamiento en caché de características en diferentes pasos de tiempo, y recuperarlos con tokens de gran dinamicidad, evita la degradación de la calidad de generación causada por el almacenamiento en caché de características.
Diseña una estrategia de búsqueda evolutiva: Propone buscar a través de métodos evolutivos la estrategia óptima de almacenamiento en caché de características y poda de tokens, liberando completamente el potencial de DaTo.
Logra mejoras de rendimiento significativas: Experimentos extensos en Stable Diffusion y SDXL demuestran que sin entrenamiento ni datos adicionales, se puede lograr una aceleración de hasta 9× en Stable Diffusion sin pérdida de calidad de generación.
La tarea de este artículo es acelerar significativamente el proceso de inferencia del modelo Stable Diffusion mientras se mantiene la calidad de generación de imágenes. La entrada es un mensaje de texto, la salida es la imagen correspondiente de alta calidad, y la restricción es que no se requiere reentrenamiento del modelo.
Puntuación de Diferencia de Ruido Temporal: Para el paso de tiempo t, se calcula la diferencia absoluta de los resultados de los dos pasos de tiempo adyacentes anteriores:
Selección de Tokens Basada en Parches: Se divide la imagen en parches no superpuestos de s×s, seleccionando en cada parche el token con el DiffScore más alto como token base.
Alineación CFG:
Para manejar la guía libre de clasificador (CFG), se copian las posiciones de tokens base de la generación condicional a la generación incondicional:
Relación de poda r limitada a {0.3, 0.4, 0.5, 0.6, 0.7}
Algoritmo de Búsqueda Evolutiva:
Se utiliza el algoritmo de optimización multiobjetivo NSGA-II, con objetivos de optimización que incluyen:
Latencia de inferencia
Calidad de generación (FID)
El proceso de búsqueda incluye operaciones evolutivas estándar como selección, cruce y mutación, obteniendo finalmente la estrategia óptima consciente de pasos F(t).
Mecanismo de Recuperación de Dinamicidad: Al podar selectivamente tokens de baja dinamicidad y recuperarlos con tokens de alta dinamicidad, se recupera exitosamente la distribución de dinamicidad de características dañada por el almacenamiento en caché de características.
Marco Unificado de Caché-Poda: Se combina el almacenamiento en caché de características y la poda de tokens en un marco independiente del entrenamiento, realizando reutilización de información a nivel de tiempo y token.
Búsqueda de Estrategia Adaptativa: Para las diferentes características de redundancia en diferentes pasos de tiempo, se propone un método para buscar automáticamente la profundidad de caché óptima y la relación de poda.
Efectividad de DiffScore:
En diferentes configuraciones de caché y relaciones de poda, el uso de DiffScore mejora consistentemente las puntuaciones de FID, demostrando la efectividad de la puntuación de diferencia de ruido temporal.
Impacto de la Alineación CFG:
Con el aumento de la relación de poda, los beneficios de la configuración de alineación CFG aumentan gradualmente, con mejoras de FID que van desde 13 puntos hasta 30 puntos en relaciones de poda altas (0.7).
Recuperación de Dinamicidad de Características: DaTo recupera exitosamente la distribución de diferencias de características a un nivel cercano al Stable Diffusion original
Efecto de Codificación Dispersa: La poda de tokens moderada y el almacenamiento en caché de características pueden mejorar el rendimiento del modelo enfocándose en características clave
Generalización de Estrategia: La estrategia buscada en SD v1.5 se desempeña bien en SDXL y otros conjuntos de datos
El artículo cita 46 referencias relacionadas, cubriendo múltiples campos relacionados como modelos de difusión, reducción de tokens y mecanismos de caché, proporcionando una base teórica sólida y puntos de referencia de comparación para esta investigación.
Evaluación General: Este es un artículo de alta calidad en visión por computadora que propone una solución innovadora a un problema importante en la aceleración de modelos de difusión. El diseño del método es ingenioso, la evaluación experimental es completa y el valor práctico es destacado. Aunque hay cierta insuficiencia en la profundidad del análisis teórico, sus contribuciones prácticas e impacto merecen reconocimiento.