⚡А вот и наша статья подоспела - Cache Me if You Can: Accelerating Diffusion Models through Block Caching
Как я уже упоминал, наша команда в Meta GenAI занимается ускорением диффузии. В этой статье мы ускоряем генерацию изображений до x1.8 раза без потери качества с помощью умного кеширования во время инференса.
Как?
Для генерации одной картинки обычно требуется сделать много прогонов через модель Unet, например 50 DDIM шагов. Мы тут подметили, что активации Spatial-Attention блоков довольно гладко меняются от шага к шагу, и паттерн их изменения не зависит от промпта. Естественно, мы подумали, почему бы не кешировать фичи тех блоков, которые меняются наиболее медленно и пересчитывать их только раз в несколько шагов. Понт в том, что львиная доля всех вычислений происходит именно в attention блоках, поэтому пропуская их вычисления хотя бы на некоторых шагах, мы сильно ускоряем генерацию.
Все блоки разные, и их активации меняются с разной скоростью. Поэтому мы построили графики изменений активаций для каждого блока (усреднили по 64 запросам) и использовали их чтобы автоматически найти когда и какие блоки можно кешировать, и как долго должен жить кеш для каждого из блоков.
Чтобы убрать мелкие артифакты после кеширования, мы дополнительно обучаем time-dependent scale и shift параметры для каждого выходнрго канала кешируемых блоков. Это помогает сгладить разницу распределений между "честно посчитанными" фичами и закеширвоанными.
В итоге, получили x1.5-1.8 ускорение, причем FID скор даже улучшился после применения кеширования. А результаты Human Eval показали, что при фиксированном времени генерации модель с кешированием выдает более качественные картинки чем бейзлайн.
На каких архитектурах тестировали:
- LDM 512x512 (та же архитектура как у SD 1.5, но натренированная нами внутри GenAI)
- Наша Emu 768x768 с 2.7B параметров.
То есть метод гибок и может подстраиваться под модели разных размеров, причем расписание кеширования разных блоков строится автоматически. Взлетит и на SDXL тоже.
Статья на Arxiv
@ai_newz
Как я уже упоминал, наша команда в Meta GenAI занимается ускорением диффузии. В этой статье мы ускоряем генерацию изображений до x1.8 раза без потери качества с помощью умного кеширования во время инференса.
Как?
Для генерации одной картинки обычно требуется сделать много прогонов через модель Unet, например 50 DDIM шагов. Мы тут подметили, что активации Spatial-Attention блоков довольно гладко меняются от шага к шагу, и паттерн их изменения не зависит от промпта. Естественно, мы подумали, почему бы не кешировать фичи тех блоков, которые меняются наиболее медленно и пересчитывать их только раз в несколько шагов. Понт в том, что львиная доля всех вычислений происходит именно в attention блоках, поэтому пропуская их вычисления хотя бы на некоторых шагах, мы сильно ускоряем генерацию.
Все блоки разные, и их активации меняются с разной скоростью. Поэтому мы построили графики изменений активаций для каждого блока (усреднили по 64 запросам) и использовали их чтобы автоматически найти когда и какие блоки можно кешировать, и как долго должен жить кеш для каждого из блоков.
Чтобы убрать мелкие артифакты после кеширования, мы дополнительно обучаем time-dependent scale и shift параметры для каждого выходнрго канала кешируемых блоков. Это помогает сгладить разницу распределений между "честно посчитанными" фичами и закеширвоанными.
В итоге, получили x1.5-1.8 ускорение, причем FID скор даже улучшился после применения кеширования. А результаты Human Eval показали, что при фиксированном времени генерации модель с кешированием выдает более качественные картинки чем бейзлайн.
На каких архитектурах тестировали:
- LDM 512x512 (та же архитектура как у SD 1.5, но натренированная нами внутри GenAI)
- Наша Emu 768x768 с 2.7B параметров.
То есть метод гибок и может подстраиваться под модели разных размеров, причем расписание кеширования разных блоков строится автоматически. Взлетит и на SDXL тоже.
Статья на Arxiv
@ai_newz
group-telegram.com/ai_newz/2330
Create:
Last Update:
Last Update:
⚡А вот и наша статья подоспела - Cache Me if You Can: Accelerating Diffusion Models through Block Caching
Как я уже упоминал, наша команда в Meta GenAI занимается ускорением диффузии. В этой статье мы ускоряем генерацию изображений до x1.8 раза без потери качества с помощью умного кеширования во время инференса.
Как?
Для генерации одной картинки обычно требуется сделать много прогонов через модель Unet, например 50 DDIM шагов. Мы тут подметили, что активации Spatial-Attention блоков довольно гладко меняются от шага к шагу, и паттерн их изменения не зависит от промпта. Естественно, мы подумали, почему бы не кешировать фичи тех блоков, которые меняются наиболее медленно и пересчитывать их только раз в несколько шагов. Понт в том, что львиная доля всех вычислений происходит именно в attention блоках, поэтому пропуская их вычисления хотя бы на некоторых шагах, мы сильно ускоряем генерацию.
Все блоки разные, и их активации меняются с разной скоростью. Поэтому мы построили графики изменений активаций для каждого блока (усреднили по 64 запросам) и использовали их чтобы автоматически найти когда и какие блоки можно кешировать, и как долго должен жить кеш для каждого из блоков.
Чтобы убрать мелкие артифакты после кеширования, мы дополнительно обучаем time-dependent scale и shift параметры для каждого выходнрго канала кешируемых блоков. Это помогает сгладить разницу распределений между "честно посчитанными" фичами и закеширвоанными.
В итоге, получили x1.5-1.8 ускорение, причем FID скор даже улучшился после применения кеширования. А результаты Human Eval показали, что при фиксированном времени генерации модель с кешированием выдает более качественные картинки чем бейзлайн.
На каких архитектурах тестировали:
- LDM 512x512 (та же архитектура как у SD 1.5, но натренированная нами внутри GenAI)
- Наша Emu 768x768 с 2.7B параметров.
То есть метод гибок и может подстраиваться под модели разных размеров, причем расписание кеширования разных блоков строится автоматически. Взлетит и на SDXL тоже.
Статья на Arxiv
@ai_newz
Как я уже упоминал, наша команда в Meta GenAI занимается ускорением диффузии. В этой статье мы ускоряем генерацию изображений до x1.8 раза без потери качества с помощью умного кеширования во время инференса.
Как?
Для генерации одной картинки обычно требуется сделать много прогонов через модель Unet, например 50 DDIM шагов. Мы тут подметили, что активации Spatial-Attention блоков довольно гладко меняются от шага к шагу, и паттерн их изменения не зависит от промпта. Естественно, мы подумали, почему бы не кешировать фичи тех блоков, которые меняются наиболее медленно и пересчитывать их только раз в несколько шагов. Понт в том, что львиная доля всех вычислений происходит именно в attention блоках, поэтому пропуская их вычисления хотя бы на некоторых шагах, мы сильно ускоряем генерацию.
Все блоки разные, и их активации меняются с разной скоростью. Поэтому мы построили графики изменений активаций для каждого блока (усреднили по 64 запросам) и использовали их чтобы автоматически найти когда и какие блоки можно кешировать, и как долго должен жить кеш для каждого из блоков.
Чтобы убрать мелкие артифакты после кеширования, мы дополнительно обучаем time-dependent scale и shift параметры для каждого выходнрго канала кешируемых блоков. Это помогает сгладить разницу распределений между "честно посчитанными" фичами и закеширвоанными.
В итоге, получили x1.5-1.8 ускорение, причем FID скор даже улучшился после применения кеширования. А результаты Human Eval показали, что при фиксированном времени генерации модель с кешированием выдает более качественные картинки чем бейзлайн.
На каких архитектурах тестировали:
- LDM 512x512 (та же архитектура как у SD 1.5, но натренированная нами внутри GenAI)
- Наша Emu 768x768 с 2.7B параметров.
То есть метод гибок и может подстраиваться под модели разных размеров, причем расписание кеширования разных блоков строится автоматически. Взлетит и на SDXL тоже.
Статья на Arxiv
@ai_newz
BY эйай ньюз
![](https://photo.group-telegram.com/u/cdn4.cdn-telegram.org/file/Jmj0f3JFti4r3Djyc-WfoUOqul_IyGfbZ19RZydhgBmf130Jk3-ypgTCnqGwS7Ny-vkGIYWi9Ql8ywzD9_xPzvD-bHALWWuZOYhzOpNtK3T9BLuDMbh6dgR8D3Y5Vnd-Xal2GCLMrHqnlIX5JRm7pwRyhzIPaVe0anBLdIfAQMC07HLnX6KGLMV3fUgBX6p2tvuU_s2kmJ2fbhM3MOW0S1dn6GSY85XLUparfBrhLcOv1bYONU3MAZpDhqMqr2l7JkY_F-EkVmr_6h3ogC1zAk3mKPLDCfaLAvomKvfw8Mefj9uaCioS2QyRz03PUbhJPkryk9evtWyCNi1owjujGg.jpg)
![](https://photo.group-telegram.com/u/cdn4.cdn-telegram.org/file/hspb7NPSdH5UfeYRzgnxVQUAZDKcx_lbr9hLDEKEVQ54OVdcp9gjbfJApSj0_jvTfRmSLqXBCG0PXjLofrih8_18B8CuayW8bRl7k1Xm6ihfLDeR0DeJcM1Gcm_OwM_PRJYl2xOZetMlzm0vBfZ6z5V3c4we_i5oE6MPW8D2ZnAflZlMtb5x8J-gBHItxMRpI7V8nxt44sM5xPg_ygjX7qGKyPpgjfUGZVAMGktIduestoNl763_PBHEB4TpxInWq4QTWx3ox9YmYqjxd81efVQmNqvsFaGPErTWeUJY-Ukn0VKdxeB1E6RWro_JVdK5gSXf1GNDZjZGLa1-URil_A.jpg)
![](https://photo.group-telegram.com/u/cdn4.cdn-telegram.org/file/Kv30yJmeipo6YWYWarujGqwCr67FK29-y5_KLO9EltAE9r7YFmrknPCyzuJcexzdPi2i3CVeslJNOj_23CP3EK0sTRA5MkQHRU5GjaoiWZKryvjhEC9LUqSJe-D3nuQKnX_a10ZLKVl_gyr-MEI9-Cgow9hg1hDekIzERMBKOSHSSKfqZRh28knFOuxh3Cf4NOwc4KM8Gq5SzyR48K_DT9l_DPU_wAFcmrjtqdsKqKMU3SIY0FP5A0NhWBtoeVkPh9gfmKB5ycFd-pasYKYKcwk5WNyEvTY0k9Qpbn7WyM4pWOIyzABKQWfKUEONPuSWg0gsMgH-tVOD4K6cAZh4KA.jpg)
![](https://photo.group-telegram.com/u/cdn4.cdn-telegram.org/file/iongVAdrx1MekTvZeR38ezo3YpeDcJat1zglI_PeTQeeLBSUWlg1BJtioB6rOFyhYsn7DcQzx504oS4q4KWDosylqJxUAnjebv-6A-jHtJv2cFK79NG6T2TGUrncf5HDOme3l4G4lPB05VvfQIcJwCmEScM7Sy3aNeMF_LayBVphUOSVyJdB9Vs_F1v9fkwpiGtDwf75IPbIlRvq2NMOP18lLNN67IBsvVGGzr5I3Z2w5A9CSKhL-iNa8AhrZ7EfsGitrZ-bCJsYDu5FyTWsF93riQxPOB9sKGQ22XcdRluFjUkf-KV0L-dKWtjbtHaC3Hwd2lA3bL1GLcqBkI_j0g.jpg)
Share with your friend now:
group-telegram.com/ai_newz/2330