Inference algorithms for models based on Luce's choice axiom
Python Jupyter Notebook
Switch branches/tags
Nothing to show
Latest commit 9501fe9 Jan 15, 2018
lucasmaystre New release, testing auto-deploy with Travis CI.
The only change present in this release is a new format for the README file,
which will hopefully display better on PyPI.

README.rst

choix

build status code coverage documentation status

choix is a Python library that provides inference algorithms for models based on Luce's choice axiom. These probabilistic models can be used to explain and predict outcomes of comparisons between items.

  • Pairwise comparisons: when the data consists of comparisons between two items, the model variant is usually referred to as the Bradley-Terry model. It is closely related to the Elo rating system used to rank chess players.
  • Partial rankings: when the data consists of rankings over (a subset of) the items, the model variant is usually referred to as the Plackett-Luce model.
  • Top-1 lists: another variation of the model arises when the data consists of discrete choices, i.e., we observe the selection of one item out of a subset of items.
  • Choices in a network: when the data consists of counts of the number of visits to each node in a network, the model is known as the Network Choice Model.

choix makes it easy to infer model parameters from these different types of data, using a variety of algorithms:

  • Luce Spectral Ranking
  • Minorization-Maximization
  • Rank Centrality
  • Approximate Bayesian inference with expectation propagation

Getting started

To install the latest release directly from PyPI, simply type:

pip install choix

To get started, you might want to explore one of these notebooks:

You can also find more information on the official documentation. In particular, the API reference contains a good summary of the library's features.

References