Skip to main content

LRBenchmark

Repository for benchmarking Likelihood Ratio systems.

Prerequisites

  • This repository is developed for Python 3.8.

Dependencies

All dependencies can either be installed by running pip install -r requirements.txt or pip install ..

Add new dependencies to the setup.py and always update the requirements by running: pip-compile --output-file=requirements.txt setup.py.

Usage

Running the benchmark can be done as follows:

  1. Specify the parameters for the benchmark in the lrbenchmark.yaml
  2. Run python run.py

The parameters for the benchmark must be provided in the following structure:

experiment:
  repeats: 10
  scorer:
    - 'name scorer 1'
    - 'name scorer 2'
  calibrator: 
    - 'name calibrator'
  dataset:
    - 'name dataset'
  preprocessor:
    - 'name preprocessor 1'
    - 'name preprocessor 2'

At least 1 setting needs to be provided for each parameter, but more settings per parameter can be provided. The pipeline will create the cartesian product over all parameter settings (except repeats) and will execute the experiments accordingly.

All possible settings can be found in params.py. The parameters that need to be set are:

  • repeats: Number of repeats for each experiment.
  • scorer: Scoring models for generating scores.
  • calibrator: Models for calibrating scores.
  • dataset: Datasets on which the experiments can be executed.
  • preprocessor: Data preprocessing steps. You can use the value 'dummy' if no preprocessing is needed.

Example: Benchmark feature rank based LR system

This repository supports several data transformations, such as the possibility to transform X features from values to ranks. To benchmark these models against models without any transformations on X features, the following experiments (among others) could be defined in lrbenchmark.yaml.

experiment:
  repeats: 10
  scorer:
    - 'LR'
    - 'XGB'
  calibrator:
    - 'logit'
  dataset:
    drugs_xtc:
      n_splits: 2
    glass:
      n_splits: 2
  preprocessor:
    - 'dummy'
    - 'rank_transformer'

When executing python run.py an experiment for all possible combination of parameters will be executed. The results for each experiment (metrics + plots) will be stored in separate folders within the output folder.

Datasets

There are currently two datasets implemented for this project:

Metadata

Release files for lrbenchmark 0.1.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for lrbenchmark 0.1.2
File Size Uploaded Provenance Actions
lrbenchmark-0.1.2.tar.gz 12.2 kB Without provenance Details for lrbenchmark-0.1.2.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for lrbenchmark 0.1.2
File Interpreter ABI Platform Actions
lrbenchmark-0.1.2-py3-none-any.whl Python 3 none any Details for lrbenchmark-0.1.2-py3-none-any.whl

Total release size: 24.4 kB

Release files / lrbenchmark-0.1.2.tar.gz

Download URL lrbenchmark-0.1.2.tar.gz
Size 12.2 kB
Tags Source
SHA-256 checksum
How to use checksums
cb93e95285bd52c99da62d05b9152ba6cc7f99bd559218d79107cfbda684ddfc
BLAKE2b-256 checksum
How to use checksums
dda9c1b6c40c1fb565b33934a88d9592c72d404518ea271b20ffa54f7f9e8691
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.9.17

Release files / lrbenchmark-0.1.2-py3-none-any.whl

Download URL lrbenchmark-0.1.2-py3-none-any.whl
Size 12.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
35eb5cce45a76463dc4d4945866d103816c6275e47cb56641ca0d2bba60ea961
BLAKE2b-256 checksum
How to use checksums
6e874c34fc7804dccf18e8c4c3bc7907c762a8d705714dc6a1c0b13aa4046de8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.9.17

Security for lrbenchmark 0.1.2

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page