Skip to main content

Inference algorithms for models based on Luce's choice axiom.

Project description

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

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

choix-0.3.6.tar.gz (72.6 kB view details)

Uploaded Source

Built Distribution

choix-0.3.6-py3-none-any.whl (18.7 kB view details)

Uploaded Python 3

File details

Details for the file choix-0.3.6.tar.gz.

File metadata

  • Download URL: choix-0.3.6.tar.gz
  • Upload date:
  • Size: 72.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.9.18

File hashes

Hashes for choix-0.3.6.tar.gz
Algorithm Hash digest
SHA256 08d50eef29d0a5a33aedcf6939783144ee141b736e4616ba2e0db835df8c81b2
MD5 3d23a69658100d3d9649eba753795284
BLAKE2b-256 787d7c167af8bcecb10d931172506f169c0425e23fb1961165fc7a94e7d15ff4

See more details on using hashes here.

File details

Details for the file choix-0.3.6-py3-none-any.whl.

File metadata

  • Download URL: choix-0.3.6-py3-none-any.whl
  • Upload date:
  • Size: 18.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.9.18

File hashes

Hashes for choix-0.3.6-py3-none-any.whl
Algorithm Hash digest
SHA256 c6efa5059540816e01d36977b5e49096fae5fdb7438b6cf3b91a54a781fb53a7
MD5 61e330b432202e16576e353e65c76e05
BLAKE2b-256 8740bc37a13e12f9cd3d9d07727b370401075ef919e0676db362f87fca98463f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page