{"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/causal-walk-debiasing-multi-hop-fact","title":"Causal Walk: Debiasing Multi-Hop Fact Verification with Front-Door Adjustment","arxiv_id":"2403.02698","date":"2024-03-05","proceeding":null,"authors":["Congzhi Zhang","Linhai Zhang","Deyu Zhou"],"abstract":"Conventional multi-hop fact verification models are prone to rely on spurious correlations from the annotation artifacts, leading to an obvious performance decline on unbiased datasets. Among the various debiasing works, the causal inference-based methods become popular by performing theoretically guaranteed debiasing such as casual intervention or counterfactual reasoning. However, existing causal inference-based debiasing methods, which mainly formulate fact verification as a single-hop reasoning task to tackle shallow bias patterns, cannot deal with the complicated bias patterns hidden in multiple hops of evidence. To address the challenge, we propose Causal Walk, a novel method for debiasing multi-hop fact verification from a causal perspective with front-door adjustment. Specifically, in the structural causal model, the reasoning path between the treatment (the input claim-evidence graph) and the outcome (the veracity label) is introduced as the mediator to block the confounder. With the front-door adjustment, the causal effect between the treatment and the outcome is decomposed into the causal effect between the treatment and the mediator, which is estimated by applying the idea of random walk, and the causal effect between the mediator and the outcome, which is estimated with normalized weighted geometric mean approximation. To investigate the effectiveness of the proposed method, an adversarial multi-hop fact verification dataset and a symmetric multi-hop fact verification dataset are proposed with the help of the large language model. Experimental results show that Causal Walk outperforms some previous debiasing methods on both existing datasets and the newly constructed datasets. Code and data will be released at https://github.com/zcccccz/CausalWalk.","url_abs":"https://arxiv.org/abs/2403.02698v1","url_pdf":"https://arxiv.org/pdf/2403.02698v1.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":"causal-walk-debiasing-multi-hop-fact","repo_url":"https://github.com/zcccccz/causalwalk","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"causal-inference","task_name":"Causal Inference"},{"task_slug":"counterfactual-reasoning","task_name":"Counterfactual Reasoning"},{"task_slug":"fact-verification","task_name":"Fact Verification"},{"task_slug":"language-modelling","task_name":"Language Modelling"},{"task_slug":"large-language-model","task_name":"Large Language Model"},{"task_slug":null,"task_name":"counterfactual"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":"https://syntology.ai/paper/2403.02698","atlas_url":"https://app.syntology.ai/?focus=2403.02698","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2403.02698"}},"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/zcccccz/causalwalk","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"deterministic:regex_extraction","url":"https://github.com/zcccccz/CausalWalk","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran":4,"unverified":2},"by_repo_kind":{"official":{"samples":6,"ran":4,"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":"dd7effcbb9b3902f","entry":"convert_examples_to_features","repo":"zcccccz/CausalWalk","repo_kind":"official","path":"data_load_utils.py","file_url":"https://github.com/zcccccz/CausalWalk/blob/HEAD/data_load_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":"dd7effcbb9b3902f"}},{"code_sha256_prefix":"b63e4ee270dfdefa","entry":"correct_prediction","repo":"zcccccz/CausalWalk","repo_kind":"official","path":"train_causal_walk_fever_2way.py","file_url":"https://github.com/zcccccz/CausalWalk/blob/HEAD/train_causal_walk_fever_2way.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":"b63e4ee270dfdefa"}},{"code_sha256_prefix":"44cae70d89ff61d4","entry":"init_logger","repo":"zcccccz/CausalWalk","repo_kind":"official","path":"utils.py","file_url":"https://github.com/zcccccz/CausalWalk/blob/HEAD/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":"44cae70d89ff61d4"}},{"code_sha256_prefix":"bc402a7c004d24b7","entry":"read_examples","repo":"zcccccz/CausalWalk","repo_kind":"official","path":"data_load_utils.py","file_url":"https://github.com/zcccccz/CausalWalk/blob/HEAD/data_load_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":"bc402a7c004d24b7"}},{"code_sha256_prefix":"1881b09a7e0581f0","entry":"load_graph_data","repo":"zcccccz/CausalWalk","repo_kind":"official","path":"utils.py","file_url":"https://github.com/zcccccz/CausalWalk/blob/HEAD/utils.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":"1881b09a7e0581f0"}},{"code_sha256_prefix":"5ab6dd7b8f081c6a","entry":"merage_graph","repo":"zcccccz/CausalWalk","repo_kind":"official","path":"utils.py","file_url":"https://github.com/zcccccz/CausalWalk/blob/HEAD/utils.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":"5ab6dd7b8f081c6a"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}