{"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/ecotta-memory-efficient-continual-test-time","title":"EcoTTA: Memory-Efficient Continual Test-time Adaptation via Self-distilled Regularization","arxiv_id":"2303.01904","date":"2023-03-03","proceeding":"CVPR 2023 1","authors":["Junha Song","Jungsoo Lee","In So Kweon","Sungha Choi"],"abstract":"This paper presents a simple yet effective approach that improves continual test-time adaptation (TTA) in a memory-efficient manner. TTA may primarily be conducted on edge devices with limited memory, so reducing memory is crucial but has been overlooked in previous TTA studies. In addition, long-term adaptation often leads to catastrophic forgetting and error accumulation, which hinders applying TTA in real-world deployments. Our approach consists of two components to address these issues. First, we present lightweight meta networks that can adapt the frozen original networks to the target domain. This novel architecture minimizes memory consumption by decreasing the size of intermediate activations required for backpropagation. Second, our novel self-distilled regularization controls the output of the meta networks not to deviate significantly from the output of the frozen original networks, thereby preserving well-trained knowledge from the source domain. Without additional memory, this regularization prevents error accumulation and catastrophic forgetting, resulting in stable performance even in long-term test-time adaptation. We demonstrate that our simple yet effective strategy outperforms other state-of-the-art methods on various benchmarks for image classification and semantic segmentation tasks. Notably, our proposed method with ResNet-50 and WideResNet-40 takes 86% and 80% less memory than the recent state-of-the-art method, CoTTA.","url_abs":"https://arxiv.org/abs/2303.01904v4","url_pdf":"https://arxiv.org/pdf/2303.01904v4.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":"ecotta-memory-efficient-continual-test-time","repo_url":"https://github.com/Lily-Le/EcoTTA","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null}],"tasks":[{"task_slug":"image-classification","task_name":"Image Classification"},{"task_slug":"semantic-segmentation","task_name":"Semantic Segmentation"},{"task_slug":"test-time-adaptation","task_name":"Test-time Adaptation"},{"task_slug":"image-classification","task_name":"image-classification"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":"https://syntology.ai/paper/2303.01904","atlas_url":"https://app.syntology.ai/?focus=2303.01904","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2303.01904"}},"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/Lily-Le/EcoTTA","reach":null}],"summary":{"ran":2,"unverified":1},"by_repo_kind":{"listed":{"samples":3,"ran":2,"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":3,"samples":[{"code_sha256_prefix":"4b8966f2669154db","entry":"classifier","repo":"Lily-Le/EcoTTA","repo_kind":"listed","path":"ecotta_models/resnet50.py","file_url":"https://github.com/Lily-Le/EcoTTA/blob/HEAD/ecotta_models/resnet50.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":"invariant","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"4b8966f2669154db"}},{"code_sha256_prefix":"c4be85c44e685818","entry":"input_conv","repo":"Lily-Le/EcoTTA","repo_kind":"listed","path":"ecotta_models/resnet50.py","file_url":"https://github.com/Lily-Le/EcoTTA/blob/HEAD/ecotta_models/resnet50.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":"c4be85c44e685818"}},{"code_sha256_prefix":"abe34b09ec3b7bb7","entry":"simplify_resnet50","repo":"Lily-Le/EcoTTA","repo_kind":"listed","path":"ecotta_models/resnet50.py","file_url":"https://github.com/Lily-Le/EcoTTA/blob/HEAD/ecotta_models/resnet50.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":"abe34b09ec3b7bb7"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}