In this folder, we include all source codes for reproducing our first experiments for comparing our proposed rejection sampling and the traditional rescaling sampling. 

To reproduce the experiments, create the virtual environment using Python 3.11.3 or higher. Install the the required packages using the provided `requirements.txt`. Then run

```bash
python multi-pro-logistic.py --d 8 --n_data 50 --n_iters 1000000 --n_runs_zo 16 --n_processes 8 --lr 0.00001

python multi-pro.py --d 64 --n_iters 1000000 --n_runs_zo 16 --n_processes 8
```

It will generate the two `.csv` file `logistic_loss_DIM_8_NDATA_50_NITERS_1000000_LR_1e-05_MU_0.0001_ZOOBATCH_16_NRUNS_16_PROCESSES_8.csv` and `loss_DIM_64_NITERS_1000000_LR_0.001_MU_0.0001_ZOOBATCH_16_NRUNS_16_PROCESSES_8.csv`. Then run 

```bash
python vis-2.py
```

It will produce the figure for visualizing the sampling bias as shown in our manuscript.