https://github.com/usaito/unbiased-pairwise-rec
(ICTIR2020) "Unbiased Pairwise Learning from Biased Implicit Feedback"
https://github.com/usaito/unbiased-pairwise-rec
bayesian-personalized-ranking implicit-feedback recommender-system research
Last synced: 22 days ago
JSON representation
(ICTIR2020) "Unbiased Pairwise Learning from Biased Implicit Feedback"
- Host: GitHub
- URL: https://github.com/usaito/unbiased-pairwise-rec
- Owner: usaito
- License: apache-2.0
- Created: 2020-01-06T21:51:44.000Z (about 6 years ago)
- Default Branch: master
- Last Pushed: 2022-11-21T21:55:20.000Z (about 3 years ago)
- Last Synced: 2023-03-05T13:18:11.861Z (almost 3 years ago)
- Topics: bayesian-personalized-ranking, implicit-feedback, recommender-system, research
- Language: Python
- Homepage:
- Size: 28.3 KB
- Stars: 17
- Watchers: 2
- Forks: 5
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
## Unbiased Pairwise Learning from Biased Implicit Feedback
---
### About
This repository accompanies the real-world experiments conducted in the paper "**Unbiased Pairwise Learning from Biased Implicit Feedback**" by [Yuta Saito](https://usaito.github.io/), which has been accepted by [ICTIR'20](https://ictir2020.org/).
### Dependencies
- python>=3.7
- numpy==1.18.1
- pandas==0.25.1
- scikit-learn==0.23.1
- tensorflow==1.15.2
- pyyaml==5.1.2
### Datasets
To run the simulation with real-world datasets, the following datasets need to be prepared as described below.
- download the [Yahoo! R3 dataset](https://webscope.sandbox.yahoo.com/catalog.php?datatype=r) and put `train.txt` and `test.txt` files into `./data/yahoo/raw/` directory.
- download the [Coat dataset](https://www.cs.cornell.edu/~schnabts/mnar/) and put `train.ascii` and `test.ascii` files into `./data/coat/raw/` directory.
### Running the code
First, to preprocess the datasets, navigate to the `src/` directory and run the command
```bash
python preprocess_datasets.py -d coat yahoo
```
Then, run the following command in the same directory
```bash
for data in yahoo coat
do
for model in wmf expomf crmf bpr ubpr
do
python main.py -m $model -d $data -r 10
done
done
```
This will run real-world experiments conducted in Section 4.
After running the experimens, you can summarize the results by running the following command in the `src/` directory.
```bash
python summarize_results.py -d yahoo coat
```
Once the code is finished executing, you can find the summarized results in `./paper_results/` directory.
### Acknowledgement
We thank [Minato Sato](https://github.com/satopirka) for his helpful comments, discussions, and advice.