{"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/what-makes-transfer-learning-work-for-medical","title":"What Makes Transfer Learning Work For Medical Images: Feature Reuse & Other Factors","arxiv_id":"2203.01825","date":"2022-03-02","proceeding":"CVPR 2022 1","authors":["Christos Matsoukas","Johan Fredin Haslum","Moein Sorkhei","Magnus Söderberg","Kevin Smith"],"abstract":"Transfer learning is a standard technique to transfer knowledge from one domain to another. For applications in medical imaging, transfer from ImageNet has become the de-facto approach, despite differences in the tasks and image characteristics between the domains. However, it is unclear what factors determine whether - and to what extent - transfer learning to the medical domain is useful. The long-standing assumption that features from the source domain get reused has recently been called into question. Through a series of experiments on several medical image benchmark datasets, we explore the relationship between transfer learning, data size, the capacity and inductive bias of the model, as well as the distance between the source and target domain. Our findings suggest that transfer learning is beneficial in most cases, and we characterize the important role feature reuse plays in its success.","url_abs":"https://arxiv.org/abs/2203.01825v2","url_pdf":"https://arxiv.org/pdf/2203.01825v2.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":"what-makes-transfer-learning-work-for-medical","repo_url":"https://github.com/chrismats/feature-reuse","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"inductive-bias","task_name":"Inductive Bias"},{"task_slug":"transfer-learning","task_name":"Transfer Learning"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":null,"atlas_url":"https://app.syntology.ai/?focus=2203.01825","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2203.01825"}},"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/chrismats/feature-reuse","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"deterministic:regex_extraction","url":"https://github.com/ChrisMats/feature-reuse","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"unverified":10},"by_repo_kind":{"official":{"samples":10,"ran":0,"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":"7938be06505212fe","entry":"check_type","repo":"ChrisMats/feature-reuse","repo_kind":"official","path":"ablations/layer_importance/trainer.py","file_url":"https://github.com/ChrisMats/feature-reuse/blob/HEAD/ablations/layer_importance/trainer.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":"7938be06505212fe"}},{"code_sha256_prefix":"754f4b14895eba35","entry":"compute_stats","repo":"ChrisMats/feature-reuse","repo_kind":"official","path":"utils/_utils.py","file_url":"https://github.com/ChrisMats/feature-reuse/blob/HEAD/utils/_utils.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":"754f4b14895eba35"}},{"code_sha256_prefix":"69a7c9a0ca590ed4","entry":"dir_path","repo":"ChrisMats/feature-reuse","repo_kind":"official","path":"utils/helpfuns.py","file_url":"https://github.com/ChrisMats/feature-reuse/blob/HEAD/utils/helpfuns.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":"69a7c9a0ca590ed4"}},{"code_sha256_prefix":"ebde1b5fa87ece83","entry":"get_parent_path","repo":"ChrisMats/feature-reuse","repo_kind":"official","path":"utils/helpfuns.py","file_url":"https://github.com/ChrisMats/feature-reuse/blob/HEAD/utils/helpfuns.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":"ebde1b5fa87ece83"}},{"code_sha256_prefix":"957b396f6e712758","entry":"is_ddp","repo":"ChrisMats/feature-reuse","repo_kind":"official","path":"utils/dist_utills.py","file_url":"https://github.com/ChrisMats/feature-reuse/blob/HEAD/utils/dist_utills.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":"957b396f6e712758"}},{"code_sha256_prefix":"fa2248c4e49de21b","entry":"is_dp","repo":"ChrisMats/feature-reuse","repo_kind":"official","path":"utils/dist_utills.py","file_url":"https://github.com/ChrisMats/feature-reuse/blob/HEAD/utils/dist_utills.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":"fa2248c4e49de21b"}},{"code_sha256_prefix":"151173e565d31e90","entry":"is_rank0","repo":"ChrisMats/feature-reuse","repo_kind":"official","path":"utils/dist_utills.py","file_url":"https://github.com/ChrisMats/feature-reuse/blob/HEAD/utils/dist_utills.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":"151173e565d31e90"}},{"code_sha256_prefix":"7107762a922c0736","entry":"load_json","repo":"ChrisMats/feature-reuse","repo_kind":"official","path":"utils/helpfuns.py","file_url":"https://github.com/ChrisMats/feature-reuse/blob/HEAD/utils/helpfuns.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":"7107762a922c0736"}},{"code_sha256_prefix":"15251dc58a466c9f","entry":"model_to_CPU_state","repo":"ChrisMats/feature-reuse","repo_kind":"official","path":"utils/_utils.py","file_url":"https://github.com/ChrisMats/feature-reuse/blob/HEAD/utils/_utils.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":"15251dc58a466c9f"}},{"code_sha256_prefix":"f8837cdcc2eb415e","entry":"pil_loader","repo":"ChrisMats/feature-reuse","repo_kind":"official","path":"utils/_utils.py","file_url":"https://github.com/ChrisMats/feature-reuse/blob/HEAD/utils/_utils.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":"f8837cdcc2eb415e"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}