About QuickRank

QuickRank is available under Reciprocal Public License 1.5 license.

You can get the source code of QuickRank by cloning the QuickRank GitHub repository. The GitHub repository provides installation instructions and a user guide.

We welcome comments and contribution!

Learning-to-Rank Algorithms

QuickRank is an efficient Learning to Rank toolkit providing multithreaded C++ implementation of several algorithms. QuickRank was designed and developed with efficiency in mind. The algorithms currently implemented are:

  • GBRT: J. H. Friedman. Greedy function approximation: a gradient boosting machine. Annals of Statistics, pages 1189–1232, 2001.
  • LambdaMART: Q. Wu, C. Burges, K. Svore, and J. Gao. Adapting boosting for information retrieval measures. Information Retrieval, 2010.
  • Oblivious GBRT / LambdaMART: Inspired to I. Segalovich. Machine learning in search quality at yandex. Invited Talk, ACM SIGIR, 2010.
  • CoordinateAscent: Metzler, D., Croft, W.B. Linear feature-based models for information retrieval. Information Retrieval 10(3), pages 257–274, 2007.
  • LineSearch: D. G. Luenberger. Linear and nonlinear programming. Addison Wesley, 1984.
  • RankBoost: Freund, Y., Iyer, R., Schapire, R. E., & Singer, Y. An efficient boosting algorithm for combining preferences. JMLR, 4, 933-969 (2003).
  • DART: K.V. Rashmi and R. Gilad-Bachrach. Dart: Dropouts meet multiple additive regression trees. JMLR, 38 (2015).
  • Selective Gradient Boosting: C. Lucchese, F. M. Nardini, S. Orlando, R. Perego and S. Trani. Selective Gradient Boosting for Effective Learning to Rank. ACM SIGIR, 2018. README. MODELS.

QuickRank also provides novel learning optimizations. Currently implemented optimizers are:

  • CLEAVER: C. Lucchese, F. M. Nardini, S. Orlando, R. Perego, F. Silvestri, S. Trani. Post-Learning Optimization of Tree Ensembles for Efficient Ranking. In Proc. ACM SIGIR, 2016. README. MODELS.
  • X-CLEAVER: C. Lucchese, F. M. Nardini, S. Orlando, R. Perego, F. Silvestri, S. Trani. X-CLEaVER: Learning Ranking Ensembles by Growing and Pruning Trees. ACM TIST, 2018. to appear.
  • X-DART: C. Lucchese, F. M. Nardini, S. Orlando, R. Perego and S. Trani. X-DART: Blending Dropout and Pruning for Efficient Learning to Rank. In Proc. ACM SIGIR, 2017. README.

Acknowledgements

If you use QuickRank, please acknowledge the following paper:

  • Capannini, G., Lucchese, C., Nardini, F. M., Orlando, S., Perego, R., and Tonellotto, N. Quality versus efficiency in document scoring with learning-to-rank models. Information Processing & Management, 2016. LINK.

If you use CLEAVER, please acknowledge the following paper:

  • C. Lucchese, F. M. Nardini, S. Orlando, R. Perego, F. Silvestri, S. Trani. Post-Learning Optimization of Tree Ensembles for Efficient Ranking. ACM SIGIR Conference on Research and Development in Information Retrieval, 2016. LINK.

If you use X-CLEAVER, please acknowledge the following papers:

  • C. Lucchese, F. M. Nardini, S. Orlando, R. Perego, F. Silvestri, S. Trani. Post-Learning Optimization of Tree Ensembles for Efficient Ranking. ACM SIGIR Conference on Research and Development in Information Retrieval, 2016. LINK.
  • C. Lucchese, F. M. Nardini, S. Orlando, R. Perego, F. Silvestri, S. Trani. X-CLEaVER: Learning Ranking Ensembles by Growing and Pruning Trees. ACM TIST, 2018. to appear.

If you use X-DART, please acknowledge the following paper:

  • C. Lucchese, F. M. Nardini, S. Orlando, R. Perego, and S. Trani. X-DART: Blending Dropout and Pruning for Efficient Learning to Rank. ACM SIGIR Conference on Research and Development in Information Retrieval, 2017. LINK.

If you use Selective Gradient Boosting, please acknowledge the following paper:

  • C. Lucchese, F. M. Nardini, R. Perego, S. Orlando, S. Trani. Selective Gradient Boosting for Effective Learning to Rank. ACM SIGIR Conference on Research and Development in Information Retrieval, 2018. LINK. PREPRINT.

We will be happy to know that you are using QuickRank and to acknowledge you on the QuickRank GitHub page.