Yunqing Zhao * , Keshigeyan Chandrasegaran * , Milad Abdollahzadeh * , Ngai -Man Cheung †
Universidade de Tecnologia e Design de Cingapura
Neurips 2022, Ernest N. Morial Convention Center, Nova Orleans, LA, EUA. * Igual contribuição
[Página do projeto] [Pôster] [Slides] [Paper]
In this research, we propose Adaptation-Aware Kernel Modulation (AdAM) for few-shot image generation, that aims to identify kernels in source GAN important for target adaptation.
The model can perform GAN adaptation using very few samples from target domains with different proximity to the source.

Como alternativa, um ambiente de conda adequado chamado adam pode ser criado e ativado com:
git clone https://github.com/yunqing-me/AdAM.git
conda env create -f environment.yml
conda activate adam
cd AdAM
Analisamos a relação de domínio de destino da fonte na seção. 3 (e suplementar). Veja abaixo as etapas relacionadas nesta análise.
Etapa 1. git clone https://github.com/rosinality/stylegan2-pytorch.git
Etapa 2. Mova ./visualization para ./stylegan2-pytorch
Etapa 3. Em seguida, consulte o código de visualização em ./visualization .
Prepare o conjunto de dados de treinamento de poucos tiros usando o formato LMDB
Por exemplo, faça o download do conjunto de alvos de 10 tiros, Babies (link) e AFHQ-Cat (link) e organize seu diretório da seguinte forma:
10-shot-{babies/afhq_cat}
└── images
└── image-1.png
└── image-2.png
└── ...
└── image-10.png
Em seguida, transforme no formato LMDB:
python prepare_data.py --input_path [your_data_path_of_{babies/afhq_cat}] --output_path ./_processed_train/[your_lmdb_data_path_of_{babies/afhq_cat}]
Prepare todo o conjunto de dados de destino para avaliação
Por exemplo, faça o download de todo o conjunto de dados, Babies (link) e AFHQ-Cat (link) e organize seu diretório da seguinte forma:
entire-{babies/afhq_cat}
└── images
└── image-1.png
└── image-2.png
└── ...
└── image-n.png
Em seguida, transforme o formato LMDB para avaliação
python prepare_data.py --input_path [your_data_path_of_entire_{babies/afhq_cat}] --output_path ./_processed_test/[your_lmdb_data_path_of_entire_{babies/afhq_cat}]
Faça o download do modelo GaN pré -levado no FFHQ daqui. Em seguida, salve -o em ./_pretrained/style_gan_source_ffhq.pt .
Gerar aleatoriamente a entrada de ruído gaussiano (a mesma dimensão que a entrada no gerador) para investigação de importância, salve -as em ./_noise/ :
python noise_generation.py
bash _bash_importance_probing.sh Podemos obter as informações estimadas do pescador de kernels modulados e serão salvas em ./_output_style_gan/args.exp/checkpoints/filter_fisher_g.pt e ./_output_style_gan/args.exp/checkpoints/filter_fisher_d.pt
# you can tune hyperparameters here
bash _bash_main_adaptation.sh A dinâmica de treinamento e os resultados da avaliação serão mostrados no wandb
Observamos que, idealmente, a etapa 1. E a etapa 2. Pode ser combinada. Aqui, por simplicidade, usamos duas etapas como demonstração.
Use bebês e afhq-cat como exemplo: faça o download das imagens aqui e mova a pasta descompactada para ./cluster_center e consulte o Evaluator em AdAM_main_adaptation.py .
As informações estimadas sobre Fisher (isto é, a produção de investigação de importância) e pesos (ou seja, a saída da adaptação principal correspondente à Figura 4 no papel principal) podem ser encontrados aqui.
Fornecemos todas as imagens de destino de 10 tiros e modelos usados em nosso papel principal e suplementar. Você também pode se adaptar a outras imagens selecionadas por você.
Fonte GaN:
Amostras de destino: link
Siga a parte do experimento neste repositório e você poderá produzir seus resultados personalizados.
Se você achar este projeto útil em sua pesquisa, considere citar nosso artigo:
@inproceedings{zhao2022fewshot,
title={Few-shot Image Generation via Adaptation-Aware Kernel Modulation},
author={Yunqing Zhao and Keshigeyan Chandrasegaran and Milad Abdollahzadeh and Ngai-man Cheung},
booktitle={Advances in Neural Information Processing Systems},
editor={Alice H. Oh and Alekh Agarwal and Danielle Belgrave and Kyunghyun Cho},
year={2022},
url={https://openreview.net/forum?id=Z5SE9PiAO4t}
}
Enquanto isso, também demonstramos uma pesquisa relevante que visa identificar e remover o conhecimento incompatível (Rick, CVPR-2023) para geração de imagens com poucas fotos:
@inproceedings{zhao2023exploring,
title={Exploring incompatible knowledge transfer in few-shot image generation},
author={Zhao, Yunqing and Du, Chao and Abdollahzadeh, Milad and Pang, Tianyu and Lin, Min and Yan, Shuicheng and Cheung, Ngai-Man},
booktitle={Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition},
pages={7380--7391},
year={2023}
}
Agradecemos a maravilhosa implementação básica do Stylegan-V2 da @Rosinality. Agradecemos ao @Mseitzer, @JHA e @Richzhang por suas implementações no FID Score e Intra-LPIPS.
Agradecemos também a ferramenta útil de treinamento e avaliação usada neste trabalho, da @Miaoyun.