“通过对抗性保存消除扩散模型中不需要的概念” (NeurIPS 2024)。
[?纸] [?项目页面] [?海报] [幻灯片]
联系方式: [email protected]
(无耻的插件?)我们关于概念擦除/遗忘的其他论文:
扩散模型中概念擦除的绝佳目标以及在哪里可以找到它们,
Tuan-Anh Bui、Trang Vu、Long Vuong、Trung Le、Paul Montague、Tamas Abraham、Dinh Phung
正在审核中 (Dropbox)
通过对抗性保留消除扩散模型中不需要的概念,
Tuan-Anh Bui、Long Vuong、Khanh Doan、Trung Le、Paul Montague、Tamas Abraham、Dinh Phung
NeurIPS 2024 (arXiv 2410.15618)
使用可学习的提示删除文本到图像生成模型中不需要的概念,
Tuan-Anh Bui、Khanh Doan、Trung Le、Paul Montague、Tamas Abraham、Dinh Phung
预印本(arXiv 2403.12326)
扩散模型擅长从文本生成视觉上引人注目的内容,但在未经过滤的互联网数据上进行训练时,可能会无意中生成不良或有害的内容。一个实用的解决方案是有选择地从模型中删除目标概念,但这可能会影响剩余的概念。先前的方法试图通过引入损失项来保留中性内容或引入正则化项来最小化模型参数的变化来平衡这一点,但解决这种权衡仍然具有挑战性。在这项工作中,我们建议识别和保留受参数变化影响最大的概念,称为对抗性概念。这种方法确保了稳定的擦除,同时对其他概念的影响最小。我们使用稳定扩散模型证明了我们方法的有效性,表明它在消除不需要的内容同时保持其他不相关元素的完整性方面优于最先进的擦除方法。
(1)从文本到图像的扩散模型中删除不同的目标概念会导致对剩余概念的不同影响。例如,删除“裸体”会显着影响“女性”和“男性”等相关概念,但对“垃圾车”等不相关概念的影响却很小。 (2)中性概念位于敏感性范围的中间,表明它们不能充分代表模型的保留能力。 (3)此外,擦除过程中要保留的概念的选择显着影响模型的生成能力;正如之前的工作一样,依赖中性概念并不是最佳解决方案。 (4)这凸显了需要自适应方法来识别和保留与被删除的目标概念相关的最敏感概念,而不是依赖于固定的中性/通用概念。
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/
要求:
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
我们在以下 bash 文件中为论文中的实验提供了训练和评估脚本。
要产生本文表 1 中的结果(即擦除对象相关概念),请运行以下命令:
bash run_imagenette.sh
要生成论文表 2 中的结果(即擦除裸体概念),请运行以下命令:
bash run_nudity.sh
要生成论文表 3 中的结果(即擦除艺术概念),请运行以下命令:
bash run_artist.sh
产生论文的图1和图2(即擦除目标概念的影响分析)
bash run_abl_preserve.sh
论文中使用的提示列表可以在data
文件夹中找到,包括:
english_3000.csv
:3000 个英语单词列表imagenette.csv
:imagenette 类列表,每类 500 张图像unsafe-prompts4703.csv
:不安全提示列表I2P,4703提示long_nich_art_prompts.csv
:生成五位艺术家的艺术作品的列表similarity-nudity_200.csv
到similarity-nudity-4_200.csv
:生成特定对象的列表,以研究删除裸体和垃圾车概念的影响我们提供我们的方法和基线的实现:
train_adversarial_gumbel.py
:我们方法的实现train_esd.py
:ESD的实现train_uce.py
:UCE的实现train-esd-preserve.py
:实施 ESD 与保存,以研究擦除裸体和垃圾车概念的影响要设置要删除的概念,请修改utils_exp.py
文件并更改 bash 文件中的参数--prompt
。
我们在evaluation_folder
文件夹和相关笔记本中提供了我们的方法和基线的评估结果,以在论文中重现结果。
如果您发现这项工作对您的研究有用,请考虑引用我们的论文(或我们的其他论文?):
@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 }
}
该存储库基于存储库 Erasing Concepts from Diffusion Models