Yunqing Zhao * , Keshigeyan Chandrasegaran * , Milad Abdollahzadeh * , Ngai - Man Cheung †
Université de technologie et de conception de Singapour
Neirips 2022, Ernest N. Morial Convention Center, Nouvelle-Orléans, LA, États-Unis. * Contribution égale
[Page du projet] [Affiche] [Diapositives] [Papier]
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.

Alternativement, un environnement conda approprié nommé adam peut être créé et activé avec:
git clone https://github.com/yunqing-me/AdAM.git
conda env create -f environment.yml
conda activate adam
cd AdAM
Nous analysons la relation de domaine de la source ↦ dans la SEC. 3 (et supplémentaire). Voir ci-dessous pour les étapes connexes de cette analyse.
Étape 1. git clone https://github.com/rosinality/stylegan2-pytorch.git
Étape 2. Déplacer ./visualization vers ./stylegan2-pytorch
Étape 3. Ensuite, reportez-vous au code de visualisation dans ./visualization .
Préparez l'ensemble de données de formation à quelques coups à l'aide du format LMDB
Par exemple, téléchargez l'ensemble cible à 10 coups, Babies (lien) et AFHQ-Cat (lien) et organisez votre répertoire comme suit:
10-shot-{babies/afhq_cat}
└── images
└── image-1.png
└── image-2.png
└── ...
└── image-10.png
Ensuite, transformez au format 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}]
Préparez l'intégralité de l'ensemble de données cible pour l'évaluation
Par exemple, téléchargez l'ensemble de données, Babies (liens) et AFHQ-Cat (lien) et organisez votre répertoire comme suit:
entire-{babies/afhq_cat}
└── images
└── image-1.png
└── image-2.png
└── ...
└── image-n.png
Ensuite, transformez au format LMDB pour l'évaluation
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}]
Téléchargez le modèle GAn pré-entraîné sur FFHQ à partir d'ici. Ensuite, enregistrez-le sur ./_pretrained/style_gan_source_ffhq.pt .
Générez de manière aléatoire l'entrée de bruit gaussien (la même dimension que l'entrée au générateur) pour le sondage d'importance, enregistrez-les sur ./_noise/ :
python noise_generation.py
bash _bash_importance_probing.sh Nous pouvons obtenir les informations de Fisher estimées des noyaux modulés et il sera enregistré dans ./_output_style_gan/args.exp/checkpoints/filter_fisher_g.pt et ./_output_style_gan/args.exp/checkpoints/filter_fisher_d.pt
# you can tune hyperparameters here
bash _bash_main_adaptation.sh La dynamique de formation et les résultats de l'évaluation seront présentés sur wandb
Nous notons que, idéalement, l'étape 1. Et l'étape 2. Peut être combinée ensemble. Ici, pour simplifier, nous utilisons deux étapes comme démonstration.
Utilisez des bébés et AFHQ-CAT comme exemple: Téléchargez des images à partir d'ici, puis déplacez le dossier Unzipped dans ./cluster_center , puis reportez-vous à Evaluator dans AdAM_main_adaptation.py .
Les informations estimées de Fisher (c'est-à-dire la sortie de sondage d'importance) et les poids (c'est-à-dire la sortie de l'adaptation principale correspondant à la figure 4 dans le papier principal) peuvent être trouvées ici.
Nous fournissons toutes les images et modèles cibles à 10 coups utilisés dans notre article principal et notre supplément. Vous pouvez également vous adapter à d'autres images sélectionnées par vous-même.
Source Gan:
Échantillons cibles: lien
Suivez la partie de l'expérience dans ce dépôt et vous pouvez produire vos résultats personnalisés.
Si vous trouvez ce projet utile dans vos recherches, veuillez envisager de citer notre article:
@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}
}
Pendant ce temps, nous démontrons également une recherche pertinente qui vise à identifier et à supprimer les connaissances incompatibles (Rick, CVPR-2023) pour la génération d'images à quelques coups:
@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}
}
Nous apprécions la merveilleuse implémentation de base de Stylegan-V2 de @Rosinality. Nous remercions @mseitzer, @ojha et @richzhang pour leurs implémentations sur le score FID et les intra-lpips.
Nous remercions également pour l'outil de formation et d'évaluation utile utilisé dans ce travail, de @miaoyun.