{"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/c2c-component-to-composition-learning-for","title":"C2C: Component-to-Composition Learning for Zero-Shot Compositional Action Recognition","arxiv_id":"2407.06113","date":"2024-07-08","proceeding":null,"authors":["Rongchang Li","ZhenHua Feng","Tianyang Xu","Linze Li","Xiao-Jun Wu","Muhammad Awais","Sara Atito","Josef Kittler"],"abstract":"Compositional actions consist of dynamic (verbs) and static (objects) concepts. Humans can easily recognize unseen compositions using the learned concepts. For machines, solving such a problem requires a model to recognize unseen actions composed of previously observed verbs and objects, thus requiring so-called compositional generalization ability. To facilitate this research, we propose a novel Zero-Shot Compositional Action Recognition (ZS-CAR) task. For evaluating the task, we construct a new benchmark, Something-composition (Sth-com), based on the widely used Something-Something V2 dataset. We also propose a novel Component-to-Composition (C2C) learning method to solve the new ZS-CAR task. C2C includes an independent component learning module and a composition inference module. Last, we devise an enhanced training strategy to address the challenges of component variations between seen and unseen compositions and to handle the subtle balance between learning seen and unseen actions. The experimental results demonstrate that the proposed framework significantly surpasses the existing compositional generalization methods and sets a new state-of-the-art. The new Sth-com benchmark and code are available at https://github.com/RongchangLi/ZSCAR_C2C.","url_abs":"https://arxiv.org/abs/2407.06113v2","url_pdf":"https://arxiv.org/pdf/2407.06113v2.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":"c2c-component-to-composition-learning-for","repo_url":"https://github.com/rongchangli/zscar_c2c","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":null}],"tasks":[{"task_slug":"action-recognition-in-videos","task_name":"Action Recognition"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":"https://syntology.ai/paper/2407.06113","atlas_url":"https://app.syntology.ai/?focus=2407.06113","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2407.06113"}},"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":"deterministic:regex_extraction","url":"https://github.com/RongchangLi/ZSCAR_C2C","reach":null}],"summary":{"ran":3,"ran_draft_wrong":1,"ran_fixture":2,"unverified":2},"by_repo_kind":{"official":{"samples":8,"ran":6,"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":8,"samples":[{"code_sha256_prefix":"af52f8d2b7f51045","entry":"MLP","repo":"RongchangLi/ZSCAR_C2C","repo_kind":"official","path":"codes/models/vm_models/c2c.py","file_url":"https://github.com/RongchangLi/ZSCAR_C2C/blob/HEAD/codes/models/vm_models/c2c.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"af52f8d2b7f51045"}},{"code_sha256_prefix":"2220968b7df57901","entry":"MLP_ST","repo":"RongchangLi/ZSCAR_C2C","repo_kind":"official","path":"codes/models/vm_models/c2c.py","file_url":"https://github.com/RongchangLi/ZSCAR_C2C/blob/HEAD/codes/models/vm_models/c2c.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"2220968b7df57901"}},{"code_sha256_prefix":"bd359406849231e6","entry":"TSM_Net","repo":"RongchangLi/ZSCAR_C2C","repo_kind":"official","path":"codes/models/vm_models/c2c.py","file_url":"https://github.com/RongchangLi/ZSCAR_C2C/blob/HEAD/codes/models/vm_models/c2c.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":"bd359406849231e6"}},{"code_sha256_prefix":"0a65dcb656df89ce","entry":"get_video_extractor","repo":"RongchangLi/ZSCAR_C2C","repo_kind":"official","path":"codes/models/vm_models/c2c.py","file_url":"https://github.com/RongchangLi/ZSCAR_C2C/blob/HEAD/codes/models/vm_models/c2c.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":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"0a65dcb656df89ce"}},{"code_sha256_prefix":"bdee490405b54e22","entry":"load_fasttext_embeddings","repo":"RongchangLi/ZSCAR_C2C","repo_kind":"official","path":"codes/models/vm_models/c2c.py","file_url":"https://github.com/RongchangLi/ZSCAR_C2C/blob/HEAD/codes/models/vm_models/c2c.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"DEP_MISSING","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"bdee490405b54e22"}},{"code_sha256_prefix":"5e93142115355509","entry":"load_word_embeddings","repo":"RongchangLi/ZSCAR_C2C","repo_kind":"official","path":"codes/models/vm_models/c2c.py","file_url":"https://github.com/RongchangLi/ZSCAR_C2C/blob/HEAD/codes/models/vm_models/c2c.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"DEP_MISSING","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"5e93142115355509"}},{"code_sha256_prefix":"e20e1442a25c3e16","entry":"C2C","repo":"RongchangLi/ZSCAR_C2C","repo_kind":"official","path":"codes/models/vm_models/c2c.py","file_url":"https://github.com/RongchangLi/ZSCAR_C2C/blob/HEAD/codes/models/vm_models/c2c.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":"e20e1442a25c3e16"}},{"code_sha256_prefix":"b79b832a5d580410","entry":"tsmresnet","repo":"RongchangLi/ZSCAR_C2C","repo_kind":"official","path":"codes/models/vm_models/c2c.py","file_url":"https://github.com/RongchangLi/ZSCAR_C2C/blob/HEAD/codes/models/vm_models/c2c.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":"b79b832a5d580410"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}