{"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/cohort-individual-cooperative-learning-for","title":"Cohort-Individual Cooperative Learning for Multimodal Cancer Survival Analysis","arxiv_id":"2404.02394","date":"2024-04-03","proceeding":null,"authors":["Huajun Zhou","Fengtao Zhou","Hao Chen"],"abstract":"Recently, we have witnessed impressive achievements in cancer survival analysis by integrating multimodal data, e.g., pathology images and genomic profiles. However, the heterogeneity and high dimensionality of these modalities pose significant challenges for extracting discriminative representations while maintaining good generalization. In this paper, we propose a Cohort-individual Cooperative Learning (CCL) framework to advance cancer survival analysis by collaborating knowledge decomposition and cohort guidance. Specifically, first, we propose a Multimodal Knowledge Decomposition (MKD) module to explicitly decompose multimodal knowledge into four distinct components: redundancy, synergy and uniqueness of the two modalities. Such a comprehensive decomposition can enlighten the models to perceive easily overlooked yet important information, facilitating an effective multimodal fusion. Second, we propose a Cohort Guidance Modeling (CGM) to mitigate the risk of overfitting task-irrelevant information. It can promote a more comprehensive and robust understanding of the underlying multimodal data, while avoiding the pitfalls of overfitting and enhancing the generalization ability of the model. By cooperating the knowledge decomposition and cohort guidance methods, we develop a robust multimodal survival analysis model with enhanced discrimination and generalization abilities. Extensive experimental results on five cancer datasets demonstrate the effectiveness of our model in integrating multimodal data for survival analysis.","url_abs":"https://arxiv.org/abs/2404.02394v2","url_pdf":"https://arxiv.org/pdf/2404.02394v2.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":"cohort-individual-cooperative-learning-for","repo_url":"https://github.com/moothes/ccl-survival","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"framework":"pytorch","reach":{"status":"ok"}}],"tasks":[{"task_slug":"survival-analysis","task_name":"Survival Analysis"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":null,"atlas_url":"https://app.syntology.ai/?focus=2404.02394","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2404.02394"}},"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/moothes/ccl-survival","reach":{"status":"ok"}}],"summary":{"ran":9,"ran_violates":1,"unverified":3},"by_repo_kind":{"official":{"samples":13,"ran":10,"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":13,"samples":[{"code_sha256_prefix":"f75f8e1592554289","entry":"MLP_Block","repo":"moothes/ccl-survival","repo_kind":"official","path":"models/CCL/network.py","file_url":"https://github.com/moothes/ccl-survival/blob/HEAD/models/CCL/network.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":"f75f8e1592554289"}},{"code_sha256_prefix":"53ab13a48b0264d7","entry":"Reg_Block","repo":"moothes/ccl-survival","repo_kind":"official","path":"models/CCL/util.py","file_url":"https://github.com/moothes/ccl-survival/blob/HEAD/models/CCL/util.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":"53ab13a48b0264d7"}},{"code_sha256_prefix":"0a4118b12b2d283d","entry":"SNN_Block","repo":"moothes/ccl-survival","repo_kind":"official","path":"models/CCL/network.py","file_url":"https://github.com/moothes/ccl-survival/blob/HEAD/models/CCL/network.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":"0a4118b12b2d283d"}},{"code_sha256_prefix":"c04a6dd85fcea98d","entry":"SNN_Block","repo":"moothes/ccl-survival","repo_kind":"official","path":"models/CCL/util.py","file_url":"https://github.com/moothes/ccl-survival/blob/HEAD/models/CCL/util.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":"c04a6dd85fcea98d"}},{"code_sha256_prefix":"168a9cabc7a9663b","entry":"compute_softdtw","repo":"moothes/ccl-survival","repo_kind":"official","path":"models/CCL/kmeans/kmeans_pytorch/soft_dtw_cuda.py","file_url":"https://github.com/moothes/ccl-survival/blob/HEAD/models/CCL/kmeans/kmeans_pytorch/soft_dtw_cuda.py","link_basis":"harvester_set","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":"168a9cabc7a9663b"}},{"code_sha256_prefix":"ab0a02fe3f0bce01","entry":"compute_softdtw_backward","repo":"moothes/ccl-survival","repo_kind":"official","path":"models/CCL/kmeans/kmeans_pytorch/soft_dtw_cuda.py","file_url":"https://github.com/moothes/ccl-survival/blob/HEAD/models/CCL/kmeans/kmeans_pytorch/soft_dtw_cuda.py","link_basis":"harvester_set","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":"ab0a02fe3f0bce01"}},{"code_sha256_prefix":"c69dd70e2930e02e","entry":"conv1d_Block","repo":"moothes/ccl-survival","repo_kind":"official","path":"models/CCL/network.py","file_url":"https://github.com/moothes/ccl-survival/blob/HEAD/models/CCL/network.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":"c69dd70e2930e02e"}},{"code_sha256_prefix":"0f5a923229efbc0f","entry":"define_scheduler","repo":"moothes/ccl-survival","repo_kind":"official","path":"utils/scheduler.py","file_url":"https://github.com/moothes/ccl-survival/blob/HEAD/utils/scheduler.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":"0f5a923229efbc0f"}},{"code_sha256_prefix":"aa5486a3650902d8","entry":"exists","repo":"moothes/ccl-survival","repo_kind":"official","path":"models/CCL/util.py","file_url":"https://github.com/moothes/ccl-survival/blob/HEAD/models/CCL/util.py","link_basis":"harvester_set","language":"python","status":"ran_violates","verification_level":1,"contract_check":"VIOLATES","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"aa5486a3650902d8"}},{"code_sha256_prefix":"6da69690929061c7","entry":"nll_loss","repo":"moothes/ccl-survival","repo_kind":"official","path":"utils/loss_factory.py","file_url":"https://github.com/moothes/ccl-survival/blob/HEAD/utils/loss_factory.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":"6da69690929061c7"}},{"code_sha256_prefix":"93c277cc4202e777","entry":"define_optimizer","repo":"moothes/ccl-survival","repo_kind":"official","path":"utils/optimizer.py","file_url":"https://github.com/moothes/ccl-survival/blob/HEAD/utils/optimizer.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":"93c277cc4202e777"}},{"code_sha256_prefix":"1ae7198fe6e172e8","entry":"parse_args","repo":"moothes/ccl-survival","repo_kind":"official","path":"utils/options.py","file_url":"https://github.com/moothes/ccl-survival/blob/HEAD/utils/options.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":"1ae7198fe6e172e8"}},{"code_sha256_prefix":"89a318a54beb022e","entry":"timed_run","repo":"moothes/ccl-survival","repo_kind":"official","path":"models/CCL/kmeans/kmeans_pytorch/soft_dtw_cuda.py","file_url":"https://github.com/moothes/ccl-survival/blob/HEAD/models/CCL/kmeans/kmeans_pytorch/soft_dtw_cuda.py","link_basis":"harvester_set","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":"89a318a54beb022e"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}