ListNet ranking model. This is a Chainer implementation of "Learning to rank: from pairwise approach to listwise approach" by Cao et al..
Code explanation is given at http://qiita.com/koreyou/items/a69750696fd0b9d88608 (Japanese).
This code only supports python 2. I have only tested this code on python 2.7.12 to be more specific.
pip install -r requirements.py
export PYTHONPATH="`pwd`:$PYTHONPTH"
Download LETOR dataset from: http://research.microsoft.com/en-us/um/beijing/projects/letor/LETOR4.0/Data/MQ2007.rar .
Unrar data into "build" directory such that directory is organized build/MQ2007
.
python bin/train.py
I have run MQ2007 on LETOR 4.0. I have only tested it on Fold 1.
Here is the performance metrics in mean average precision (MAP).
TRAIN: 0.4693
DEV: 0.4767
TEST: 0.4877
This is the official result on the same dataset.
TRAIN: 0.4526
DEV: 0.4790
TEST: 0.4884