{"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/adversarial-support-alignment-1","title":"Adversarial Support Alignment","arxiv_id":"2203.08908","date":"2022-03-16","proceeding":"ICLR 2022 4","authors":["Shangyuan Tong","Timur Garipov","Yang Zhang","Shiyu Chang","Tommi S. Jaakkola"],"abstract":"We study the problem of aligning the supports of distributions. Compared to the existing work on distribution alignment, support alignment does not require the densities to be matched. We propose symmetric support difference as a divergence measure to quantify the mismatch between supports. We show that select discriminators (e.g. discriminator trained for Jensen-Shannon divergence) are able to map support differences as support differences in their one-dimensional output space. Following this result, our method aligns supports by minimizing a symmetrized relaxed optimal transport cost in the discriminator 1D space via an adversarial process. Furthermore, we show that our approach can be viewed as a limit of existing notions of alignment by increasing transportation assignment tolerance. We quantitatively evaluate the method across domain adaptation tasks with shifts in label distributions. Our experiments show that the proposed method is more robust against these shifts than other alignment-based baselines.","url_abs":"https://arxiv.org/abs/2203.08908v1","url_pdf":"https://arxiv.org/pdf/2203.08908v1.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":"adversarial-support-alignment-1","repo_url":"https://github.com/timgaripov/asa","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"framework":"pytorch","reach":null}],"tasks":[{"task_slug":"domain-adaptation","task_name":"Domain Adaptation"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2203.08908","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2203.08908"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-24T18:15:14+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/timgaripov/asa","reach":null}],"summary":{"ran":2,"unverified":2},"by_repo_kind":{"official":{"samples":4,"ran":2,"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":"420aa67d7ddd6ad4","entry":"DiscriminatorOutputHistory","repo":"timgaripov/asa","repo_kind":"official","path":"support_alignment/core/discriminators.py","file_url":"https://github.com/timgaripov/asa/blob/HEAD/support_alignment/core/discriminators.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"420aa67d7ddd6ad4"}},{"code_sha256_prefix":"e0069d8bc05acc9a","entry":"MLP","repo":"timgaripov/asa","repo_kind":"official","path":"support_alignment/core/discriminators.py","file_url":"https://github.com/timgaripov/asa/blob/HEAD/support_alignment/core/discriminators.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"e0069d8bc05acc9a"}},{"code_sha256_prefix":"2bc47b5ba8597cf8","entry":"Discriminator","repo":"timgaripov/asa","repo_kind":"official","path":"support_alignment/core/discriminators.py","file_url":"https://github.com/timgaripov/asa/blob/HEAD/support_alignment/core/discriminators.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"2bc47b5ba8597cf8"}},{"code_sha256_prefix":"4353b5dc03dc4f2f","entry":"SupportLossDiscriminator","repo":"timgaripov/asa","repo_kind":"official","path":"support_alignment/core/discriminators.py","file_url":"https://github.com/timgaripov/asa/blob/HEAD/support_alignment/core/discriminators.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"4353b5dc03dc4f2f"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}