「透過對抗性保存消除擴散模型中不需要的概念」 (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