ChatPaper.aiChatPaper

Cache Me If You Can: Accelerare i Modelli di Diffusione attraverso il Block Caching

Cache Me if You Can: Accelerating Diffusion Models through Block Caching

December 6, 2023
Autori: Felix Wimbauer, Bichen Wu, Edgar Schoenfeld, Xiaoliang Dai, Ji Hou, Zijian He, Artsiom Sanakoyeu, Peizhao Zhang, Sam Tsai, Jonas Kohler, Christian Rupprecht, Daniel Cremers, Peter Vajda, Jialiang Wang
cs.AI

Abstract

I modelli di diffusione hanno recentemente rivoluzionato il campo della sintesi di immagini grazie alla loro capacità di generare immagini fotorealistiche. Tuttavia, uno dei principali svantaggi dei modelli di diffusione è che il processo di generazione delle immagini è costoso. Una grande rete immagine-immagine deve essere applicata molte volte per affinare iterativamente un'immagine partendo da rumore casuale. Sebbene molti lavori recenti propongano tecniche per ridurre il numero di passaggi necessari, generalmente trattano la rete di denoising sottostante come una scatola nera. In questo lavoro, investigiamo il comportamento degli strati all'interno della rete e scopriamo che 1) l'output degli strati cambia in modo fluido nel tempo, 2) gli strati mostrano schemi distinti di cambiamento e 3) il cambiamento da un passaggio all'altro è spesso molto piccolo. Ipotesizziamo che molti calcoli degli strati nella rete di denoising siano ridondanti. Sfruttando ciò, introduciamo il caching a blocchi, in cui riutilizziamo gli output dei blocchi di strati dei passaggi precedenti per accelerare l'inferenza. Inoltre, proponiamo una tecnica per determinare automaticamente gli schemi di caching in base ai cambiamenti di ciascun blocco nel tempo. Nei nostri esperimenti, dimostriamo attraverso FID, valutazione umana e analisi qualitativa che il Block Caching consente di generare immagini con una qualità visiva superiore a parità di costo computazionale. Lo dimostriamo per diversi modelli all'avanguardia (LDM e EMU) e risolutori (DDIM e DPM).
English
Diffusion models have recently revolutionized the field of image synthesis due to their ability to generate photorealistic images. However, one of the major drawbacks of diffusion models is that the image generation process is costly. A large image-to-image network has to be applied many times to iteratively refine an image from random noise. While many recent works propose techniques to reduce the number of required steps, they generally treat the underlying denoising network as a black box. In this work, we investigate the behavior of the layers within the network and find that 1) the layers' output changes smoothly over time, 2) the layers show distinct patterns of change, and 3) the change from step to step is often very small. We hypothesize that many layer computations in the denoising network are redundant. Leveraging this, we introduce block caching, in which we reuse outputs from layer blocks of previous steps to speed up inference. Furthermore, we propose a technique to automatically determine caching schedules based on each block's changes over timesteps. In our experiments, we show through FID, human evaluation and qualitative analysis that Block Caching allows to generate images with higher visual quality at the same computational cost. We demonstrate this for different state-of-the-art models (LDM and EMU) and solvers (DDIM and DPM).
PDF220December 15, 2024