{"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/featmatch-feature-based-augmentation-for-semi","title":"FeatMatch: Feature-Based Augmentation for Semi-Supervised Learning","arxiv_id":"2007.08505","date":"2020-07-16","proceeding":"ECCV 2020 8","authors":["Chia-Wen Kuo","Chih-Yao Ma","Jia-Bin Huang","Zsolt Kira"],"abstract":"Recent state-of-the-art semi-supervised learning (SSL) methods use a combination of image-based transformations and consistency regularization as core components. Such methods, however, are limited to simple transformations such as traditional data augmentation or convex combinations of two images. In this paper, we propose a novel learned feature-based refinement and augmentation method that produces a varied set of complex transformations. Importantly, these transformations also use information from both within-class and across-class prototypical representations that we extract through clustering. We use features already computed across iterations by storing them in a memory bank, obviating the need for significant extra computation. These transformations, combined with traditional image-based augmentation, are then used as part of the consistency-based regularization loss. We demonstrate that our method is comparable to current state of art for smaller datasets (CIFAR-10 and SVHN) while being able to scale up to larger datasets such as CIFAR-100 and mini-Imagenet where we achieve significant gains over the state of art (\\textit{e.g.,} absolute 17.44\\% gain on mini-ImageNet). We further test our method on DomainNet, demonstrating better robustness to out-of-domain unlabeled data, and perform rigorous ablations and analysis to validate the method.","url_abs":"https://arxiv.org/abs/2007.08505v1","url_pdf":"https://arxiv.org/pdf/2007.08505v1.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":"featmatch-feature-based-augmentation-for-semi","repo_url":"https://github.com/GT-RIPL/FeatMatch","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"NOASSERTION"}},{"paper_slug":"featmatch-feature-based-augmentation-for-semi","repo_url":"https://github.com/JiwonCocoder/label_transformer","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null}],"tasks":[{"task_slug":"clustering","task_name":"Clustering"},{"task_slug":"data-augmentation","task_name":"Data Augmentation"},{"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-mini-1","task":"Semi-Supervised Image Classification","dataset":"Mini-ImageNet, 10000 Labels","model":"FeatMatch","rank_in_archive_order":1,"of":3,"metrics":{"Accuracy":"65.21"},"uses_additional_data":false},{"leaderboard":"/sota/semi-supervised-image-classification-on-mini","task":"Semi-Supervised Image Classification","dataset":"Mini-ImageNet, 4000 Labels","model":"FeatMatch","rank_in_archive_order":2,"of":4,"metrics":{"Accuracy":"60.95"},"uses_additional_data":false}],"syntology":{"syntology_url":"https://syntology.ai/paper/2007.08505","atlas_url":"https://app.syntology.ai/?focus=2007.08505","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2007.08505"}},"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/GT-RIPL/FeatMatch","reach":{"status":"ok","spdx":"NOASSERTION"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/JiwonCocoder/label_transformer","reach":null}],"summary":{"ran_honours":1},"by_repo_kind":{"listed":{"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":1,"samples":[{"code_sha256_prefix":"6d410bd070697faa","entry":"ce_loss_check","repo":"JiwonCocoder/label_transformer","repo_kind":"listed","path":"train/featmatch.py","file_url":"https://github.com/JiwonCocoder/label_transformer/blob/HEAD/train/featmatch.py","link_basis":"first_harvest_node","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"invariant","behaviour_fingerprint":false,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"6d410bd070697faa"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}