Skip to content

Commit

Permalink
archival of neurips21 work, updated documentation
Browse files Browse the repository at this point in the history
  • Loading branch information
maumueller committed Jul 18, 2023
1 parent f0f299b commit 6e03a27
Show file tree
Hide file tree
Showing 112 changed files with 14 additions and 63 deletions.
68 changes: 5 additions & 63 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,75 +2,17 @@

<http://big-ann-benchmarks.com/>

## Install

The only prerequisite is Python and Docker.

1. Clone the repo.
2. Run `pip install -r requirements_py3.10.txt` (Use `requirements_py38.txt` if you have Python 3.8.)
3. Install docker by following instructions [here](https://docs.docker.com/engine/install/ubuntu/).
You might also want to follow the post-install steps for running docker in non-root user mode.
3. Run `python install.py` to build all the libraries inside Docker containers.

## Storing Data

The framework assumes that all data is stored in `data/`.
Please use a symlink if your datasets and indices are supposed to be stored somewhere else.
The location of the linked folder matters a great deal for SSD-based search performance in T2.
A local SSD such as the one found on Azure Ls-series VMs is better than remote disks, even premium ones.
See [T1/T2](t1_t2/README.md) for more details.

## Data sets
## Datasets

See <http://big-ann-benchmarks.com/> for details on the different datasets.

### Dataset Preparation

Before running experiments, datasets have to be downloaded. All preparation can be carried out by calling

```python
python create_dataset.py --dataset [bigann-1B | deep-1B | text2image-1B | ssnpp-1B | msturing-1B | msspacev-1B]
```

Note that downloading the datasets can potentially take many hours.

For local testing, there exist smaller random datasets `random-xs` and `random-range-xs`.
Furthermore, most datasets have 1M, 10M and 100M versions, run `python create_dataset -h` to get an overview.


## Running the benchmark

Run `python run.py --dataset $DS --algorithm $ALGO` where `DS` is the dataset you are running on,
and `ALGO` is the name of the algorithm. (Use `python run.py --list-algorithms`) to get an overview.
`python run.py -h` provides you with further options.

The parameters used by the implementation to build and query the index can be found in `algos-2021.yaml`.

## Running the track 1 baseline
After running the installation, we can evaluate the baseline as follows.

```bash

for DS in bigann-1B deep-1B text2image-1B ssnpp-1B msturing-1B msspacev-1B;
do
python run.py --dataset $DS --algorithm faiss-t1;
done
```

On a 28-core Xeon E5-2690 v4 that provided 100MB/s downloads, carrying out the baseline experiments took roughly 7 days.

To evaluate the results, run
```bash
sudo chmod -R 777 results/
python data_export.py --output res.csv
python3.8 eval/show_operating_points.py --algorithm faiss-t1 --threshold 10000
```
## NeurIPS 2023 competition: Practical Vector Search

## Including your algorithm and Evaluating the Results
Please see <./neurips23/README.md> for a guide to the NeurIPS 23 competition.

See [Track T1/T2](t1_t2/README.md) for more details on evaluation for Tracks T1 and T2.
## NeurIPS 2021 competition: Billion-Scale ANN

See [Track T3](t3/README.md) for more details on evaluation for Track T3.
Please see <./neurips21/README.md> for a guide of running billion-scale benchmarks and a summary of the results.

# Credits

Expand Down
9 changes: 9 additions & 0 deletions neurips21/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# NeurIPS 2021

This summarizes the evaluation protocol and the results of the NeurIPS 2021 Challenge.

## NeurIPS 2021: Algorithms and Result Evaluation

See [Track T1/T2](t1_t2/README.md) for more details on evaluation for Tracks T1 and T2.

See [Track T3](t3/README.md) for more details on evaluation for Track T3.
File renamed without changes.
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes.
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes.
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.

0 comments on commit 6e03a27

Please sign in to comment.