{"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/peer-loss-functions-learning-from-noisy","title":"Peer Loss Functions: Learning from Noisy Labels without Knowing Noise Rates","arxiv_id":"1910.03231","date":"2019-10-08","proceeding":"ICML 2020 1","authors":["Yang Liu","Hongyi Guo"],"abstract":"Learning with noisy labels is a common challenge in supervised learning. Existing approaches often require practitioners to specify noise rates, i.e., a set of parameters controlling the severity of label noises in the problem, and the specifications are either assumed to be given or estimated using additional steps. In this work, we introduce a new family of loss functions that we name as peer loss functions, which enables learning from noisy labels and does not require a priori specification of the noise rates. Peer loss functions work within the standard empirical risk minimization (ERM) framework. We show that, under mild conditions, performing ERM with peer loss functions on the noisy dataset leads to the optimal or a near-optimal classifier as if performing ERM over the clean training data, which we do not have access to. We pair our results with an extensive set of experiments. Peer loss provides a way to simplify model development when facing potentially noisy training labels, and can be promoted as a robust candidate loss function in such situations.","url_abs":"https://arxiv.org/abs/1910.03231v7","url_pdf":"https://arxiv.org/pdf/1910.03231v7.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":"peer-loss-functions-learning-from-noisy","repo_url":"https://github.com/kumar10725/Keras-Determinant-based-Mutual-Information-loss-DMI-loss-","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"tf","reach":{"status":"ok","spdx":"Unlicense"}},{"paper_slug":"peer-loss-functions-learning-from-noisy","repo_url":"https://github.com/weijiaheng/Multi-class-Peer-Loss-functions","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null}],"tasks":[{"task_slug":"learning-with-noisy-labels","task_name":"Learning with noisy labels"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/learning-with-noisy-labels-on-cifar-100n","task":"Learning with noisy labels","dataset":"CIFAR-100N","model":"Peer Loss","rank_in_archive_order":16,"of":24,"metrics":{"Accuracy (mean)":"57.59"},"uses_additional_data":false},{"leaderboard":"/sota/learning-with-noisy-labels-on-cifar-10n","task":"Learning with noisy labels","dataset":"CIFAR-10N-Aggregate","model":"Peer Loss","rank_in_archive_order":19,"of":26,"metrics":{"Accuracy (mean)":"90.75"},"uses_additional_data":false},{"leaderboard":"/sota/learning-with-noisy-labels-on-cifar-10n-1","task":"Learning with noisy labels","dataset":"CIFAR-10N-Random1","model":"Peer Loss","rank_in_archive_order":19,"of":24,"metrics":{"Accuracy (mean)":"89.06"},"uses_additional_data":false},{"leaderboard":"/sota/learning-with-noisy-labels-on-cifar-10n-2","task":"Learning with noisy labels","dataset":"CIFAR-10N-Random2","model":"Peer Loss","rank_in_archive_order":17,"of":23,"metrics":{"Accuracy (mean)":"88.76"},"uses_additional_data":false},{"leaderboard":"/sota/learning-with-noisy-labels-on-cifar-10n-3","task":"Learning with noisy labels","dataset":"CIFAR-10N-Random3","model":"Peer Loss","rank_in_archive_order":17,"of":23,"metrics":{"Accuracy (mean)":"88.57"},"uses_additional_data":false},{"leaderboard":"/sota/learning-with-noisy-labels-on-cifar-10n-worst","task":"Learning with noisy labels","dataset":"CIFAR-10N-Worst","model":"Peer Loss","rank_in_archive_order":19,"of":25,"metrics":{"Accuracy (mean)":"82.53"},"uses_additional_data":false}],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=1910.03231","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"1910.03231"}},"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/weijiaheng/Multi-class-Peer-Loss-functions","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/kumar10725/Keras-Determinant-based-Mutual-Information-loss-DMI-loss-","reach":{"status":"ok","spdx":"Unlicense"}}],"summary":{"ran_honours":4,"unverified":2},"by_repo_kind":{"listed":{"samples":6,"ran":4,"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":"4e50a2821ea4d47b","entry":"f_alpha","repo":"weijiaheng/Multi-class-Peer-Loss-functions","repo_kind":"listed","path":"MNIST/runner.py","file_url":"https://github.com/weijiaheng/Multi-class-Peer-Loss-functions/blob/HEAD/MNIST/runner.py","link_basis":"first_harvest_node","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"well_formed","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"4e50a2821ea4d47b"}},{"code_sha256_prefix":"400ca42b786ad4aa","entry":"test","repo":"weijiaheng/Multi-class-Peer-Loss-functions","repo_kind":"listed","path":"CIFAR-10/runner.py","file_url":"https://github.com/weijiaheng/Multi-class-Peer-Loss-functions/blob/HEAD/CIFAR-10/runner.py","link_basis":"first_harvest_node","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"well_formed","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"400ca42b786ad4aa"}},{"code_sha256_prefix":"c2d3e976a74b0705","entry":"test","repo":"weijiaheng/Multi-class-Peer-Loss-functions","repo_kind":"listed","path":"CIFAR-100/runner.py","file_url":"https://github.com/weijiaheng/Multi-class-Peer-Loss-functions/blob/HEAD/CIFAR-100/runner.py","link_basis":"first_harvest_node","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"well_formed","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"c2d3e976a74b0705"}},{"code_sha256_prefix":"ad3fb425de0113bf","entry":"test","repo":"weijiaheng/Multi-class-Peer-Loss-functions","repo_kind":"listed","path":"MNIST/runner.py","file_url":"https://github.com/weijiaheng/Multi-class-Peer-Loss-functions/blob/HEAD/MNIST/runner.py","link_basis":"first_harvest_node","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"well_formed","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"ad3fb425de0113bf"}},{"code_sha256_prefix":"5c4c1cf669bba6f1","entry":"f_alpha","repo":"weijiaheng/Multi-class-Peer-Loss-functions","repo_kind":"listed","path":"CIFAR-10/runner.py","file_url":"https://github.com/weijiaheng/Multi-class-Peer-Loss-functions/blob/HEAD/CIFAR-10/runner.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":"5c4c1cf669bba6f1"}},{"code_sha256_prefix":"40f44575d8b0abb0","entry":"f_alpha","repo":"weijiaheng/Multi-class-Peer-Loss-functions","repo_kind":"listed","path":"CIFAR-100/runner.py","file_url":"https://github.com/weijiaheng/Multi-class-Peer-Loss-functions/blob/HEAD/CIFAR-100/runner.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":"40f44575d8b0abb0"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}