{"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/shrinking-class-space-for-enhanced-certainty","title":"Shrinking Class Space for Enhanced Certainty in Semi-Supervised Learning","arxiv_id":"2308.06777","date":"2023-08-13","proceeding":"ICCV 2023 1","authors":["Lihe Yang","Zhen Zhao","Lei Qi","Yu Qiao","Yinghuan Shi","Hengshuang Zhao"],"abstract":"Semi-supervised learning is attracting blooming attention, due to its success in combining unlabeled data. To mitigate potentially incorrect pseudo labels, recent frameworks mostly set a fixed confidence threshold to discard uncertain samples. This practice ensures high-quality pseudo labels, but incurs a relatively low utilization of the whole unlabeled set. In this work, our key insight is that these uncertain samples can be turned into certain ones, as long as the confusion classes for the top-1 class are detected and removed. Invoked by this, we propose a novel method dubbed ShrinkMatch to learn uncertain samples. For each uncertain sample, it adaptively seeks a shrunk class space, which merely contains the original top-1 class, as well as remaining less likely classes. Since the confusion ones are removed in this space, the re-calculated top-1 confidence can satisfy the pre-defined threshold. We then impose a consistency regularization between a pair of strongly and weakly augmented samples in the shrunk space to strive for discriminative representations. Furthermore, considering the varied reliability among uncertain samples and the gradually improved model during training, we correspondingly design two reweighting principles for our uncertain loss. Our method exhibits impressive performance on widely adopted benchmarks. Code is available at https://github.com/LiheYoung/ShrinkMatch.","url_abs":"https://arxiv.org/abs/2308.06777v1","url_pdf":"https://arxiv.org/pdf/2308.06777v1.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":"shrinking-class-space-for-enhanced-certainty","repo_url":"https://github.com/LiheYoung/ShrinkMatch","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":null}],"tasks":[{"task_slug":"semi-supervised-image-classification","task_name":"Semi-Supervised Image Classification"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/semi-supervised-image-classification-on-cifar-6","task":"Semi-Supervised Image Classification","dataset":"CIFAR-10, 250 Labels","model":"ShrinkMatch","rank_in_archive_order":7,"of":27,"metrics":{"Percentage error":"4.74"},"uses_additional_data":false},{"leaderboard":"/sota/semi-supervised-image-classification-on-cifar-7","task":"Semi-Supervised Image Classification","dataset":"CIFAR-10, 40 Labels","model":"ShrinkMatch","rank_in_archive_order":6,"of":21,"metrics":{"Percentage error":"5.08"},"uses_additional_data":false},{"leaderboard":"/sota/semi-supervised-image-classification-on-cifar-9","task":"Semi-Supervised Image Classification","dataset":"CIFAR-100, 2500 Labels","model":"ShrinkMatch","rank_in_archive_order":6,"of":16,"metrics":{"Percentage error":"25.17"},"uses_additional_data":false},{"leaderboard":"/sota/semi-supervised-image-classification-on-cifar-8","task":"Semi-Supervised Image Classification","dataset":"CIFAR-100, 400 Labels","model":"ShrinkMatch","rank_in_archive_order":5,"of":21,"metrics":{"Percentage error":"35.36"},"uses_additional_data":false},{"leaderboard":"/sota/semi-supervised-image-classification-on-stl-3","task":"Semi-Supervised Image Classification","dataset":"STL-10, 40 Labels","model":"ShrinkMatch","rank_in_archive_order":3,"of":4,"metrics":{"Accuracy":"85.98"},"uses_additional_data":false},{"leaderboard":"/sota/semi-supervised-image-classification-on-svhn-1","task":"Semi-Supervised Image Classification","dataset":"SVHN, 250 Labels","model":"ShrinkMatch","rank_in_archive_order":1,"of":15,"metrics":{"Accuracy":"98.04"},"uses_additional_data":false},{"leaderboard":"/sota/semi-supervised-image-classification-on-svhn-2","task":"Semi-Supervised Image Classification","dataset":"SVHN, 40 Labels","model":"ShrinkMatch","rank_in_archive_order":1,"of":5,"metrics":{"Percentage error":"2.51"},"uses_additional_data":false}],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2308.06777","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2308.06777"}},"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/LiheYoung/ShrinkMatch","reach":null}],"summary":{"ran_fixture":1,"unverified":1},"by_repo_kind":{"official":{"samples":2,"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":"5d2d520b917ad96e","entry":"consistency_loss_with_shrink","repo":"LiheYoung/ShrinkMatch","repo_kind":"official","path":"STL10-SVHN/models/shrinkmatch/shrinkmatch.py","file_url":"https://github.com/LiheYoung/ShrinkMatch/blob/HEAD/STL10-SVHN/models/shrinkmatch/shrinkmatch.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"5d2d520b917ad96e"}},{"code_sha256_prefix":"ee00e47c6bf875b6","entry":"ShrinkMatch","repo":"LiheYoung/ShrinkMatch","repo_kind":"official","path":"STL10-SVHN/models/shrinkmatch/shrinkmatch.py","file_url":"https://github.com/LiheYoung/ShrinkMatch/blob/HEAD/STL10-SVHN/models/shrinkmatch/shrinkmatch.py","link_basis":"first_harvest_node","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":"ee00e47c6bf875b6"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}