Yunqing Zhao * , Keshigeyan Chandrasegaran * , Milad Abdollahzadeh * , Ngai -Man Cheung †
Universidad Tecnológica y Diseño de Singapur
Neurips 2022, Ernest N. Morial Convention Center, Nueva Orleans, LA, EE. UU. * Contribución igual
[Página del proyecto] [póster] [diapositivas] [documento]
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.

Alternativamente, se puede crear y activar un entorno de condena adecuado llamado adam con:
git clone https://github.com/yunqing-me/AdAM.git
conda env create -f environment.yml
conda activate adam
cd AdAM
Analizamos la relación de dominio de origen ↦ en la Sec. 3 (y complementario). Consulte a continuación los pasos relacionados en este análisis.
Paso 1. git clone https://github.com/rosinality/stylegan2-pytorch.git
Paso 2. Muévete ./visualization a ./stylegan2-pytorch
Paso 3. Luego, consulte el código de visualización en ./visualization .
Prepare el conjunto de datos de capacitación de pocos disparos utilizando el formato LMDB
Por ejemplo, descargue el conjunto de objetivos de 10 disparos, Babies (Link) y AFHQ-Cat (enlace), y organice su directorio de la siguiente manera:
10-shot-{babies/afhq_cat}
└── images
└── image-1.png
└── image-2.png
└── ...
└── image-10.png
Luego, transforma en 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 el conjunto de datos de destino para la evaluación
Por ejemplo, descargue todo el conjunto de datos, Babies (enlace) y AFHQ-Cat (enlace), y organice su directorio de la siguiente manera:
entire-{babies/afhq_cat}
└── images
└── image-1.png
└── image-2.png
└── ...
└── image-n.png
Luego, transformar en formato LMDB para la evaluación
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}]
Descargue el modelo GAN previamente en FFHQ desde aquí. Luego, guárdelo a ./_pretrained/style_gan_source_ffhq.pt .
Generar aleatoriamente la entrada de ruido gaussiana (la misma dimensión que la entrada al generador) Para un sondeo de importancia, guárdelos a ./_noise/ :
python noise_generation.py
bash _bash_importance_probing.sh Podemos obtener la información estimada de Fisher de los núcleos modulados y se guardará en ./_output_style_gan/args.exp/checkpoints/filter_fisher_g.pt y ./_output_style_gan/args.exp/checkpoints/filter_fisher_d.pt
# you can tune hyperparameters here
bash _bash_main_adaptation.sh La dinámica de entrenamiento y los resultados de la evaluación se mostrarán en wandb
Observamos que, idealmente, el paso 1 y el paso 2. Se pueden combinar juntos. Aquí, por simplicidad usamos dos pasos como demostración.
Use Babies y AfHQ-CAT como ejemplo: descargue imágenes desde aquí, luego mueva la carpeta descomprimida a ./cluster_center , luego consulte el Evaluator en AdAM_main_adaptation.py .
La información estimada de Fisher (es decir, la salida de sondeo de importancia) y los pesos (es decir, la salida de la adaptación principal correspondiente a la Figura 4 en el documento principal) se puede encontrar aquí.
Proporcionamos las imágenes y modelos objetivo de 10 disparos utilizados en nuestro papel principal y suplementarios. También puede adaptarse a otras imágenes seleccionadas por usted mismo.
Fuente GaN:
Muestras de objetivos: enlace
Siga la parte del experimento en este repositorio y puede producir sus resultados personalizados.
Si encuentra útil este proyecto en su investigación, considere citar nuestro documento:
@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}
}
Mientras tanto, también demostramos una investigación relevante que tiene como objetivo identificar y eliminar el conocimiento incompatible (Rick, CVPR-2023) para la generación de imágenes de pocos disparos:
@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}
}
Apreciamos la maravillosa implementación base de Stylegan-V2 de @Rosality. Agradecemos a @mseitzer, @ojha y @richzhang por sus implementaciones en FID setters e intra-LPIPS.
También agradecemos la útil herramienta de capacitación y evaluación utilizada en este trabajo, de @miaoyun.