tgoop.com/quant_prune_distill/144
Last Update:
Adversarial Diffusion Distillation
[Статья][Блог][Код]
Заветным желанием производителей и пользователей диффузионных моделей является генерация в один шаг с сохранением высокого качества. В недавнее время появилось множество работ, где были предложены решения той иной степени успешности.
Ко всей движухе подключились метры из Stability-AI и выкатили SDXL Turbo (при выборе названия явно вдохновлялись OpenAI), генеративную модель достигающую довольно хорошего качества генерации в один или несколько шагов, обученную посредством Adversarial Diffusion Distillation, о котором будет рассказано ниже.
Метод
В настоящий момент, наиболее успешные подходы по одношаговой или малошаговой генерации сводятся к progressive/consistency distillation или старому доброму GAN. И в данной работе авторы по существу совместили дистилляцию и адверсариальное обучение.
За основу берут предобученные SD v2.1 и SDXL.
Дистилляционный лосс представляет собой взвешенный MSE лосс между предсказаниями незашумленной картинки сети-ученика и сети учителя, взвешенный с некоторым коэффициентом, зависящим от шага зашумления (например \alpha_t - весом исходного сигнала в зашумленном сэмпле).
Адверсиальный лосс - hinge loss c R1 gradient penalty для дискриминатора. Утверждается что R1 регуляризация особенное полезна при обучении в высоком разрешении. Дискриминатор инициализируют весами одного из современных feature extractor-ов - DINO v1/v2, CLIP. Дискриминатор обуславливается на текстовый эмбеддинг промпта и картиночной эмбеддинг незашумленной картинки.
BY КПД
Share with your friend now:
tgoop.com/quant_prune_distill/144