{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/precise-fast-and-low-cost-concept-erasure-in","title":"Precise, Fast, and Low-cost Concept Erasure in Value Space: Orthogonal Complement Matters","arxiv_id":"2412.06143","date":"2024-12-09","proceeding":"CVPR 2025 1","authors":["YuAn Wang","Ouxiang Li","Tingting Mu","Yanbin Hao","Kuien Liu","Xiang Wang","Xiangnan He"],"abstract":"Recent success of text-to-image (T2I) generation and its increasing practical applications, enabled by diffusion models, require urgent consideration of erasing unwanted concepts, e.g., copyrighted, offensive, and unsafe ones, from the pre-trained models in a precise, timely, and low-cost manner. The twofold demand of concept erasure includes not only a precise removal of the target concept (i.e., erasure efficacy) but also a minimal change on non-target content (i.e., prior preservation), during generation. Existing methods face challenges in maintaining an effective balance between erasure efficacy and prior preservation, and they can be computationally costly. To improve, we propose a precise, fast, and low-cost concept erasure method, called Adaptive Value Decomposer (AdaVD), which is training-free. Our method is grounded in a classical linear algebraic operation of computing the orthogonal complement, implemented in the value space of each cross-attention layer within the UNet of diffusion models. We design a shift factor to adaptively navigate the erasure strength, enhancing effective prior preservation without sacrificing erasure efficacy. Extensive comparative experiments with both training-based and training-free state-of-the-art methods demonstrate that the proposed AdaVD excels in both single and multiple concept erasure, showing 2 to 10 times improvement in prior preservation than the second best, meanwhile achieving the best or near best erasure efficacy. AdaVD supports a series of diffusion models and downstream image generation tasks, with code available on: https://github.com/WYuan1001/AdaVD.","url_abs":"https://arxiv.org/abs/2412.06143v2","url_pdf":"https://arxiv.org/pdf/2412.06143v2.pdf","source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","row_kind":"abstracts"},"code_links":[{"paper_slug":"precise-fast-and-low-cost-concept-erasure-in","repo_url":"https://github.com/wyuan1001/adavd","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"Apache-2.0"}}],"tasks":[{"task_slug":"image-generation","task_name":"Image Generation"},{"task_slug":"navigate","task_name":"Navigate"},{"task_slug":"text-to-image-generation","task_name":"Text-to-Image Generation"}],"methods":[{"method_slug":"diffusion","method_name":"Diffusion"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":"https://syntology.ai/paper/2412.06143","atlas_url":"https://app.syntology.ai/?focus=2412.06143","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2412.06143"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-25T09:33:49+00:00","read_at_is":"when the build read Syntology's graph, not when any sample ran","claim":"Per-sample execution status on synthesized fixtures; not a correctness claim about the paper. Samples come from repositories linked to the paper, official or community; repo_kind says which.","repos":[{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/wyuan1001/adavd","reach":{"status":"ok","spdx":"Apache-2.0"}}],"summary":{"unverified":7},"by_repo_kind":{"official":{"samples":7,"ran":0,"repositories":1}},"repo_kind_vocabulary":{"official":"The archive marks this repository official for the paper","named_in_paper":"The archive records that the paper mentions this repository; it is not marked official","listed":"In the archive's code links for this paper, not marked official and not recorded as mentioned in the paper","found_in_text":"Syntology found this repository in the paper's own text; whether it is the authors' implementation is not asserted","community":"Not in the archive's code links for this paper; a community repository Syntology harvested"},"n_pointer_only_for_licence":0,"samples":[{"code_sha256_prefix":"82511a695667195b","entry":"diffusion","repo":"wyuan1001/adavd","repo_kind":"official","path":"src/main_multi.py","file_url":"https://github.com/wyuan1001/adavd/blob/HEAD/src/main_multi.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"82511a695667195b"}},{"code_sha256_prefix":"90cafa895968cf02","entry":"find_root_paths","repo":"wyuan1001/adavd","repo_kind":"official","path":"src/clip_score_cal.py","file_url":"https://github.com/wyuan1001/adavd/blob/HEAD/src/clip_score_cal.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"90cafa895968cf02"}},{"code_sha256_prefix":"c0e3cf841768e9d3","entry":"get_eot_idx","repo":"wyuan1001/adavd","repo_kind":"official","path":"src/utils.py","file_url":"https://github.com/wyuan1001/adavd/blob/HEAD/src/utils.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"c0e3cf841768e9d3"}},{"code_sha256_prefix":"89edd58359d3e2fe","entry":"get_textencoding","repo":"wyuan1001/adavd","repo_kind":"official","path":"src/utils.py","file_url":"https://github.com/wyuan1001/adavd/blob/HEAD/src/utils.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"89edd58359d3e2fe"}},{"code_sha256_prefix":"b7cce9a6b6959466","entry":"get_token","repo":"wyuan1001/adavd","repo_kind":"official","path":"src/utils.py","file_url":"https://github.com/wyuan1001/adavd/blob/HEAD/src/utils.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"b7cce9a6b6959466"}},{"code_sha256_prefix":"d180bd8bbf483fbe","entry":"set_attenprocessor","repo":"wyuan1001/adavd","repo_kind":"official","path":"src/main_multi.py","file_url":"https://github.com/wyuan1001/adavd/blob/HEAD/src/main_multi.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"d180bd8bbf483fbe"}},{"code_sha256_prefix":"675dfc556924aaa8","entry":"trans_target","repo":"wyuan1001/adavd","repo_kind":"official","path":"src/main_multi.py","file_url":"https://github.com/wyuan1001/adavd/blob/HEAD/src/main_multi.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"675dfc556924aaa8"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}