Skip to main content

Implements Bayesian D-PDDM for Post-Deployment Deterioration Monitoring of ML models.

Project description

Bayesian D-PDDM

Bayesian implementation of the D-PDDM algorithm for post-deployment deterioration monitoring. Bayesian D-PDDM is a Bayesian approximation to the D-PDDM algorithm which provably monitors model deterioration at deployment time. Bayesian D-PDDM:

  • Flags deteriorating shifts in the unsupervised deployment data distribution
  • Resists flagging non-deteriorating shifts, unlike classical OOD detection leveraging distances and/or metrics between data distributions.

Install

The easiest way to install bayesian_dpddm is with pip:

pip install bayesian_dpddm

You can also install by cloning the GitHub repo:

# Clone the repo
git clone https://github.com/opent03/bayesian_dpddm.git

# Navigate into repo directory 
cd bayesian_dpddm

# Install the required dependencies
pip install .

Sweeping Instructions

All experiments are running from the root directory of the repo. We use hydra-core as an argparse on steroids, in tandem with wandb for sweeping. For a sweeping configuration experiments/my_sweep.yaml, run:

wandb sweep experiments/my_sweep.yaml

for which wandb responds with:

wandb: Creating sweep from: experiments/my_sweep.yaml
wandb: Creating sweep with ID: <my_sweep_id>
wandb: View sweep at: https://wandb.ai/<my_wandb_team>/<my_project>/sweeps/<my_sweep_id>

Sweeping locally

Run sweep agent with: wandb agent <my_wandb_team>/<my_project>/<my_sweep_id>.

Sweeping with slurm

sbatch files format pre-configured for the Vaughan cluster. Edit the templates at will.

We execute a script to replace the wandb agent ... line in our .slrm files:

./experiments/replace_wandb_agent.sh "wandb agent <my_wandb_team>/<my_project>/<my_sweep_id>"

Finally, spam jobs on the cluster and maximize your allocation per qos:

./experiments/sbatch_all.sh

Edit this script per your allocation.

Usage and Tutorials

Coming soon.

Citation

Coming soon.

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

bayesian_dpddm-1.0.3.tar.gz (10.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

bayesian_dpddm-1.0.3-py3-none-any.whl (12.1 kB view details)

Uploaded Python 3

File details

Details for the file bayesian_dpddm-1.0.3.tar.gz.

File metadata

  • Download URL: bayesian_dpddm-1.0.3.tar.gz
  • Upload date:
  • Size: 10.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.11

File hashes

Hashes for bayesian_dpddm-1.0.3.tar.gz
Algorithm Hash digest
SHA256 7992303ea281030c01ffd533e6f274a79c2135e918275c2a80f8f85be2655078
MD5 0a7902734a3854dfb9d8fa19a1ccc802
BLAKE2b-256 c3f17ac7293da26086115ab84c52ecf6f33e993227f860a39c74e4ce22c2c082

See more details on using hashes here.

File details

Details for the file bayesian_dpddm-1.0.3-py3-none-any.whl.

File metadata

  • Download URL: bayesian_dpddm-1.0.3-py3-none-any.whl
  • Upload date:
  • Size: 12.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.11

File hashes

Hashes for bayesian_dpddm-1.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 1eb7dbbadf61231de0ea0eb3cbff7d2571b17f76ed302b1f4ead1b8180ff27c7
MD5 2e64b027f9cf869086b25e7cbbe988b9
BLAKE2b-256 c46ac706a862cb6f74bb87f5cb122c039fbe3f2ac5e39c7a88a973fa6265438d

See more details on using hashes here.

Supported by

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