{"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/towards-understanding-how-machines-can-learn","title":"Towards Understanding How Machines Can Learn Causal Overhypotheses","arxiv_id":"2206.08353","date":"2022-06-16","proceeding":null,"authors":["Eliza Kosoy","David M. Chan","Adrian Liu","Jasmine Collins","Bryanna Kaufmann","Sandy Han Huang","Jessica B. Hamrick","John Canny","Nan Rosemary Ke","Alison Gopnik"],"abstract":"Recent work in machine learning and cognitive science has suggested that understanding causal information is essential to the development of intelligence. The extensive literature in cognitive science using the ``blicket detector'' environment shows that children are adept at many kinds of causal inference and learning. We propose to adapt that environment for machine learning agents. One of the key challenges for current machine learning algorithms is modeling and understanding causal overhypotheses: transferable abstract hypotheses about sets of causal relationships. In contrast, even young children spontaneously learn and use causal overhypotheses. In this work, we present a new benchmark -- a flexible environment which allows for the evaluation of existing techniques under variable causal overhypotheses -- and demonstrate that many existing state-of-the-art methods have trouble generalizing in this environment. The code and resources for this benchmark are available at https://github.com/CannyLab/casual_overhypotheses.","url_abs":"https://arxiv.org/abs/2206.08353v1","url_pdf":"https://arxiv.org/pdf/2206.08353v1.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":"towards-understanding-how-machines-can-learn","repo_url":"https://github.com/cannylab/casual_overhypotheses","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"machine-learning","task_name":"BIG-bench Machine Learning"},{"task_slug":"causal-inference","task_name":"Causal Inference"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":"https://syntology.ai/paper/2206.08353","atlas_url":"https://app.syntology.ai/?focus=2206.08353","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2206.08353"}},"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/cannylab/casual_overhypotheses","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran_fixture":1,"ran":1,"ran_draft_wrong":1,"unverified":2},"by_repo_kind":{"official":{"samples":5,"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":"0161b27cbe3cc58d","entry":"discount_cumsum","repo":"cannylab/casual_overhypotheses","repo_kind":"official","path":"models/decision-transformer/experiment.py","file_url":"https://github.com/cannylab/casual_overhypotheses/blob/HEAD/models/decision-transformer/experiment.py","link_basis":"harvester_set","language":"python","status":"ran_fixture","verification_level":2,"contract_check":"RAISES","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"0161b27cbe3cc58d"}},{"code_sha256_prefix":"1ed718456cb9f7a0","entry":"evaluate_episode","repo":"cannylab/casual_overhypotheses","repo_kind":"official","path":"models/decision-transformer/evaluation/evaluate_episodes.py","file_url":"https://github.com/cannylab/casual_overhypotheses/blob/HEAD/models/decision-transformer/evaluation/evaluate_episodes.py","link_basis":"harvester_set","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":"1ed718456cb9f7a0"}},{"code_sha256_prefix":"9c904f0602da78d7","entry":"evaluate_episode_rtg","repo":"cannylab/casual_overhypotheses","repo_kind":"official","path":"models/decision-transformer/evaluation/evaluate_episodes.py","file_url":"https://github.com/cannylab/casual_overhypotheses/blob/HEAD/models/decision-transformer/evaluation/evaluate_episodes.py","link_basis":"harvester_set","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":"invariant","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"9c904f0602da78d7"}},{"code_sha256_prefix":"00a33466c69c5705","entry":"load_tf_weights_in_gpt2","repo":"cannylab/casual_overhypotheses","repo_kind":"official","path":"models/decision-transformer/models/trajectory_gpt2.py","file_url":"https://github.com/cannylab/casual_overhypotheses/blob/HEAD/models/decision-transformer/models/trajectory_gpt2.py","link_basis":"harvester_set","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":"00a33466c69c5705"}},{"code_sha256_prefix":"5dde12e77fb722b8","entry":"partialclass","repo":"cannylab/casual_overhypotheses","repo_kind":"official","path":"driver.py","file_url":"https://github.com/cannylab/casual_overhypotheses/blob/HEAD/driver.py","link_basis":"harvester_set","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":"5dde12e77fb722b8"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}