{"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/unsupervised-domain-expansion-for-visual","title":"Unsupervised Domain Expansion for Visual Categorization","arxiv_id":"2104.00233","date":"2021-04-01","proceeding":null,"authors":["Jie Wang","Kaibin Tian","Dayong Ding","Gang Yang","Xirong Li"],"abstract":"Expanding visual categorization into a novel domain without the need of extra annotation has been a long-term interest for multimedia intelligence. Previously, this challenge has been approached by unsupervised domain adaptation (UDA). Given labeled data from a source domain and unlabeled data from a target domain, UDA seeks for a deep representation that is both discriminative and domain-invariant. While UDA focuses on the target domain, we argue that the performance on both source and target domains matters, as in practice which domain a test example comes from is unknown. In this paper we extend UDA by proposing a new task called unsupervised domain expansion (UDE), which aims to adapt a deep model for the target domain with its unlabeled data, meanwhile maintaining the model's performance on the source domain. We propose Knowledge Distillation Domain Expansion (KDDE) as a general method for the UDE task. Its domain-adaptation module can be instantiated with any existing model. We develop a knowledge distillation based learning mechanism, enabling KDDE to optimize a single objective wherein the source and target domains are equally treated. Extensive experiments on two major benchmarks, i.e., Office-Home and DomainNet, show that KDDE compares favorably against four competitive baselines, i.e., DDC, DANN, DAAN, and CDAN, for both UDA and UDE tasks. Our study also reveals that the current UDA models improve their performance on the target domain at the cost of noticeable performance loss on the source domain.","url_abs":"https://arxiv.org/abs/2104.00233v1","url_pdf":"https://arxiv.org/pdf/2104.00233v1.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":"unsupervised-domain-expansion-for-visual","repo_url":"https://github.com/li-xirong/ude","is_official":1,"mentioned_in_paper":0,"mentioned_in_github":0,"framework":"none","reach":{"status":"ok"}},{"paper_slug":"unsupervised-domain-expansion-for-visual","repo_url":"https://github.com/theeighthday/co-teaching","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"Apache-2.0"}}],"tasks":[{"task_slug":"domain-adaptation","task_name":"Domain Adaptation"},{"task_slug":"knowledge-distillation","task_name":"Knowledge Distillation"},{"task_slug":"unsupervised-domain-adaptation","task_name":"Unsupervised Domain Adaptation"},{"task_slug":"unsupervised-domain-expansion","task_name":"Unsupervised Domain Expansion"}],"methods":[{"method_slug":"knowledge-distillation","method_name":"Knowledge Distillation"}],"datasets_introduced":[{"slug":"ude-domainnet","name":"UDE-DomainNet","full_name":"UDE-DomainNet"},{"slug":"ude-office-home","name":"UDE-Office-Home","full_name":"UDE-Office-Home"}],"methods_introduced":[],"results":[{"leaderboard":"/sota/unsupervised-domain-expansion-on-ude","task":"Unsupervised Domain Expansion","dataset":"UDE-DomainNet","model":"KDDE","rank_in_archive_order":1,"of":1,"metrics":{"1:1 Accuracy":"60.91"},"uses_additional_data":false},{"leaderboard":"/sota/unsupervised-domain-expansion-on-ude-office","task":"Unsupervised Domain Expansion","dataset":"UDE-Office-Home","model":"KDDE","rank_in_archive_order":1,"of":1,"metrics":{"1:1 Accuracy":"72.67"},"uses_additional_data":false}],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2104.00233","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2104.00233"}},"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/theeighthday/co-teaching","reach":{"status":"ok","spdx":"Apache-2.0"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/li-xirong/ude","reach":{"status":"ok"}}],"summary":{"ran_draft_wrong":3,"unverified":8},"by_repo_kind":{"listed":{"samples":11,"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":"d9def42110729a85","entry":"conv1x1","repo":"theeighthday/co-teaching","repo_kind":"listed","path":"model/ResNet.py","file_url":"https://github.com/theeighthday/co-teaching/blob/HEAD/model/ResNet.py","link_basis":"harvester_set","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"d9def42110729a85"}},{"code_sha256_prefix":"160bb14bd76201b4","entry":"conv3x3","repo":"theeighthday/co-teaching","repo_kind":"listed","path":"model/ResNet.py","file_url":"https://github.com/theeighthday/co-teaching/blob/HEAD/model/ResNet.py","link_basis":"harvester_set","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"160bb14bd76201b4"}},{"code_sha256_prefix":"fac5364e2f53c6db","entry":"conv3x3","repo":"theeighthday/co-teaching","repo_kind":"listed","path":"model/SRDC.py","file_url":"https://github.com/theeighthday/co-teaching/blob/HEAD/model/SRDC.py","link_basis":"harvester_set","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"fac5364e2f53c6db"}},{"code_sha256_prefix":"59bc5237665af821","entry":"CORAL","repo":"theeighthday/co-teaching","repo_kind":"listed","path":"model/DDC.py","file_url":"https://github.com/theeighthday/co-teaching/blob/HEAD/model/DDC.py","link_basis":"harvester_set","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":"59bc5237665af821"}},{"code_sha256_prefix":"84d9315e5fe9fa0a","entry":"SRDC","repo":"theeighthday/co-teaching","repo_kind":"listed","path":"model/SRDC.py","file_url":"https://github.com/theeighthday/co-teaching/blob/HEAD/model/SRDC.py","link_basis":"harvester_set","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":"84d9315e5fe9fa0a"}},{"code_sha256_prefix":"7e095a7e34683c5f","entry":"get_anno_path","repo":"theeighthday/co-teaching","repo_kind":"listed","path":"common.py","file_url":"https://github.com/theeighthday/co-teaching/blob/HEAD/common.py","link_basis":"harvester_set","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":"7e095a7e34683c5f"}},{"code_sha256_prefix":"6eec777f50217f62","entry":"get_pred_path","repo":"theeighthday/co-teaching","repo_kind":"listed","path":"common.py","file_url":"https://github.com/theeighthday/co-teaching/blob/HEAD/common.py","link_basis":"harvester_set","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":"6eec777f50217f62"}},{"code_sha256_prefix":"90ea246d6c96c6f7","entry":"load_data","repo":"theeighthday/co-teaching","repo_kind":"listed","path":"dataloader.py","file_url":"https://github.com/theeighthday/co-teaching/blob/HEAD/dataloader.py","link_basis":"harvester_set","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":"90ea246d6c96c6f7"}},{"code_sha256_prefix":"4755a7e60ba83ce0","entry":"parse_args","repo":"theeighthday/co-teaching","repo_kind":"listed","path":"common.py","file_url":"https://github.com/theeighthday/co-teaching/blob/HEAD/common.py","link_basis":"harvester_set","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":"4755a7e60ba83ce0"}},{"code_sha256_prefix":"a9f2f32fb138574c","entry":"resnet18","repo":"theeighthday/co-teaching","repo_kind":"listed","path":"model/ResNet.py","file_url":"https://github.com/theeighthday/co-teaching/blob/HEAD/model/ResNet.py","link_basis":"harvester_set","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":"a9f2f32fb138574c"}},{"code_sha256_prefix":"b5a2b5ee46d974cb","entry":"resnet50","repo":"theeighthday/co-teaching","repo_kind":"listed","path":"model/SRDC.py","file_url":"https://github.com/theeighthday/co-teaching/blob/HEAD/model/SRDC.py","link_basis":"harvester_set","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":"b5a2b5ee46d974cb"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}