{"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/a-unified-objective-for-novel-class-discovery","title":"A Unified Objective for Novel Class Discovery","arxiv_id":"2108.08536","date":"2021-08-19","proceeding":"ICCV 2021 10","authors":["Enrico Fini","Enver Sangineto","Stéphane Lathuilière","Zhun Zhong","Moin Nabi","Elisa Ricci"],"abstract":"In this paper, we study the problem of Novel Class Discovery (NCD). NCD aims at inferring novel object categories in an unlabeled set by leveraging from prior knowledge of a labeled set containing different, but related classes. Existing approaches tackle this problem by considering multiple objective functions, usually involving specialized loss terms for the labeled and the unlabeled samples respectively, and often requiring auxiliary regularization terms. In this paper, we depart from this traditional scheme and introduce a UNified Objective function (UNO) for discovering novel classes, with the explicit purpose of favoring synergy between supervised and unsupervised learning. Using a multi-view self-labeling strategy, we generate pseudo-labels that can be treated homogeneously with ground truth labels. This leads to a single classification objective operating on both known and unknown classes. Despite its simplicity, UNO outperforms the state of the art by a significant margin on several benchmarks (~+10% on CIFAR-100 and +8% on ImageNet). The project page is available at: https://ncd-uno.github.io.","url_abs":"https://arxiv.org/abs/2108.08536v4","url_pdf":"https://arxiv.org/pdf/2108.08536v4.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":"a-unified-objective-for-novel-class-discovery","repo_url":"https://github.com/DonkeyShot21/UNO","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null}],"tasks":[{"task_slug":"novel-class-discovery","task_name":"Novel Class Discovery"},{"task_slug":"novel-object-detection","task_name":"Novel Object Detection"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/novel-object-detection-on-lvis-v1-0-val","task":"Novel Object Detection","dataset":"LVIS v1.0 val","model":"UNO Fini et al. (2021)++","rank_in_archive_order":3,"of":5,"metrics":{"All mAP":"2.18","Known mAP":"21.09","Novel mAP":"0.61"},"uses_additional_data":false}],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2108.08536","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2108.08536"}},"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/DonkeyShot21/UNO","reach":null}],"summary":{"ran":4},"by_repo_kind":{"listed":{"samples":4,"ran":4,"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":"18269dd4199778cf","entry":"MLP","repo":"DonkeyShot21/UNO","repo_kind":"listed","path":"utils/nets.py","file_url":"https://github.com/DonkeyShot21/UNO/blob/HEAD/utils/nets.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"18269dd4199778cf"}},{"code_sha256_prefix":"6b32b9b80b42916a","entry":"MultiHead","repo":"DonkeyShot21/UNO","repo_kind":"listed","path":"utils/nets.py","file_url":"https://github.com/DonkeyShot21/UNO/blob/HEAD/utils/nets.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":"deterministic","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"6b32b9b80b42916a"}},{"code_sha256_prefix":"8127aa929c6c1ac3","entry":"MultiHeadResNet","repo":"DonkeyShot21/UNO","repo_kind":"listed","path":"utils/nets.py","file_url":"https://github.com/DonkeyShot21/UNO/blob/HEAD/utils/nets.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":"deterministic","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"8127aa929c6c1ac3"}},{"code_sha256_prefix":"b604b5a859cd5a50","entry":"Prototypes","repo":"DonkeyShot21/UNO","repo_kind":"listed","path":"utils/nets.py","file_url":"https://github.com/DonkeyShot21/UNO/blob/HEAD/utils/nets.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"b604b5a859cd5a50"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}