{"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/simple-similar-pseudo-label-exploitation-for","title":"SimPLE: Similar Pseudo Label Exploitation for Semi-Supervised Classification","arxiv_id":"2103.16725","date":"2021-03-30","proceeding":"CVPR 2021 1","authors":["Zijian Hu","Zhengyu Yang","Xuefeng Hu","Ram Nevatia"],"abstract":"A common classification task situation is where one has a large amount of data available for training, but only a small portion is annotated with class labels. The goal of semi-supervised training, in this context, is to improve classification accuracy by leverage information not only from labeled data but also from a large amount of unlabeled data. Recent works have developed significant improvements by exploring the consistency constrain between differently augmented labeled and unlabeled data. Following this path, we propose a novel unsupervised objective that focuses on the less studied relationship between the high confidence unlabeled data that are similar to each other. The new proposed Pair Loss minimizes the statistical distance between high confidence pseudo labels with similarity above a certain threshold. Combining the Pair Loss with the techniques developed by the MixMatch family, our proposed SimPLE algorithm shows significant performance gains over previous algorithms on CIFAR-100 and Mini-ImageNet, and is on par with the state-of-the-art methods on CIFAR-10 and SVHN. Furthermore, SimPLE also outperforms the state-of-the-art methods in the transfer learning setting, where models are initialized by the weights pre-trained on ImageNet or DomainNet-Real. The code is available at github.com/zijian-hu/SimPLE.","url_abs":"https://arxiv.org/abs/2103.16725v2","url_pdf":"https://arxiv.org/pdf/2103.16725v2.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":"simple-similar-pseudo-label-exploitation-for","repo_url":"https://github.com/zijian-hu/SimPLE","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":null}],"tasks":[{"task_slug":"classification-1","task_name":"Classification"},{"task_slug":"classification","task_name":"General Classification"},{"task_slug":"pseudo-label","task_name":"Pseudo Label"},{"task_slug":"semi-supervised-image-classification","task_name":"Semi-Supervised Image Classification"},{"task_slug":"transfer-learning","task_name":"Transfer Learning"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/semi-supervised-image-classification-on-mini","task":"Semi-Supervised Image Classification","dataset":"Mini-ImageNet, 4000 Labels","model":"SimPLE","rank_in_archive_order":1,"of":4,"metrics":{"Accuracy":"66.55"},"uses_additional_data":false},{"leaderboard":"/sota/semi-supervised-image-classification-on-cifar-2","task":"Semi-Supervised Image Classification","dataset":"cifar-100, 10000 Labels","model":"SimPLE (WRN-28-8)","rank_in_archive_order":11,"of":29,"metrics":{"Percentage error":"21.89"},"uses_additional_data":false}],"syntology":{"syntology_url":null,"atlas_url":"https://app.syntology.ai/?focus=2103.16725","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2103.16725"}},"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/zijian-hu/SimPLE","reach":null}],"summary":{"ran":1,"ran_draft_wrong":1,"ran_honours":1,"unverified":2},"by_repo_kind":{"official":{"samples":5,"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":"477c52811eb04b67","entry":"MixMatchBase","repo":"zijian-hu/SimPLE","repo_kind":"official","path":"models/mixmatch/simple_mixmatch.py","file_url":"https://github.com/zijian-hu/SimPLE/blob/HEAD/models/mixmatch/simple_mixmatch.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"477c52811eb04b67"}},{"code_sha256_prefix":"aa1382d8421709b0","entry":"set_model_mode","repo":"zijian-hu/SimPLE","repo_kind":"official","path":"models/mixmatch/simple_mixmatch.py","file_url":"https://github.com/zijian-hu/SimPLE/blob/HEAD/models/mixmatch/simple_mixmatch.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"aa1382d8421709b0"}},{"code_sha256_prefix":"e53854d98b01d0b3","entry":"sharpen","repo":"zijian-hu/SimPLE","repo_kind":"official","path":"models/mixmatch/simple_mixmatch.py","file_url":"https://github.com/zijian-hu/SimPLE/blob/HEAD/models/mixmatch/simple_mixmatch.py","link_basis":"first_harvest_node","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"e53854d98b01d0b3"}},{"code_sha256_prefix":"33c64ca99d1d90a4","entry":"SimPLE","repo":"zijian-hu/SimPLE","repo_kind":"official","path":"models/mixmatch/simple_mixmatch.py","file_url":"https://github.com/zijian-hu/SimPLE/blob/HEAD/models/mixmatch/simple_mixmatch.py","link_basis":"first_harvest_node","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":"33c64ca99d1d90a4"}},{"code_sha256_prefix":"19d6d78765a23821","entry":"label_guessing","repo":"zijian-hu/SimPLE","repo_kind":"official","path":"models/mixmatch/simple_mixmatch.py","file_url":"https://github.com/zijian-hu/SimPLE/blob/HEAD/models/mixmatch/simple_mixmatch.py","link_basis":"first_harvest_node","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":"19d6d78765a23821"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}