{"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/everything-everywhere-all-in-one-evaluation","title":"One Model Many Scores: Using Multiverse Analysis to Prevent Fairness Hacking and Evaluate the Influence of Model Design Decisions","arxiv_id":"2308.16681","date":"2023-08-31","proceeding":null,"authors":["Jan Simson","Florian Pfisterer","Christoph Kern"],"abstract":"A vast number of systems across the world use algorithmic decision making (ADM) to (partially) automate decisions that have previously been made by humans. The downstream effects of ADM systems critically depend on the decisions made during a systems' design, implementation, and evaluation, as biases in data can be mitigated or reinforced along the modeling pipeline. Many of these decisions are made implicitly, without knowing exactly how they will influence the final system. To study this issue, we draw on insights from the field of psychology and introduce the method of multiverse analysis for algorithmic fairness. In our proposed method, we turn implicit decisions during design and evaluation into explicit ones and demonstrate their fairness implications. By combining decisions, we create a grid of all possible \"universes\" of decision combinations. For each of these universes, we compute metrics of fairness and performance. Using the resulting dataset, one can investigate the variability and robustness of fairness scores and see how and which decisions impact fairness. We demonstrate how multiverse analyses can be used to better understand fairness implications of design and evaluation decisions using an exemplary case study of predicting public health care coverage for vulnerable populations. Our results highlight how decisions regarding the evaluation of a system can lead to vastly different fairness metrics for the same model. This is problematic, as a nefarious actor could optimise or \"hack\" a fairness metric to portray a discriminating model as fair merely by changing how it is evaluated. We illustrate how a multiverse analysis can help to address this issue.","url_abs":"https://arxiv.org/abs/2308.16681v3","url_pdf":"https://arxiv.org/pdf/2308.16681v3.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":"everything-everywhere-all-in-one-evaluation","repo_url":"https://github.com/reliable-ai/fairml-multiverse","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"none","reach":{"status":"ok","spdx":"CC-BY-4.0"}}],"tasks":[{"task_slug":"decision-making","task_name":"Decision Making"},{"task_slug":"fairness","task_name":"Fairness"},{"task_slug":"model","task_name":"model"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2308.16681","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2308.16681"}},"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/reliable-ai/fairml-multiverse","reach":{"status":"ok","spdx":"CC-BY-4.0"}}],"summary":{"ran":5,"unverified":1},"by_repo_kind":{"official":{"samples":6,"ran":5,"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":6,"samples":[{"code_sha256_prefix":"5440cddfefe5aafc","entry":"continuous_var_will_be_binned","repo":"reliable-ai/fairml-multiverse","repo_kind":"official","path":"fairness_multiverse/universe.py","file_url":"https://github.com/reliable-ai/fairml-multiverse/blob/HEAD/fairness_multiverse/universe.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"CC-BY-4.0","inline_ok":false,"mcp_get_code":{"code_sha256":"5440cddfefe5aafc"}},{"code_sha256_prefix":"de520f5ba9e042d1","entry":"generate_multiverse_grid","repo":"reliable-ai/fairml-multiverse","repo_kind":"official","path":"fairness_multiverse/multiverse.py","file_url":"https://github.com/reliable-ai/fairml-multiverse/blob/HEAD/fairness_multiverse/multiverse.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"CC-BY-4.0","inline_ok":false,"mcp_get_code":{"code_sha256":"de520f5ba9e042d1"}},{"code_sha256_prefix":"82596709e31ccbb7","entry":"list_wrap","repo":"reliable-ai/fairml-multiverse","repo_kind":"official","path":"fairness_multiverse/universe.py","file_url":"https://github.com/reliable-ai/fairml-multiverse/blob/HEAD/fairness_multiverse/universe.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"CC-BY-4.0","inline_ok":false,"mcp_get_code":{"code_sha256":"82596709e31ccbb7"}},{"code_sha256_prefix":"087da90da2bc052b","entry":"tqdm_joblib","repo":"reliable-ai/fairml-multiverse","repo_kind":"official","path":"fairness_multiverse/parallel.py","file_url":"https://github.com/reliable-ai/fairml-multiverse/blob/HEAD/fairness_multiverse/parallel.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"CC-BY-4.0","inline_ok":false,"mcp_get_code":{"code_sha256":"087da90da2bc052b"}},{"code_sha256_prefix":"8fcad99fae8a70a5","entry":"verify_dir","repo":"reliable-ai/fairml-multiverse","repo_kind":"official","path":"multiverse_analysis.py","file_url":"https://github.com/reliable-ai/fairml-multiverse/blob/HEAD/multiverse_analysis.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"CC-BY-4.0","inline_ok":false,"mcp_get_code":{"code_sha256":"8fcad99fae8a70a5"}},{"code_sha256_prefix":"7691507c2e09c4a4","entry":"cut_df","repo":"reliable-ai/fairml-multiverse","repo_kind":"official","path":"fairness_multiverse/universe.py","file_url":"https://github.com/reliable-ai/fairml-multiverse/blob/HEAD/fairness_multiverse/universe.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"CC-BY-4.0","inline_ok":false,"mcp_get_code":{"code_sha256":"7691507c2e09c4a4"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}