⚡А вот и наша статья подоспела - 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/OJ4VP5y43rCmBxAC_FcwjGvmWewgputbVnlyb6J2U0yP9X1gb1akrXFbI1QWGNDZS3RZW45Hlm32rvt26oPvMLJwrIZ1brwJnbQKP6E3Q8JDGnUJMQJ1QKeZeXd9L3w7z_qo-g7EXI1kadSU9s3E0OMg8q2QSZrXnGEYnqyc9HCL_6LANz-WFwekHB3NLzvHEdZ9afjoSenQUJwxylTq8RHOVB7HvXymRLv-0XEaTFDKBnxtyzCDxcssNoukJvwtNfAo--5J5JALR0fsek0jRmDp1hm4QuMZqFVQ4xVpx2MNu0Dc95MPq_IaJhN6nfPnnfvPJ9QP3MfZ_GgS2hIUhw.jpg)
![](https://photo.group-telegram.com/u/cdn4.cdn-telegram.org/file/OW60FnaLC4hpLqEXYneV2g5MmJjhh-sZ0DUdqVYhFN5Xz2LTyamvdU3LZv6N0exyGXFAf_zadGh8cirqLOLAkoJamsjL8JcOBI2P2L7Il66weKMOjNx-dqyK-l-Pr4iv0rNAMthvNXNP4mK20RbOSRkHhvtvwm5YxQe1I-tEVIYDfg8ekERRLdszVNtBIpcVS4sa6iffOwDMO_sv2j-MsfQ3wNmATdhmkm3SMMb5ooFz9unxplkcFiWXYWqnZCZsAewzrld8SRclpAwH6L7X2tOTt2m2A1MsIPjVUR5SStAvWqsgVgfXIDemNsteDEvur_WKXwM4Sru-NOZnFbzLrw.jpg)
![](https://photo.group-telegram.com/u/cdn4.cdn-telegram.org/file/gQG4ZV02urRJaCH9JVQB6beo5daKyg2GvywBfo7wp6uWO84OeIe9BsxWLBrXvke9r8TX8VUcqCOLIwd2_EoIGg-8MAExq1UOHbd1mlySSh6zfyUUPx5OyZvnUqvP5swSSevdPtBlAFKKTtJyoFFqIrWr5Jzh37hA5KFxXgQiT6ATcOA4lKmcpmAVpW77vOYiK7aP6DK1jssgowg3t7d5LmDYMooiPColBQrXgVdrFznppFK_9SpwRuYETQFNZ5i9GWte6NiIqECWp7UMTA7Lpkn1UNwyJz0ZkQlbxhPBWtogHevIKZxZ_VccCmWwFzF0mPpnpV6M7z2XRf2ikxuRVg.jpg)
![](https://photo.group-telegram.com/u/cdn4.cdn-telegram.org/file/DaSf2eNXGwZH5P7qc5xYeSjHzV2O6R1JKfU2Ic0XmuR-GgtjQJo6j2xKjbsh-fvM_tDbdLffZ-UkxGpKv7DV-ORKtNVeSVpiaLA6dcRfNCcfEWUo_SI3jfoSY9Ss5i19DF9gJeXFqGx_ZIqGJ3PE2tq06xQOFufgj_pJqL4G4XF3dgnIc4HqRzmnT8iIbkByo_8bht-Cq7VLraizxg1n49cyepOPmgmAEIdZ9NaSODgRqk7nDilaJJyNP9wwlbuP0QSKKol8ntpb9dxjEnmFxCD-dbdxBClgR5nFTSKxCHuLaBQN249THs3u4IbcbBcSe6YjwR3ZQO5XWOpy5pBQUw.jpg)
Share with your friend now:
group-telegram.com/ai_newz/2333