{"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/bifair-training-fair-models-with-bilevel","title":"Fair Machine Learning under Limited Demographically Labeled Data","arxiv_id":"2106.04757","date":"2021-06-03","proceeding":null,"authors":["Mustafa Safa Ozdayi","Murat Kantarcioglu","Rishabh Iyer"],"abstract":"Research has shown that, machine learning models might inherit and propagate undesired social biases encoded in the data. To address this problem, fair training algorithms are developed. However, most algorithms assume we know demographic/sensitive data features such as gender and race. This assumption falls short in scenarios where collecting demographic information is not feasible due to privacy concerns, and data protection policies. A recent line of work develops fair training methods that can function without any demographic feature on the data, that are collectively referred as Rawlsian methods. Yet, we show in experiments that, Rawlsian methods tend to exhibit relatively high bias. Given this, we look at the middle ground between the previous approaches, and consider a setting where we know the demographic attributes for only a small subset of our data. In such a setting, we design fair training algorithms which exhibit both good utility, and low bias. In particular, we show that our techniques can train models to significantly outperform Rawlsian approaches even when 0.1% of demographic attributes are available in the training data. Furthermore, our main algorithm can accommodate multiple training objectives easily. We expand our main algorithm to achieve robustness to label noise in addition to fairness in the limited demographics setting to highlight that property as well.","url_abs":"https://arxiv.org/abs/2106.04757v2","url_pdf":"https://arxiv.org/pdf/2106.04757v2.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":"bifair-training-fair-models-with-bilevel","repo_url":"https://github.com/TinfoilHat0/BiFair","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"machine-learning","task_name":"BIG-bench Machine Learning"},{"task_slug":"bilevel-optimization","task_name":"Bilevel Optimization"},{"task_slug":"fairness","task_name":"Fairness"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":null,"atlas_url":"https://app.syntology.ai/?focus=2106.04757","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2106.04757"}},"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/TinfoilHat0/BiFair","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"unverified":5},"by_repo_kind":{"official":{"samples":5,"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":0,"samples":[{"code_sha256_prefix":"36e7c1b5c52b2745","entry":"gen_synth_data","repo":"TinfoilHat0/BiFair","repo_kind":"official","path":"src/my_utils.py","file_url":"https://github.com/TinfoilHat0/BiFair/blob/HEAD/src/my_utils.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":"36e7c1b5c52b2745"}},{"code_sha256_prefix":"73f1b25b3ab3d0da","entry":"get_data","repo":"TinfoilHat0/BiFair","repo_kind":"official","path":"src/my_utils.py","file_url":"https://github.com/TinfoilHat0/BiFair/blob/HEAD/src/my_utils.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":"73f1b25b3ab3d0da"}},{"code_sha256_prefix":"7930bfc0387cc451","entry":"get_dem_data","repo":"TinfoilHat0/BiFair","repo_kind":"official","path":"src/my_utils.py","file_url":"https://github.com/TinfoilHat0/BiFair/blob/HEAD/src/my_utils.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":"7930bfc0387cc451"}},{"code_sha256_prefix":"a971a85e36b3cd8c","entry":"get_kamiran_weights","repo":"TinfoilHat0/BiFair","repo_kind":"official","path":"src/fair_algs.py","file_url":"https://github.com/TinfoilHat0/BiFair/blob/HEAD/src/fair_algs.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":"a971a85e36b3cd8c"}},{"code_sha256_prefix":"300d66040e8a18d9","entry":"get_model","repo":"TinfoilHat0/BiFair","repo_kind":"official","path":"src/my_models.py","file_url":"https://github.com/TinfoilHat0/BiFair/blob/HEAD/src/my_models.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":"300d66040e8a18d9"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}