{"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/openldn-learning-to-discover-novel-classes","title":"OpenLDN: Learning to Discover Novel Classes for Open-World Semi-Supervised Learning","arxiv_id":"2207.02261","date":"2022-07-05","proceeding":null,"authors":["Mamshad Nayeem Rizve","Navid Kardan","Salman Khan","Fahad Shahbaz Khan","Mubarak Shah"],"abstract":"Semi-supervised learning (SSL) is one of the dominant approaches to address the annotation bottleneck of supervised learning. Recent SSL methods can effectively leverage a large repository of unlabeled data to improve performance while relying on a small set of labeled data. One common assumption in most SSL methods is that the labeled and unlabeled data are from the same data distribution. However, this is hardly the case in many real-world scenarios, which limits their applicability. In this work, instead, we attempt to solve the challenging open-world SSL problem that does not make such an assumption. In the open-world SSL problem, the objective is to recognize samples of known classes, and simultaneously detect and cluster samples belonging to novel classes present in unlabeled data. This work introduces OpenLDN that utilizes a pairwise similarity loss to discover novel classes. Using a bi-level optimization rule this pairwise similarity loss exploits the information available in the labeled set to implicitly cluster novel class samples, while simultaneously recognizing samples from known classes. After discovering novel classes, OpenLDN transforms the open-world SSL problem into a standard SSL problem to achieve additional performance gains using existing SSL methods. Our extensive experiments demonstrate that OpenLDN outperforms the current state-of-the-art methods on multiple popular classification benchmarks while providing a better accuracy/training time trade-off.","url_abs":"https://arxiv.org/abs/2207.02261v2","url_pdf":"https://arxiv.org/pdf/2207.02261v2.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":"openldn-learning-to-discover-novel-classes","repo_url":"https://github.com/nayeemrizve/openldn","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"open-world-semi-supervised-learning","task_name":"Open-World Semi-Supervised Learning"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/open-world-semi-supervised-learning-on-cifar","task":"Open-World Semi-Supervised Learning","dataset":"CIFAR-10","model":"OpenLDN (ResNet-18)","rank_in_archive_order":1,"of":5,"metrics":{"All accuracy (10% Labeled)":"92.8","All accuracy (50% Labeled)":"95.4","Novel accuracy (10% Labeled)":"93.2","Novel accuracy (50% Labeled)":"95.1","Seen accuracy (10% Labeled)":"92.4","Seen accuracy (50% Labeled)":"95.7"},"uses_additional_data":false},{"leaderboard":"/sota/open-world-semi-supervised-learning-on-cifar-1","task":"Open-World Semi-Supervised Learning","dataset":"CIFAR-100","model":"OpenLDN (ResNet-18)","rank_in_archive_order":2,"of":3,"metrics":{"All accuracy (10% Labeled)":"47.7","All accuracy (50% Labeled)":"60.1","Novel accuracy (10% Labeled)":"40.0","Novel accuracy (50% Labeled)":"46.8","Seen accuracy (10% Labeled)":"55.0","Seen accuracy (50% Labeled)":"73.5"},"uses_additional_data":false},{"leaderboard":"/sota/open-world-semi-supervised-learning-on-1","task":"Open-World Semi-Supervised Learning","dataset":"ImageNet-100 (TEMI Split)","model":"OpenLDN (ResNet-50)","rank_in_archive_order":3,"of":5,"metrics":{"All accuracy (50% Labeled)":"79.1","Novel accuracy (50% Labeled)":"68.6","Seen accuracy (50% Labeled)":"89.6"},"uses_additional_data":false}],"syntology":{"syntology_url":"https://syntology.ai/paper/2207.02261","atlas_url":"https://app.syntology.ai/?focus=2207.02261","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2207.02261"}},"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/nayeemrizve/openldn","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"deterministic:regex_extraction","url":"https://github.com/nayeemrizve/OpenLDN","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran_honours":1},"by_repo_kind":{"official":{"samples":1,"ran":1,"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":"829b0a3dadf8bc76","entry":"symmetric_mse_loss","repo":"nayeemrizve/OpenLDN","repo_kind":"official","path":"base/losses/losses.py","file_url":"https://github.com/nayeemrizve/OpenLDN/blob/HEAD/base/losses/losses.py","link_basis":"first_harvest_node","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"829b0a3dadf8bc76"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}