{"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/remixmatch-semi-supervised-learning-with-1","title":"ReMixMatch: Semi-Supervised Learning with Distribution Alignment and Augmentation Anchoring","arxiv_id":"1911.09785","date":"2019-11-21","proceeding":null,"authors":["David Berthelot","Nicholas Carlini","Ekin D. Cubuk","Alex Kurakin","Kihyuk Sohn","Han Zhang","Colin Raffel"],"abstract":"We improve the recently-proposed \"MixMatch\" semi-supervised learning algorithm by introducing two new techniques: distribution alignment and augmentation anchoring. Distribution alignment encourages the marginal distribution of predictions on unlabeled data to be close to the marginal distribution of ground-truth labels. Augmentation anchoring feeds multiple strongly augmented versions of an input into the model and encourages each output to be close to the prediction for a weakly-augmented version of the same input. To produce strong augmentations, we propose a variant of AutoAugment which learns the augmentation policy while the model is being trained. Our new algorithm, dubbed ReMixMatch, is significantly more data-efficient than prior work, requiring between $5\\times$ and $16\\times$ less data to reach the same accuracy. For example, on CIFAR-10 with 250 labeled examples we reach $93.73\\%$ accuracy (compared to MixMatch's accuracy of $93.58\\%$ with $4{,}000$ examples) and a median accuracy of $84.92\\%$ with just four labels per class. We make our code and data open-source at https://github.com/google-research/remixmatch.","url_abs":"https://arxiv.org/abs/1911.09785v2","url_pdf":"https://arxiv.org/pdf/1911.09785v2.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":"remixmatch-semi-supervised-learning-with-1","repo_url":"https://github.com/google-research/remixmatch","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"tf","reach":{"status":"ok","spdx":"Apache-2.0"}},{"paper_slug":"remixmatch-semi-supervised-learning-with-1","repo_url":"https://github.com/google-research/mixmatch","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"framework":"tf","reach":{"status":"ok","spdx":"Apache-2.0"}},{"paper_slug":"remixmatch-semi-supervised-learning-with-1","repo_url":"https://github.com/zysymu/AdaMatch-pytorch","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null}],"tasks":[{"task_slug":"image-classification","task_name":"Image Classification"},{"task_slug":"semi-supervised-image-classification","task_name":"Semi-Supervised Image Classification"}],"methods":[{"method_slug":"autoaugment","method_name":"AutoAugment"},{"method_slug":"lstm","method_name":"LSTM"},{"method_slug":"sigmoid-activation","method_name":"Sigmoid Activation"},{"method_slug":"tanh-activation","method_name":"Tanh Activation"}],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/image-classification-on-stl-10","task":"Image Classification","dataset":"STL-10","model":"ReMixMatch (K=4)","rank_in_archive_order":24,"of":117,"metrics":{"Percentage correct":"93.82"},"uses_additional_data":false},{"leaderboard":"/sota/image-classification-on-stl-10","task":"Image Classification","dataset":"STL-10","model":"ReMixMatch (K=1)","rank_in_archive_order":26,"of":117,"metrics":{"Percentage correct":"93.23"},"uses_additional_data":false},{"leaderboard":"/sota/image-classification-on-stl-10","task":"Image Classification","dataset":"STL-10","model":"MixMatch","rank_in_archive_order":36,"of":117,"metrics":{"Percentage correct":"89.82"},"uses_additional_data":false},{"leaderboard":"/sota/image-classification-on-stl-10","task":"Image Classification","dataset":"STL-10","model":"CC-GAN","rank_in_archive_order":70,"of":117,"metrics":{"Percentage correct":"77.80"},"uses_additional_data":false},{"leaderboard":"/sota/image-classification-on-stl-10","task":"Image Classification","dataset":"STL-10","model":"SWWAE","rank_in_archive_order":78,"of":117,"metrics":{"Percentage correct":"74.30"},"uses_additional_data":false},{"leaderboard":"/sota/semi-supervised-image-classification-on-cifar-6","task":"Semi-Supervised Image Classification","dataset":"CIFAR-10, 250 Labels","model":"ReMixMatch","rank_in_archive_order":19,"of":27,"metrics":{"Percentage error":"6.27"},"uses_additional_data":false},{"leaderboard":"/sota/semi-supervised-image-classification-on-cifar-7","task":"Semi-Supervised Image Classification","dataset":"CIFAR-10, 40 Labels","model":"ReMixMatch","rank_in_archive_order":21,"of":21,"metrics":{"Percentage error":"19.10"},"uses_additional_data":false},{"leaderboard":"/sota/semi-supervised-image-classification-on-cifar","task":"Semi-Supervised Image Classification","dataset":"CIFAR-10, 4000 Labels","model":"ReMixMatch","rank_in_archive_order":24,"of":49,"metrics":{"Percentage error":"5.14"},"uses_additional_data":false},{"leaderboard":"/sota/semi-supervised-image-classification-on-cifar-9","task":"Semi-Supervised Image Classification","dataset":"CIFAR-100, 2500 Labels","model":"ReMixMatch","rank_in_archive_order":14,"of":16,"metrics":{"Percentage error":"27.43±0.31"},"uses_additional_data":false},{"leaderboard":"/sota/semi-supervised-image-classification-on-cifar-8","task":"Semi-Supervised Image Classification","dataset":"CIFAR-100, 400 Labels","model":"ReMixMatch","rank_in_archive_order":17,"of":21,"metrics":{"Percentage error":"44.28±2.06"},"uses_additional_data":false},{"leaderboard":"/sota/semi-supervised-image-classification-on-stl-1","task":"Semi-Supervised Image Classification","dataset":"STL-10, 1000 Labels","model":"ReMixMatch","rank_in_archive_order":8,"of":13,"metrics":{"Accuracy":"93.82"},"uses_additional_data":false},{"leaderboard":"/sota/semi-supervised-image-classification-on-svhn","task":"Semi-Supervised Image Classification","dataset":"SVHN, 1000 labels","model":"ReMixMatch","rank_in_archive_order":6,"of":17,"metrics":{"Accuracy":"97.17"},"uses_additional_data":false},{"leaderboard":"/sota/semi-supervised-image-classification-on-3","task":"Semi-Supervised Image Classification","dataset":"cifar10, 250 Labels","model":"ReMixMatch","rank_in_archive_order":1,"of":4,"metrics":{"Percentage correct":"93.73"},"uses_additional_data":false}],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=1911.09785","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"1911.09785"}},"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/google-research/remixmatch","reach":{"status":"ok","spdx":"Apache-2.0"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/google-research/mixmatch","reach":{"status":"ok","spdx":"Apache-2.0"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/zysymu/AdaMatch-pytorch","reach":null}],"summary":{"ran_draft_wrong":1,"unverified":3},"by_repo_kind":{"official":{"samples":3,"ran":0,"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":"043a02598e0288df","entry":"summary_dict","repo":null,"repo_kind":null,"path":null,"file_url":null,"link_basis":"identical_code_first_harvested_elsewhere","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":true,"licence":null,"inline_ok":false,"mcp_get_code":{"code_sha256":"043a02598e0288df"}},{"code_sha256_prefix":"0802d913d5d3694d","entry":"entropy_from_logits","repo":"google-research/mixmatch","repo_kind":"official","path":"libml/layers.py","file_url":"https://github.com/google-research/mixmatch/blob/HEAD/libml/layers.py","link_basis":"harvester_set","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":"0802d913d5d3694d"}},{"code_sha256_prefix":"d5592d7541ebcb31","entry":"entropy_penalty","repo":"google-research/mixmatch","repo_kind":"official","path":"libml/layers.py","file_url":"https://github.com/google-research/mixmatch/blob/HEAD/libml/layers.py","link_basis":"harvester_set","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":"d5592d7541ebcb31"}},{"code_sha256_prefix":"5d8684fa279a5f80","entry":"smart_shape","repo":"google-research/mixmatch","repo_kind":"official","path":"libml/layers.py","file_url":"https://github.com/google-research/mixmatch/blob/HEAD/libml/layers.py","link_basis":"harvester_set","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":"5d8684fa279a5f80"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}