{"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/acceleratedlingam-learning-causal-dags-at-the","title":"AcceleratedLiNGAM: Learning Causal DAGs at the speed of GPUs","arxiv_id":"2403.03772","date":"2024-03-06","proceeding":null,"authors":["Victor Akinwande","J. Zico Kolter"],"abstract":"Existing causal discovery methods based on combinatorial optimization or search are slow, prohibiting their application on large-scale datasets. In response, more recent methods attempt to address this limitation by formulating causal discovery as structure learning with continuous optimization but such approaches thus far provide no statistical guarantees. In this paper, we show that by efficiently parallelizing existing causal discovery methods, we can in fact scale them to thousands of dimensions, making them practical for substantially larger-scale problems. In particular, we parallelize the LiNGAM method, which is quadratic in the number of variables, obtaining up to a 32-fold speed-up on benchmark datasets when compared with existing sequential implementations. Specifically, we focus on the causal ordering subprocedure in DirectLiNGAM and implement GPU kernels to accelerate it. This allows us to apply DirectLiNGAM to causal inference on large-scale gene expression data with genetic interventions yielding competitive results compared with specialized continuous optimization methods, and Var-LiNGAM for causal discovery on U.S. stock data.","url_abs":"https://arxiv.org/abs/2403.03772v1","url_pdf":"https://arxiv.org/pdf/2403.03772v1.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":"acceleratedlingam-learning-causal-dags-at-the","repo_url":"https://github.com/viktour19/culingam","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"none","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"causal-discovery","task_name":"Causal Discovery"},{"task_slug":"causal-inference","task_name":"Causal Inference"},{"task_slug":"combinatorial-optimization","task_name":"Combinatorial Optimization"},{"task_slug":null,"task_name":"GPU"}],"methods":[{"method_slug":"causal-inference","method_name":"Causal inference"},{"method_slug":"focus","method_name":"Focus"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":"https://syntology.ai/paper/2403.03772","atlas_url":"https://app.syntology.ai/?focus=2403.03772","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2403.03772"}},"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/viktour19/culingam","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran":3},"by_repo_kind":{"official":{"samples":3,"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":0,"samples":[{"code_sha256_prefix":"59ff4cf0c3a1ceab","entry":"gamma_cdf","repo":"viktour19/culingam","repo_kind":"official","path":"src/culingam/utils.py","file_url":"https://github.com/viktour19/culingam/blob/HEAD/src/culingam/utils.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"59ff4cf0c3a1ceab"}},{"code_sha256_prefix":"4355931bb9e25174","entry":"gamma_pdf","repo":"viktour19/culingam","repo_kind":"official","path":"src/culingam/utils.py","file_url":"https://github.com/viktour19/culingam/blob/HEAD/src/culingam/utils.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"4355931bb9e25174"}},{"code_sha256_prefix":"193b3aba5cfe563c","entry":"linear_regression","repo":"viktour19/culingam","repo_kind":"official","path":"src/culingam/utils.py","file_url":"https://github.com/viktour19/culingam/blob/HEAD/src/culingam/utils.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":"193b3aba5cfe563c"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}