Skip to content

StibiumT16/EquityRank

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 

Repository files navigation

EquityRank

The implementation of our SIGIR26 paper: Equity vs. Equality: Optimizing Ranking Fairness for Tailored Provider Needs

Requirements

numpy==1.23.5
recbole==1.2.0
tqdm

Data Preparation

Details can be found here.

Running

Several parameters to be set are as follows:

  • mode: Whether the ranking is done in the offline or online setting.
  • algorithm: The selected ranking algorithm. Specifically, we implement: RandomK, TopK, PoorK, TFROM, FairCo, MMF, EquityRank.
  • k: Size of the ranking list.
  • Lambda: Parameters for balancing relevance and fairness in the ranking objective.
  • data_path: Path to the dataset.
  • log_path: Path to store the log file.
  • step: Number of steps the algorithm runs in the online setting.
  • log_step: Log every few steps.
  • print_while_log: Whether to output the log content to the terminal during the running process.

For example, to run the FairCo algorithm with balance factor $\lambda=1.5$ and rank list size $k=5$ on the Musical_Instuments dataset under the offline setting, you can execute the following command:

python src/main.py \
    --mode offline \
    --data_path dataset/data/Musical_Instuments \
    --algorithm FairCo \
    --log_path log/FairCo_MI.log \
    --Lambda 1.5 \
    --k 5 \
    --print_while_log

About

The implementation of our SIGIR26 paper: Equity vs. Equality: Optimizing Ranking Fairness for Tailored Provider Needs

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages