"Effacer les concepts indésirables dans les modèles de diffusion avec préservation contradictoire" (NeurIPS 2024).
[? Papier] [? Page du projet] [? Affiche] [ Diapositives]
Contact : [email protected]
(Prise sans vergogne ?) Nos autres articles sur l'effacement/désapprentissage des concepts :
Cibles fantastiques pour l'effacement des concepts dans les modèles de diffusion et où les trouver ,
Tuan-Anh Bui, Trang Vu, Long Vuong, Trung Le, Paul Montague, Tamas Abraham, Dinh Phung
En cours de révision (Dropbox)
Effacement des concepts indésirables dans les modèles de diffusion avec préservation contradictoire ,
Tuan-Anh Bui, Long Vuong, Khanh Doan, Trung Le, Paul Montague, Tamas Abraham, Dinh Phung
NeurIPS 2024 (arXiv 2410.15618)
Suppression des concepts indésirables dans les modèles génératifs texte-image avec des invites apprenables ,
Tuan-Anh Bui, Khanh Doan, Trung Le, Paul Montague, Tamas Abraham, Dinh Phung
Préimpression (arXiv 2403.12326)
Les modèles de diffusion excellent dans la génération de contenu visuellement frappant à partir de texte, mais peuvent produire par inadvertance un contenu indésirable ou nuisible lorsqu'ils sont formés sur des données Internet non filtrées. Une solution pratique consiste à supprimer sélectivement les concepts cibles du modèle, mais cela peut avoir un impact sur les concepts restants. Des approches antérieures ont tenté d'équilibrer cela en introduisant un terme de perte pour préserver le contenu neutre ou un terme de régularisation pour minimiser les changements dans les paramètres du modèle, mais la résolution de ce compromis reste difficile. Dans ce travail, nous proposons d'identifier et de préserver les concepts les plus affectés par les changements de paramètres, appelés concepts contradictoires . Cette approche garantit un effacement stable avec un impact minimal sur les autres concepts. Nous démontrons l'efficacité de notre méthode à l'aide du modèle de diffusion stable, montrant qu'elle surpasse les méthodes d'effacement de pointe en éliminant le contenu indésirable tout en préservant l'intégrité des autres éléments non liés.
(1) L'effacement de différents concepts cibles des modèles de diffusion texte-image conduit à des impacts variables sur les concepts restants. Par exemple, la suppression de « nudité » affecte de manière significative des concepts connexes tels que « femmes » et « hommes », mais a un impact minime sur des concepts non liés tels que « camion poubelle ». (2) Les concepts neutres se situent au milieu du spectre de sensibilité, ce qui suggère qu'ils ne représentent pas de manière adéquate la capacité du modèle à être préservé. (3) De plus, le choix du concept à conserver lors de l'effacement a un impact significatif sur la capacité générative du modèle ; s’appuyer sur des concepts neutres, comme dans les travaux précédents, n’est pas une solution optimale. (4) Cela met en évidence la nécessité de méthodes adaptatives pour identifier et préserver les concepts les plus sensibles liés au concept cible en cours d'effacement, plutôt que de s'appuyer sur des concepts neutres/génériques fixes.
cd Adversarial-Erasing
wget https://huggingface.co/CompVis/stable-diffusion-v-1-4-original/resolve/main/sd-v1-4-full-ema.ckpt
mkdir models/erase
mv sd-v1-4-full-ema.ckpt models/erase/
wget https://huggingface.co/CompVis/stable-diffusion-v1-4/blob/main/unet/config.json
mv config.json models/erase/
Exigences:
pip install omegaconf
pip install pytorch-lightning==1.6.5
pip install taming-transformers-rom1504
pip install kornia==0.5.11
pip install git+https://github.com/openai/CLIP.git
pip install diffusers==0.21.4
pip install -U transformers
pip install --upgrade nudenet
pip install lpips
Nous fournissons des scripts de formation et d'évaluation pour les expériences décrites dans l'article dans les fichiers bash suivants.
Pour produire les résultats du tableau 1 de l'article (c'est-à-dire Effacement des concepts liés aux objets), exécutez la commande suivante :
bash run_imagenette.sh
Pour produire les résultats du tableau 2 de l'article (c'est-à-dire le concept Effacement de la nudité), exécutez la commande suivante :
bash run_nudity.sh
Pour produire les résultats du tableau 3 de l'article (c'est-à-dire Effacer les concepts artistiques), exécutez la commande suivante :
bash run_artist.sh
Produire les figures 1 et 2 du document (c'est-à-dire l'analyse de l'impact de l'effacement du concept cible)
bash run_abl_preserve.sh
La liste des invites utilisées dans l'article se trouve dans le dossier data
, notamment :
english_3000.csv
: Liste de 3000 mots anglaisimagenette.csv
: Liste des classes d'imagenette, 500 images par classeunsafe-prompts4703.csv
: Liste des invites non sécurisées I2P, invites 4703long_nich_art_prompts.csv
: Liste pour générer des œuvres artistiques de cinq artistessimilarity-nudity_200.csv
à similarity-nudity-4_200.csv
: Liste pour générer des objets spécifiques pour étudier l'impact de l'effacement de la nudité et des concepts de camion poubelleNous assurons la mise en œuvre de notre méthode et de nos lignes de base :
train_adversarial_gumbel.py
: Implémentation de notre méthodetrain_esd.py
: Implémentation de l'EDDtrain_uce.py
: Implémentation de l'UCEtrain-esd-preserve.py
: Implémentation de l'ESD avec préservation pour étudier l'impact de l'effacement des concepts de nudité et de camion à ordures Pour définir les concepts à effacer, modifiez le fichier utils_exp.py
et changez l'argument --prompt
dans les fichiers bash.
Nous fournissons les résultats de l'évaluation de notre méthode et de nos lignes de base dans le dossier evaluation_folder
et les cahiers associés pour reproduire les résultats dans l'article.
Si vous trouvez ce travail utile dans vos recherches, pensez à citer notre article (ou nos autres articles ?) :
@article { bui2024erasing ,
title = { Erasing Undesirable Concepts in Diffusion Models with Adversarial Preservation } ,
author = { Bui, Anh and Vuong, Long and Doan, Khanh and Le, Trung and Montague, Paul and Abraham, Tamas and Phung, Dinh } ,
booktitle = { NeurIPS } ,
year = { 2024 }
}
@article { bui2024adaptive ,
title = { Fantastic Targets for Concept Erasure in Diffusion Models and Where to Find Them } ,
author = { Bui, Anh and Vu, Trang and Vuong, Long and Le, Trung and Montague, Paul and Abraham, Tamas and Phung, Dinh } ,
journal = { Preprint } ,
year = { 2024 }
}
@article { bui2024removing ,
title = { Removing Undesirable Concepts in Text-to-Image Generative Models with Learnable Prompts } ,
author = { Bui, Anh and Doan, Khanh and Le, Trung and Montague, Paul and Abraham, Tamas and Phung, Dinh } ,
journal = { arXiv preprint arXiv:2403.12326 } ,
year = { 2024 }
}
Ce référentiel est basé sur le référentiel Erasing Concepts from Diffusion Models