{"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/sepvae-a-contrastive-vae-to-separate","title":"SepVAE: a contrastive VAE to separate pathological patterns from healthy ones","arxiv_id":"2307.06206","date":"2023-07-12","proceeding":null,"authors":["Robin Louiset","Edouard Duchesnay","Antoine Grigis","Benoit Dufumier","Pietro Gori"],"abstract":"Contrastive Analysis VAE (CA-VAEs) is a family of Variational auto-encoders (VAEs) that aims at separating the common factors of variation between a background dataset (BG) (i.e., healthy subjects) and a target dataset (TG) (i.e., patients) from the ones that only exist in the target dataset. To do so, these methods separate the latent space into a set of salient features (i.e., proper to the target dataset) and a set of common features (i.e., exist in both datasets). Currently, all models fail to prevent the sharing of information between latent spaces effectively and to capture all salient factors of variation. To this end, we introduce two crucial regularization losses: a disentangling term between common and salient representations and a classification term between background and target samples in the salient space. We show a better performance than previous CA-VAEs methods on three medical applications and a natural images dataset (CelebA). Code and datasets are available on GitHub https://github.com/neurospin-projects/2023_rlouiset_sepvae.","url_abs":"https://arxiv.org/abs/2307.06206v2","url_pdf":"https://arxiv.org/pdf/2307.06206v2.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":"sepvae-a-contrastive-vae-to-separate","repo_url":"https://github.com/neurospin-projects/2023_rlouiset_sepvae","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":null}],"tasks":[],"methods":[{"method_slug":"fail","method_name":"fail"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":"https://syntology.ai/paper/2307.06206","atlas_url":"https://app.syntology.ai/?focus=2307.06206","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2307.06206"}},"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/neurospin-projects/2023_rlouiset_sepvae","reach":null}],"summary":{"ran":3,"unverified":1},"by_repo_kind":{"official":{"samples":4,"ran":3,"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":4,"samples":[{"code_sha256_prefix":"00806c10633fb1d0","entry":"Classifier","repo":"neurospin-projects/2023_rlouiset_sepvae","repo_kind":"official","path":"celeba/sep_vae.py","file_url":"https://github.com/neurospin-projects/2023_rlouiset_sepvae/blob/HEAD/celeba/sep_vae.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"00806c10633fb1d0"}},{"code_sha256_prefix":"5a9be66a0113ddf6","entry":"Decoder","repo":"neurospin-projects/2023_rlouiset_sepvae","repo_kind":"official","path":"celeba/sep_vae.py","file_url":"https://github.com/neurospin-projects/2023_rlouiset_sepvae/blob/HEAD/celeba/sep_vae.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":"invariant","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"5a9be66a0113ddf6"}},{"code_sha256_prefix":"995643e4a628ab16","entry":"Encoder","repo":"neurospin-projects/2023_rlouiset_sepvae","repo_kind":"official","path":"celeba/sep_vae.py","file_url":"https://github.com/neurospin-projects/2023_rlouiset_sepvae/blob/HEAD/celeba/sep_vae.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"995643e4a628ab16"}},{"code_sha256_prefix":"2f120d918a8f9630","entry":"ShallowDisVAE","repo":"neurospin-projects/2023_rlouiset_sepvae","repo_kind":"official","path":"celeba/sep_vae.py","file_url":"https://github.com/neurospin-projects/2023_rlouiset_sepvae/blob/HEAD/celeba/sep_vae.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"2f120d918a8f9630"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}