⚡А вот и наша статья подоспела - 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/2333
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/CLU99ZvE_kcIpUudV94Kkz5gFABHRCaszGkzXrzn0VvJGTqEmiyRyLOHMoryont0PhfgCP80s9ib6vuXEn9AhRjufS-AaEdB1dGarDpM-5gREc2jX-Rl34UXtr0K37CoUn4bwFCc1HhqpEbFA-85CApj1iXNfqfWc529Zh_SHeaXaeEcXb6U6VXRAy-sgqxY2duvtabn1z5vkaJlkXK9R0OiXTUI1cwSIU5IDvdcaKaTaVSD8naZoDRo3gQ7KUi-0DLSt4XZVapLcA0FRAAtd1yNfuRPXGCMZChMEbLMcDdsRHL6jy1Lzkue6oE9dAkehf6RaqZ8HLrkq4Kljam_0g.jpg)
![](https://photo.group-telegram.com/u/cdn4.cdn-telegram.org/file/vhXwatcKfETcfnwLY97bEQuS_HNkEjnS5SKakYBceI-1Zv6P6BdRncOMCo7LXav1tFVzyrZBiYs42POlw2TvMU22Y_QGwMYD8jQKVtKHzaJMCuL6S_rBfibXfffPO7skT5j7ae0PQpaT8TgAXGwy3-S4ZqSMaVH0r-ozTEhvGscLI4dFFVUGpUqmZGCFrN3pX45aT1GsiUD3sIxqlr6r69IjNzdD5upcr3L06r5EhYqfTSyYG_So4AbQ_IKBAM2z_S-v7O_cFqmAUPD7RyeWqMDYcbraXRLEJQOAX9wYkBpQ_yyrBWmqEbvcv87G-u1dECk7Nq1lBACmKchrji5dXg.jpg)
![](https://photo.group-telegram.com/u/cdn4.cdn-telegram.org/file/pBoto04oLtjrLAER7KaVvqHesD2oLnFBHQ0bWOvKsD5HNGKrStj6V4KIoyF-BBDhKxqMqQcuMfB3hMFACri4bo_7w_1z2BQgYiPy-2xxkzbsm1H-vaq5DvbQhdty4nypqcb0ckMYezai0tm93mAiF28kNfTXwsO-9utBh0fYE1ECnbG3xA5J_rTvrGzDWGsGNmE0IPo18UC7fw00SSo7O2QIZB1qTjIXSCjl00SYQjskFJAX47m-cbCiUEACvVsqnB2x2BMaiLmkvnbNDwZGWsH7KHEqw0auAuEhF83UIhT03dNSbbHNgaVCLx7SwpNlYJFDg4O9gPLK4bHrCMXH4w.jpg)
![](https://photo.group-telegram.com/u/cdn4.cdn-telegram.org/file/Pq3PBNRZeMfNnZyjHrHO7mID3Cu0r-FbUrTCL2korD8SVTuzwi_H_kqJAg8rVxjB2mwvXYwrgtH2aOaIfKtn5fkYAyh8uCEbcbszg2cF374wIL1f6JKahnPonFZRjJ7BD4XOaE_pFtWUVrVGGprTKFuyKaA7F03FyXXUdV-Vk8gKJfhfoo0JOX_kjjT12dMP6ntgAgt6CG582j79M-_u9MQO2yGiGypS4OXoQE7Myn7ubla88oS0SxfVOX-us_Y_oSS6Qn5UWDJHh0VF-ABgfb5uPA-SYn3M3H9bTxIGDUjQ6vQw3xXWfuQbUIUW7oj1AdtEXi0mEHjcGXglHYBFEw.jpg)
Share with your friend now:
group-telegram.com/ai_newz/2333