{"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/modular-learning-of-deep-causal-generative","title":"Modular Learning of Deep Causal Generative Models for High-dimensional Causal Inference","arxiv_id":"2401.01426","date":"2024-01-02","proceeding":null,"authors":["Md Musfiqur Rahman","Murat Kocaoglu"],"abstract":"Sound and complete algorithms have been proposed to compute identifiable causal queries using the causal structure and data. However, most of these algorithms assume accurate estimation of the data distribution, which is impractical for high-dimensional variables such as images. On the other hand, modern deep generative architectures can be trained to sample from high-dimensional distributions. However, training these networks are typically very costly. Thus, it is desirable to leverage pre-trained models to answer causal queries using such high-dimensional data. To address this, we propose modular training of deep causal generative models that not only makes learning more efficient, but also allows us to utilize large, pre-trained conditional generative models. To the best of our knowledge, our algorithm, Modular-DCM is the first algorithm that, given the causal structure, uses adversarial training to learn the network weights, and can make use of pre-trained models to provably sample from any identifiable causal query in the presence of latent confounders. With extensive experiments on the Colored-MNIST dataset, we demonstrate that our algorithm outperforms the baselines. We also show our algorithm's convergence on the COVIDx dataset and its utility with a causal invariant prediction problem on CelebA-HQ.","url_abs":"https://arxiv.org/abs/2401.01426v2","url_pdf":"https://arxiv.org/pdf/2401.01426v2.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":"modular-learning-of-deep-causal-generative","repo_url":"https://github.com/musfiqshohan/modular-dcm","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"framework":"pytorch","reach":{"status":"ok"}}],"tasks":[{"task_slug":"causal-inference","task_name":"Causal Inference"},{"task_slug":null,"task_name":"counterfactual"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2401.01426","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2401.01426"}},"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/musfiqshohan/modular-dcm","reach":{"status":"ok"}}],"summary":{"ran":12,"unverified":3},"by_repo_kind":{"official":{"samples":15,"ran":12,"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":15,"samples":[{"code_sha256_prefix":"bc6e38811399e353","entry":"Find_MACS","repo":"musfiqshohan/modular-dcm","repo_kind":"official","path":"modularScalability/H_graph_construction.py","file_url":"https://github.com/musfiqshohan/modular-dcm/blob/HEAD/modularScalability/H_graph_construction.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"bc6e38811399e353"}},{"code_sha256_prefix":"e39a97d9e462a46f","entry":"asKey","repo":"musfiqshohan/modular-dcm","repo_kind":"official","path":"modularScalability/ConstantFunctions.py","file_url":"https://github.com/musfiqshohan/modular-dcm/blob/HEAD/modularScalability/ConstantFunctions.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"e39a97d9e462a46f"}},{"code_sha256_prefix":"7d67d48d154af268","entry":"conv_bn","repo":"musfiqshohan/modular-dcm","repo_kind":"official","path":"Image_Mediator_Training/ModularUtils/ControllerModel.py","file_url":"https://github.com/musfiqshohan/modular-dcm/blob/HEAD/Image_Mediator_Training/ModularUtils/ControllerModel.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"7d67d48d154af268"}},{"code_sha256_prefix":"6a3e25ddbcff7bbe","entry":"conv_bn","repo":"musfiqshohan/modular-dcm","repo_kind":"official","path":"modularCelebA/Classifiers/model.py","file_url":"https://github.com/musfiqshohan/modular-dcm/blob/HEAD/modularCelebA/Classifiers/model.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"6a3e25ddbcff7bbe"}},{"code_sha256_prefix":"6f4dc57096626144","entry":"conv_dw","repo":"musfiqshohan/modular-dcm","repo_kind":"official","path":"Image_Mediator_Training/ModularUtils/ControllerModel.py","file_url":"https://github.com/musfiqshohan/modular-dcm/blob/HEAD/Image_Mediator_Training/ModularUtils/ControllerModel.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"6f4dc57096626144"}},{"code_sha256_prefix":"328a9852708ba457","entry":"conv_dw","repo":"musfiqshohan/modular-dcm","repo_kind":"official","path":"modularCelebA/Classifiers/model.py","file_url":"https://github.com/musfiqshohan/modular-dcm/blob/HEAD/modularCelebA/Classifiers/model.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"328a9852708ba457"}},{"code_sha256_prefix":"b24d0bec18d7c58c","entry":"estiamte_ate_backdoor_direct","repo":"musfiqshohan/modular-dcm","repo_kind":"official","path":"Image_Mediator_Training/ModularUtils/FrontBackDoorCalculation.py","file_url":"https://github.com/musfiqshohan/modular-dcm/blob/HEAD/Image_Mediator_Training/ModularUtils/FrontBackDoorCalculation.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"b24d0bec18d7c58c"}},{"code_sha256_prefix":"a28be050f89ed6c9","entry":"estiamte_ate_frontdoor_direct","repo":"musfiqshohan/modular-dcm","repo_kind":"official","path":"Image_Mediator_Training/ModularUtils/FrontBackDoorCalculation.py","file_url":"https://github.com/musfiqshohan/modular-dcm/blob/HEAD/Image_Mediator_Training/ModularUtils/FrontBackDoorCalculation.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"a28be050f89ed6c9"}},{"code_sha256_prefix":"9acecdb220ed5f75","entry":"getdoKey","repo":"musfiqshohan/modular-dcm","repo_kind":"official","path":"modularScalability/ConstantFunctions.py","file_url":"https://github.com/musfiqshohan/modular-dcm/blob/HEAD/modularScalability/ConstantFunctions.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"9acecdb220ed5f75"}},{"code_sha256_prefix":"81ef4fd9afa568f9","entry":"hasBackdoor","repo":"musfiqshohan/modular-dcm","repo_kind":"official","path":"modularScalability/H_graph_construction.py","file_url":"https://github.com/musfiqshohan/modular-dcm/blob/HEAD/modularScalability/H_graph_construction.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"81ef4fd9afa568f9"}},{"code_sha256_prefix":"b5510467b35803b1","entry":"map_to_exact_discrete","repo":"musfiqshohan/modular-dcm","repo_kind":"official","path":"modularScalability/ControllerConstants.py","file_url":"https://github.com/musfiqshohan/modular-dcm/blob/HEAD/modularScalability/ControllerConstants.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"b5510467b35803b1"}},{"code_sha256_prefix":"d3e711b05cccbe3b","entry":"merge_nodes","repo":"musfiqshohan/modular-dcm","repo_kind":"official","path":"modularScalability/H_graph_construction.py","file_url":"https://github.com/musfiqshohan/modular-dcm/blob/HEAD/modularScalability/H_graph_construction.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"d3e711b05cccbe3b"}},{"code_sha256_prefix":"2bf146eb0a62b9a6","entry":"get_training_variables","repo":"musfiqshohan/modular-dcm","repo_kind":"official","path":"modularScalability/ConstantFunctions.py","file_url":"https://github.com/musfiqshohan/modular-dcm/blob/HEAD/modularScalability/ConstantFunctions.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":"2bf146eb0a62b9a6"}},{"code_sha256_prefix":"3ca350e3dd4a30d5","entry":"map_dictfill_to_discrete","repo":"musfiqshohan/modular-dcm","repo_kind":"official","path":"modularScalability/ControllerConstants.py","file_url":"https://github.com/musfiqshohan/modular-dcm/blob/HEAD/modularScalability/ControllerConstants.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":"3ca350e3dd4a30d5"}},{"code_sha256_prefix":"3de98abba9458dfb","entry":"map_to_multiple_states","repo":"musfiqshohan/modular-dcm","repo_kind":"official","path":"modularScalability/ControllerConstants.py","file_url":"https://github.com/musfiqshohan/modular-dcm/blob/HEAD/modularScalability/ControllerConstants.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":"3de98abba9458dfb"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}