Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/lezaf/biasexplain
A system to produce counterfactual explanations for biased recommendation results. We design, implement and evaluate efficient algorithms for computing counterfactual explanations that scale for large datasets.
https://github.com/lezaf/biasexplain
bias counterfactual explanations fairness recommendation-system
Last synced: 8 days ago
JSON representation
A system to produce counterfactual explanations for biased recommendation results. We design, implement and evaluate efficient algorithms for computing counterfactual explanations that scale for large datasets.
- Host: GitHub
- URL: https://github.com/lezaf/biasexplain
- Owner: lezaf
- License: mit
- Created: 2023-06-15T08:25:45.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-06-25T19:58:44.000Z (7 months ago)
- Last Synced: 2024-11-11T14:47:35.585Z (2 months ago)
- Topics: bias, counterfactual, explanations, fairness, recommendation-system
- Language: Jupyter Notebook
- Homepage:
- Size: 12.3 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Counterfactual Explanations for Recommendation Bias
Code and data for the paper:L. Zafeiriou, [E. Pitoura](https://www.cs.uoi.gr/~pitoura/), [P. Tsaparas](https://www.cs.uoi.gr/~tsap/), Counterfactual Explanations for Recommendation Bias, BIAS Workshop, ECML-PKDD, 2023.
## Datasets
Folder [datasets](https://github.com/lezaf/BiasExplain/tree/main/datasets) contains the real and synthetic data we used. Within this folder:### Real
Zipped folder ml-100k contains the public MovieLens dataset with 100K ratings.### Synthetic
Zipped folder synthetic contains the data we generated with different parameters (in the file name). Files *.info* contain metadata for the synthetic dataset. Files *.edges* contain the generated user-item graph in the format: ` \n` (per line), meaning `` rated ``.*Synthetic dataset filename explanation:* in e.g. `synth_0.7_b_1.3_p.edges`, 0.7 is the *bias* and 1.3 is the *popularity*.
For more details in synthetic datasets generation, see [synthetic_gen.py](https://github.com/lezaf/BiasExplain/blob/main/src/utils/synthetic_gen.py).
## Code
Folder [src](https://github.com/lezaf/BiasExplain/tree/main/src) contains the code for our algorithms. To setup the necessary dependencies, there are [environment.yml](https://github.com/lezaf/BiasExplain/blob/main/src/environment.yml) and [requirements.txt](https://github.com/lezaf/BiasExplain/blob/main/src/requirements.txt) files.
## References:
- F. Maxwell Harper and Joseph A. Konstan. 2015. The MovieLens Datasets: History and Context. ACM Transactions on Interactive Intelligent Systems (TiiS) 5, 4, Article 19 (December 2015), 19 pages. DOI=http://dx.doi.org/10.1145/2827872
- Athanasios N. Nikolakopoulos and George Karypis. 2019. RecWalk: Nearly Uncoupled Random Walks for Top-N Recommendation. In Proceedings of the Twelfth ACM International Conference on Web Search and Data Mining (WSDM '19). Association for Computing Machinery, New York, NY, USA, 150–158. https://doi.org/10.1145/3289600.3291016