{"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/mitigating-label-noise-on-graph-via","title":"Mitigating Label Noise on Graph via Topological Sample Selection","arxiv_id":"2403.01942","date":"2024-03-04","proceeding":null,"authors":["Yuhao Wu","Jiangchao Yao","Xiaobo Xia","Jun Yu","Ruxin Wang","Bo Han","Tongliang Liu"],"abstract":"Despite the success of the carefully-annotated benchmarks, the effectiveness of existing graph neural networks (GNNs) can be considerably impaired in practice when the real-world graph data is noisily labeled. Previous explorations in sample selection have been demonstrated as an effective way for robust learning with noisy labels, however, the conventional studies focus on i.i.d data, and when moving to non-iid graph data and GNNs, two notable challenges remain: (1) nodes located near topological class boundaries are very informative for classification but cannot be successfully distinguished by the heuristic sample selection. (2) there is no available measure that considers the graph topological information to promote sample selection in a graph. To address this dilemma, we propose a $\\textit{Topological Sample Selection}$ (TSS) method that boosts the informative sample selection process in a graph by utilising topological information. We theoretically prove that our procedure minimizes an upper bound of the expected risk under target clean distribution, and experimentally show the superiority of our method compared with state-of-the-art baselines.","url_abs":"https://arxiv.org/abs/2403.01942v4","url_pdf":"https://arxiv.org/pdf/2403.01942v4.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":"mitigating-label-noise-on-graph-via","repo_url":"https://github.com/tmllab/2024_icml_tss","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok"}},{"paper_slug":"mitigating-label-noise-on-graph-via","repo_url":"https://github.com/wu-yu-hao/2024_icml_tss","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":null}],"tasks":[{"task_slug":"learning-with-noisy-labels","task_name":"Learning with noisy labels"}],"methods":[{"method_slug":"focus","method_name":"Focus"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2403.01942","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2403.01942"}},"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/tmllab/2024_ICML_TSS","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/tmllab/2024_icml_tss","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/wu-yu-hao/2024_icml_tss","reach":null}],"summary":{"ran_draft_wrong":1,"ran":5,"unverified":3},"by_repo_kind":{"official":{"samples":9,"ran":6,"repositories":2}},"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":8,"samples":[{"code_sha256_prefix":"296ecf63857163ee","entry":"class_conditional_betweenness_centrality","repo":"wu-yu-hao/2024_icml_tss","repo_kind":"official","path":"utils.py","file_url":"https://github.com/wu-yu-hao/2024_icml_tss/blob/HEAD/utils.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":"well_formed","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"296ecf63857163ee"}},{"code_sha256_prefix":"6cd020e3121e6563","entry":"difficulty_measurer","repo":"tmllab/2024_ICML_TSS","repo_kind":"official","path":"utils.py","file_url":"https://github.com/tmllab/2024_ICML_TSS/blob/HEAD/utils.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"6cd020e3121e6563"}},{"code_sha256_prefix":"22af6af53b4c250b","entry":"evaluate","repo":"tmllab/2024_ICML_TSS","repo_kind":"official","path":"train_eval.py","file_url":"https://github.com/tmllab/2024_ICML_TSS/blob/HEAD/train_eval.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"22af6af53b4c250b"}},{"code_sha256_prefix":"b662bcd70e07850c","entry":"predict","repo":"tmllab/2024_ICML_TSS","repo_kind":"official","path":"train_eval.py","file_url":"https://github.com/tmllab/2024_ICML_TSS/blob/HEAD/train_eval.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"b662bcd70e07850c"}},{"code_sha256_prefix":"106b95ab43885bd3","entry":"train","repo":"tmllab/2024_ICML_TSS","repo_kind":"official","path":"train_eval.py","file_url":"https://github.com/tmllab/2024_ICML_TSS/blob/HEAD/train_eval.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"106b95ab43885bd3"}},{"code_sha256_prefix":"291679e8720c2aa2","entry":"training_scheduler","repo":"tmllab/2024_ICML_TSS","repo_kind":"official","path":"utils.py","file_url":"https://github.com/tmllab/2024_ICML_TSS/blob/HEAD/utils.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"291679e8720c2aa2"}},{"code_sha256_prefix":"e6909ca443b75a70","entry":"multiclass_noisify","repo":"tmllab/2024_ICML_TSS","repo_kind":"official","path":"make_noise.py","file_url":"https://github.com/tmllab/2024_ICML_TSS/blob/HEAD/make_noise.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"e6909ca443b75a70"}},{"code_sha256_prefix":"92243e64bc561890","entry":"noisify_multiclass_symmetric","repo":"tmllab/2024_ICML_TSS","repo_kind":"official","path":"make_noise.py","file_url":"https://github.com/tmllab/2024_ICML_TSS/blob/HEAD/make_noise.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"92243e64bc561890"}},{"code_sha256_prefix":"aebcd3a541c14ea0","entry":"noisify_pairflip","repo":"tmllab/2024_ICML_TSS","repo_kind":"official","path":"make_noise.py","file_url":"https://github.com/tmllab/2024_ICML_TSS/blob/HEAD/make_noise.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"aebcd3a541c14ea0"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}