{"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/performative-recommendation-diversifying","title":"Performative Recommendation: Diversifying Content via Strategic Incentives","arxiv_id":"2302.04336","date":"2023-02-08","proceeding":null,"authors":["Itay Eilat","Nir Rosenfeld"],"abstract":"The primary goal in recommendation is to suggest relevant content to users, but optimizing for accuracy often results in recommendations that lack diversity. To remedy this, conventional approaches such as re-ranking improve diversity by presenting more diverse items. Here we argue that to promote inherent and prolonged diversity, the system must encourage its creation. Towards this, we harness the performative nature of recommendation, and show how learning can incentivize strategic content creators to create diverse content. Our approach relies on a novel form of regularization that anticipates strategic changes to content, and penalizes for content homogeneity. We provide analytic and empirical results that demonstrate when and how diversity can be incentivized, and experimentally demonstrate the utility of our approach on synthetic and semi-synthetic data.","url_abs":"https://arxiv.org/abs/2302.04336v3","url_pdf":"https://arxiv.org/pdf/2302.04336v3.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":"performative-recommendation-diversifying","repo_url":"https://github.com/itayeilat/performative-recommendation","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"framework":"pytorch","reach":null},{"paper_slug":"performative-recommendation-diversifying","repo_url":"https://github.com/performative/performative-recommendation","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"framework":"pytorch","reach":{"status":"ok"}}],"tasks":[{"task_slug":"diversity","task_name":"Diversity"},{"task_slug":"re-ranking","task_name":"Re-Ranking"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2302.04336","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2302.04336"}},"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/itayeilat/performative-recommendation","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/performative/performative-recommendation","reach":{"status":"ok"}}],"summary":{"ran_draft_wrong":2},"by_repo_kind":{"official":{"samples":2,"ran":2,"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":2,"samples":[{"code_sha256_prefix":"09d0c8809a3ff87a","entry":"change_graph","repo":"itayeilat/performative-recommendation","repo_kind":"official","path":"synthetic_exp/user_overlap_exp.py","file_url":"https://github.com/itayeilat/performative-recommendation/blob/HEAD/synthetic_exp/user_overlap_exp.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"09d0c8809a3ff87a"}},{"code_sha256_prefix":"17ae7f46a681cc8c","entry":"get_connection_graph","repo":"itayeilat/performative-recommendation","repo_kind":"official","path":"synthetic_exp/user_overlap_exp.py","file_url":"https://github.com/itayeilat/performative-recommendation/blob/HEAD/synthetic_exp/user_overlap_exp.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"17ae7f46a681cc8c"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}