MMD-DDM
Inferência rápida em modelos de difusão de eliminação de ruído via ajuste fino de MMD
Os Modelos de Difusão com Denoising (DDMs) tornaram-se uma ferramenta popular para gerar amostras de alta qualidade a partir de distribuições de dados complexas. Esses modelos são capazes de capturar padrões e estruturas sofisticadas nos dados e podem gerar amostras altamente diversas e representativas da distribuição subjacente. No entanto, uma das principais limitações dos modelos de difusão é a complexidade da geração da amostra, uma vez que é necessário um grande número de intervalos de tempo de inferência para capturar fielmente a distribuição dos dados. Neste artigo, apresentamos o MMD-DDM, um novo método para amostragem rápida de modelos de difusão. Nossa abordagem é baseada na ideia de usar a Discrepância Média Máxima (MMD) para ajustar a distribuição aprendida com um determinado orçamento de intervalos de tempo. Isto permite que o modelo ajustado melhore significativamente o compromisso velocidade-qualidade, aumentando substancialmente a fidelidade em regimes de inferência com poucos passos ou, equivalentemente, reduzindo o número necessário de passos para atingir uma fidelidade alvo, abrindo assim o caminho para uma fidelidade mais adoção prática de modelos de difusão em uma ampla gama de aplicações.
Para ajustar um modelo de difusão pré-treinado usando nossa estratégia MMD-DDM proposta, baixe os modelos pré-treinados e ajuste o caminho em runners/diffusion.py, ou use modelos presentes em /function/ckpt_util.py e execute o comando:
python main.py --config {DATASET}.yml --timesteps {num_timesteps (e.g 5)} --exp {PROJECT_PATH} --train
Para obter uma amostra da imagem gerada a partir do modelo ajustado, ajuste o caminho na função test_FID em runners/diffusion.py com seu modelo recém-treinado e execute:
python main.py --config {DATASET}.yml --timesteps {num_timesteps (e.g 5)} --test_FID
Se você achar o MMD-DDM útil em sua pesquisa, considere citar:
@article { aiello2023fast ,
title = { Fast Inference in Denoising Diffusion Models via MMD Finetuning } ,
author = { Aiello, Emanuele and Valsesia, Diego and Magli, Enrico } ,
journal = { arXiv preprint arXiv:2301.07969 } ,
year = { 2023 }
}
Este repositório é baseado na implementação oficial do DDIM: https://github.com/ermongroup/ddim
Se você tiver alguma dúvida, fique à vontade para abrir uma edição ou entre em contato conosco pelo e-mail [email protected]
? ⛏️?
modelos pré-treinados serão lançados em breve!