{"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/one-size-fits-all-for-semantic-shifts","title":"One Size Fits All for Semantic Shifts: Adaptive Prompt Tuning for Continual Learning","arxiv_id":"2311.12048","date":"2023-11-18","proceeding":null,"authors":["Doyoung Kim","Susik Yoon","Dongmin Park","YoungJun Lee","Hwanjun Song","Jihwan Bang","Jae-Gil Lee"],"abstract":"In real-world continual learning (CL) scenarios, tasks often exhibit intricate and unpredictable semantic shifts, posing challenges for fixed prompt management strategies which are tailored to only handle semantic shifts of uniform degree (i.e., uniformly mild or uniformly abrupt). To address this limitation, we propose an adaptive prompting approach that effectively accommodates semantic shifts of varying degree where mild and abrupt shifts are mixed. AdaPromptCL employs the assign-and-refine semantic grouping mechanism that dynamically manages prompt groups in accordance with the semantic similarity between tasks, enhancing the quality of grouping through continuous refinement. Our experiment results demonstrate that AdaPromptCL outperforms existing prompting methods by up to 21.3%, especially in the benchmark datasets with diverse semantic shifts between tasks.","url_abs":"https://arxiv.org/abs/2311.12048v2","url_pdf":"https://arxiv.org/pdf/2311.12048v2.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":"one-size-fits-all-for-semantic-shifts","repo_url":"https://github.com/kaist-dmlab/adapromptcl","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"framework":"pytorch","reach":{"status":"ok","spdx":"Apache-2.0"}}],"tasks":[{"task_slug":"all","task_name":"All"},{"task_slug":"continual-learning","task_name":"Continual Learning"},{"task_slug":"management","task_name":"Management"},{"task_slug":"semantic-similarity","task_name":"Semantic Similarity"},{"task_slug":"semantic-textual-similarity","task_name":"Semantic Textual Similarity"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2311.12048","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2311.12048"}},"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":"deterministic:regex_extraction","url":"https://github.com/kaist-dmlab/AdaPromptCL","reach":{"status":"ok","spdx":"Apache-2.0"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/kaist-dmlab/adapromptcl","reach":{"status":"ok","spdx":"Apache-2.0"}}],"summary":{"ran":6,"unverified":1},"by_repo_kind":{"official":{"samples":7,"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":0,"samples":[{"code_sha256_prefix":"356e2c00330c8d41","entry":"checkpoint_filter_fn","repo":"kaist-dmlab/AdaPromptCL","repo_kind":"official","path":"clip_vit.py","file_url":"https://github.com/kaist-dmlab/AdaPromptCL/blob/HEAD/clip_vit.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"356e2c00330c8d41"}},{"code_sha256_prefix":"538940a0cabf2a8f","entry":"dataset_idx2text","repo":"kaist-dmlab/AdaPromptCL","repo_kind":"official","path":"vision_transformer.py","file_url":"https://github.com/kaist-dmlab/AdaPromptCL/blob/HEAD/vision_transformer.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"538940a0cabf2a8f"}},{"code_sha256_prefix":"6c600a2f0f2361f1","entry":"get_init_weights_vit","repo":"kaist-dmlab/AdaPromptCL","repo_kind":"official","path":"clip_vit.py","file_url":"https://github.com/kaist-dmlab/AdaPromptCL/blob/HEAD/clip_vit.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"6c600a2f0f2361f1"}},{"code_sha256_prefix":"321424d80e3f6eed","entry":"resize_pos_embed","repo":"kaist-dmlab/AdaPromptCL","repo_kind":"official","path":"clip_vit.py","file_url":"https://github.com/kaist-dmlab/AdaPromptCL/blob/HEAD/clip_vit.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"321424d80e3f6eed"}},{"code_sha256_prefix":"265ea374aab10001","entry":"target_transform","repo":"kaist-dmlab/AdaPromptCL","repo_kind":"official","path":"datasets.py","file_url":"https://github.com/kaist-dmlab/AdaPromptCL/blob/HEAD/datasets.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"265ea374aab10001"}},{"code_sha256_prefix":"925fcd07bfa13582","entry":"text_preprocess","repo":"kaist-dmlab/AdaPromptCL","repo_kind":"official","path":"vision_transformer.py","file_url":"https://github.com/kaist-dmlab/AdaPromptCL/blob/HEAD/vision_transformer.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"925fcd07bfa13582"}},{"code_sha256_prefix":"701cbaee174d4e62","entry":"EPrompt","repo":"kaist-dmlab/adapromptcl","repo_kind":"official","path":"prompt.py","file_url":"https://github.com/kaist-dmlab/adapromptcl/blob/HEAD/prompt.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"701cbaee174d4e62"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}