{"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/tesla-test-time-self-learning-with-automatic","title":"TeSLA: Test-Time Self-Learning With Automatic Adversarial Augmentation","arxiv_id":"2303.09870","date":"2023-03-17","proceeding":"CVPR 2023 1","authors":["Devavrat Tomar","Guillaume Vray","Behzad Bozorgtabar","Jean-Philippe Thiran"],"abstract":"Most recent test-time adaptation methods focus on only classification tasks, use specialized network architectures, destroy model calibration or rely on lightweight information from the source domain. To tackle these issues, this paper proposes a novel Test-time Self-Learning method with automatic Adversarial augmentation dubbed TeSLA for adapting a pre-trained source model to the unlabeled streaming test data. In contrast to conventional self-learning methods based on cross-entropy, we introduce a new test-time loss function through an implicitly tight connection with the mutual information and online knowledge distillation. Furthermore, we propose a learnable efficient adversarial augmentation module that further enhances online knowledge distillation by simulating high entropy augmented images. Our method achieves state-of-the-art classification and segmentation results on several benchmarks and types of domain shifts, particularly on challenging measurement shifts of medical images. TeSLA also benefits from several desirable properties compared to competing methods in terms of calibration, uncertainty metrics, insensitivity to model architectures, and source training strategies, all supported by extensive ablations. Our code and models are available on GitHub.","url_abs":"https://arxiv.org/abs/2303.09870v1","url_pdf":"https://arxiv.org/pdf/2303.09870v1.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":"tesla-test-time-self-learning-with-automatic","repo_url":"https://github.com/devavrattomar/tesla","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"knowledge-distillation","task_name":"Knowledge Distillation"},{"task_slug":"self-learning","task_name":"Self-Learning"},{"task_slug":"test-time-adaptation","task_name":"Test-time Adaptation"}],"methods":[{"method_slug":"knowledge-distillation","method_name":"Knowledge Distillation"},{"method_slug":"self-learning","method_name":"Self-Learning"},{"method_slug":"test","method_name":"Test"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2303.09870","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2303.09870"}},"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/devavratTomar/TeSLA","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran_fixture":1,"ran_honours":2,"unverified":3},"by_repo_kind":{"official":{"samples":6,"ran":3,"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":"8cf411cde4e9394b","entry":"gan_loss","repo":"devavratTomar/TeSLA","repo_kind":"official","path":"losses/seg_losses.py","file_url":"https://github.com/devavratTomar/TeSLA/blob/HEAD/losses/seg_losses.py","link_basis":"harvester_set","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"8cf411cde4e9394b"}},{"code_sha256_prefix":"edd7184ac144c4fa","entry":"l_loader","repo":"devavratTomar/TeSLA","repo_kind":"official","path":"dataloaders/classification/imagenet.py","file_url":"https://github.com/devavratTomar/TeSLA/blob/HEAD/dataloaders/classification/imagenet.py","link_basis":"harvester_set","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"well_formed","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"edd7184ac144c4fa"}},{"code_sha256_prefix":"2c5ce24ea2b5d2a4","entry":"rgb_loader","repo":"devavratTomar/TeSLA","repo_kind":"official","path":"dataloaders/classification/imagenet.py","file_url":"https://github.com/devavratTomar/TeSLA/blob/HEAD/dataloaders/classification/imagenet.py","link_basis":"harvester_set","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"well_formed","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"2c5ce24ea2b5d2a4"}},{"code_sha256_prefix":"0748e29a637d95ec","entry":"focal_loss","repo":"devavratTomar/TeSLA","repo_kind":"official","path":"losses/seg_losses.py","file_url":"https://github.com/devavratTomar/TeSLA/blob/HEAD/losses/seg_losses.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":"0748e29a637d95ec"}},{"code_sha256_prefix":"bd521a3b5cd93879","entry":"make_dataset","repo":"devavratTomar/TeSLA","repo_kind":"official","path":"dataloaders/classification/imagenet.py","file_url":"https://github.com/devavratTomar/TeSLA/blob/HEAD/dataloaders/classification/imagenet.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":"bd521a3b5cd93879"}},{"code_sha256_prefix":"e8a37518fb0fe089","entry":"parse_opt","repo":"devavratTomar/TeSLA","repo_kind":"official","path":"run_with_submitit.py","file_url":"https://github.com/devavratTomar/TeSLA/blob/HEAD/run_with_submitit.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":"e8a37518fb0fe089"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}