Zeynep Akkalyoncu Yilmaz, Wei Yang, Haotian Zhang, and Jimmy Lin
This is the docker image for Birch, a BERT-based experimental IR system, conforming to the OSIRRC jig for the Open-Source IR Replicability Challenge (OSIRRC) at SIGIR 2019. The image is available on Docker Hub.
- Supported test collections:
robust04 - Supported hooks:
init,index,search
The following jig command can be used to index TREC disks 4/5 for robust04:
python run.py prepare \
--repo osirrc2019/birch \
--tag v0.1.0 \
--collections robust04=/path/to/disk45=trectext
The following jig command can be used to perform a retrieval run as described in Simple Applications of BERT for Document Retrieval:
python run.py search \
--repo osirrc2019/birch \
--tag v0.1.0 \
--collection robust04 \
--topic topics/topics.robust04.txt \
--qrels qrels/qrels.robust04.txt \
--output out/birch \
--measures map P.20 \
--opts experiment=[experiment_name] num_folds=2 anserini_path=anserini tune_params=False
The parameter experiment can take on the values qa_2cv, mb_2cv, qa_5cv or mb_5cv, and denotes the pretraining data and cross-validation setting.
Likewise,num_folds should be set accordingly.
Use tune_params=False to directly evaluate on the collection, and tune_params=True to tune the hyperparameters yourself first.
The expected output for experiment=mb_2cv is as follows:
Evaluating results using trec_eval...
###
# out/birch/run.mb_2cv.cv.a
###
map all 0.3241
P_20 all 0.4217
###
# out/birch/run.mb_2cv.cv.ab
###
map all 0.3240
P_20 all 0.4209
# out/birch/run.mb_2cv.cv.abc
###
map all 0.3244
P_20 all 0.4219
*.a refer to runs where only the top sentence is considered, *.ab top 2, and *.abc top 3 sentences.
- Documentation reviewed at commit
4fcfe3c(2019-06-14) by Ryan Clancy.