{"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/causalgan-learning-causal-implicit-generative","title":"CausalGAN: Learning Causal Implicit Generative Models with Adversarial Training","arxiv_id":"1709.02023","date":"2017-09-06","proceeding":"ICLR 2018 1","authors":["Murat Kocaoglu","Christopher Snyder","Alexandros G. Dimakis","Sriram Vishwanath"],"abstract":"We propose an adversarial training procedure for learning a causal implicit\ngenerative model for a given causal graph. We show that adversarial training\ncan be used to learn a generative model with true observational and\ninterventional distributions if the generator architecture is consistent with\nthe given causal graph. We consider the application of generating faces based\non given binary labels where the dependency structure between the labels is\npreserved with a causal graph. This problem can be seen as learning a causal\nimplicit generative model for the image and labels. We devise a two-stage\nprocedure for this problem. First we train a causal implicit generative model\nover binary labels using a neural network consistent with a causal graph as the\ngenerator. We empirically show that WassersteinGAN can be used to output\ndiscrete labels. Later, we propose two new conditional GAN architectures, which\nwe call CausalGAN and CausalBEGAN. We show that the optimal generator of the\nCausalGAN, given the labels, samples from the image distributions conditioned\non these labels. The conditional GAN combined with a trained causal implicit\ngenerative model for the labels is then a causal implicit generative model over\nthe labels and the generated image. We show that the proposed architectures can\nbe used to sample from observational and interventional image distributions,\neven for interventions which do not naturally occur in the dataset.","url_abs":"http://arxiv.org/abs/1709.02023v2","url_pdf":"http://arxiv.org/pdf/1709.02023v2.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":"causalgan-learning-causal-implicit-generative","repo_url":"https://github.com/mkocaoglu/CausalGAN","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"tf","reach":null},{"paper_slug":"causalgan-learning-causal-implicit-generative","repo_url":"https://github.com/clinicalml/parametric-robustness-evaluation","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"tf","reach":null}],"tasks":[{"task_slug":"face-generation","task_name":"Face Generation"}],"methods":[{"method_slug":"convolution","method_name":"Convolution"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=1709.02023","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"1709.02023"}},"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/clinicalml/parametric-robustness-evaluation","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/mkocaoglu/CausalGAN","reach":null}],"summary":{"ran_draft_wrong":2,"ran_violates":1},"by_repo_kind":{"official":{"samples":2,"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":1,"samples":[{"code_sha256_prefix":"6d80592fd6d47b2d","entry":"add_argument_group","repo":null,"repo_kind":null,"path":null,"file_url":null,"link_basis":"identical_code_first_harvested_elsewhere","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":null,"inline_ok":false,"mcp_get_code":{"code_sha256":"6d80592fd6d47b2d"}},{"code_sha256_prefix":"3df4b5baa132cb50","entry":"gpu_logic","repo":"mkocaoglu/CausalGAN","repo_kind":"official","path":"config.py","file_url":"https://github.com/mkocaoglu/CausalGAN/blob/HEAD/config.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"3df4b5baa132cb50"}},{"code_sha256_prefix":"7df259fe8a7cd6fb","entry":"str2bool","repo":"mkocaoglu/CausalGAN","repo_kind":"official","path":"config.py","file_url":"https://github.com/mkocaoglu/CausalGAN/blob/HEAD/config.py","link_basis":"first_harvest_node","language":"python","status":"ran_violates","verification_level":1,"contract_check":"VIOLATES","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"7df259fe8a7cd6fb"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}