⚡А вот и наша статья подоспела - 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/Lkc8qaIaN-V6-jxbfRYgdkH7trfFRtmlBEH8MpcramZsks6PdVu-RMXRlzcOCSagTES52JcdeMS52lECFvFQxI7Ou2Ia7Xv4SGSr_enOZh6Sk8h-yIqm0zIpVExOrpBqmPmWHGjZsNRqyHeUw5n8yAkfS9xG2gKN5YVlVBE0LJ--cr23ZyxHQE9rhQe5EtzjL8qS6YT-N8aTrC7NqSl_CLAYjt8-CxEQc7mMZuadTON7Zo84rBA5-oRHcp2AqnjwWZNO_XZtmNE9bdkz-V0-GbYLdBPA0e0OxmXeA9cj9Ekh30iTiYPabGVDg9ylylvcqajYS2WVwjsWPaUXRQsn8g.jpg)
![](https://photo.group-telegram.com/u/cdn4.cdn-telegram.org/file/jlzCADI1D_afY7bUoPidL8u_FGI7eEdgdpNqBEhyBbileAP-1kvovDqTYopuo8E9ZOgIIJy-qYzhdv4Zh93lgFY9vTbyG31XPeThPqkZ6JQaso6ltpdEvwOIJ1_SIWkEHDTjZuYrVnr-PPPCJxOjeZ5AVRg9JA7WfMFxLEapunCTFaY7hMHmWIlaDLkbvDbz_5saP3rMNdOjaUiLF_7ZomwVgHSVMEQ1UXEvcYWQDM2SOMTlLJpkDTpCudtbzyYYpeGN-Afu2jREWoBbiuFPGW4GEp4TpI2vHqElkTWFPiNjTMF1yofNeAbm3qOP2VHFKuGR6eWPcwThnv64tqCSsg.jpg)
![](https://photo.group-telegram.com/u/cdn4.cdn-telegram.org/file/gQ174V6uRGVmiY3lM9TCzCB4eUERbwZriVJDVS6X6hAj1L8ZTawm7HMrelW7HimFs5vn3f7kluPSRQ2B-ay_wjHYLMNg8vrhIDuTa7fDLgdYj8JIAQxaj4MxR3nJF6eNQLdrBlgSo_jp1wJebQt4BzILaWgQa1UYUEfBASkkCeYtYkNpTf0sApzzOwQ5_b011tFjDKx13FuaugTyU8q3SG6o7m4UGJ4I2qBQdmbHhuTER_6S9sjM0DPvq7flSJmX1AEBBzjPTwKqQ8XAjcZQn4bi0-QsD_hfMTDrygRa-I-d2azj413azOTQF-1mCXxbspfd3mx5xGW1egqmEf4Jfw.jpg)
![](https://photo.group-telegram.com/u/cdn4.cdn-telegram.org/file/UzPZF1JmGBm4v6TLdKCTbOmJqWJEtbat1NGgDcuGXSLthY8qS75l5bmjdjAcIwRpH0Q4NyR5hiVkOSoMaLLurT54Xw1jhzFcWVE_urY3ybQABFakJsChtmAV6FUR18vqWKF5nS62uZe6J4hDO2ojXLtYw8VruL0aaMn8beY027AF-KUnLjNj0q1_StECkpNGBj1jNvsK3kbU4XkioQNMsGxyitlZGkgxM2oTTOUDCCj8xTTCYUNTfOmZEl8JwJhwxSFuqPx3xwat5SILik4bl5weBf9VCQmdFx3fv-dIbGcmtA4M_Kg_WzJ4UAVC2TEIHJJHUZduUj0_CasbkKmbrQ.jpg)
Share with your friend now:
group-telegram.com/ai_newz/2330