Skip to main content

A low-code interpretable machine learning toolbox in Python.

Project description

drawing

An integrated Python toolbox for interpretable machine learning

pip install PiML

🚀 October 31, 2022: V0.4.0 is released with enriched models and enhanced diagnostics.

🚀 July 26, 2022: V0.3.0 is released with classic statistical models.

🚀 June 26, 2022: V0.2.0 is released with high-code APIs.

📢 May 4, 2022: V0.1.0 is launched with low-code UI/UX.

PiML (or π-ML, /ˈpaɪ·ˈem·ˈel/) is a new Python toolbox for interpretable machine learning model development and validation. Through low-code interface and high-code APIs, PiML supports a growing list of inherently interpretable ML models:

  1. GLM: Linear/Logistic Regression with L1 ∨ L2 Regularization
  2. GAM: Generalized Additive Models using B-splines
  3. Tree: Decision Tree for Classification and Regression
  4. FIGS: Fast Interpretable Greedy-Tree Sums (Tan, et al. 2022)
  5. XGB2: Extreme Gradient Boosted Trees of Depth 2 (Chen and Guestrin, 2016; Lengerich, et al. 2020)
  6. EBM: Explainable Boosting Machine (Nori, et al. 2019; Lou, et al. 2013)
  7. GAMI-Net: Generalized Additive Model with Structured Interactions (Yang, Zhang and Sudjianto, 2021)
  8. ReLU-DNN: Deep ReLU Networks using Aletheia Unwrapper and Sparsification (Sudjianto, et al. 2020)

PiML also works for arbitrary supervised ML models under regression and binary classification settings. It supports a whole spectrum of outcome testing, including but not limited to, the following:

  1. Accuracy: popular metrics like MSE, MAE for regression tasks and ACC, AUC, Recall, Precision, F1-score for binary classification tasks.
  2. Explainability: post-hoc global explainers (PFI, PDP, ALE) and local explainers (LIME, SHAP).
  3. Fairness: disparity test and segmented analysis by integrating the solas-ai package.
  4. WeakSpot: identification of weak regions with high residuals by slicing techniques.
  5. Overfit: identification of overfitting regions according ot train-test performance gap.
  6. Reliability: assessment of prediction uncertainty by split conformal prediction techniques.
  7. Robustness: evaluation of performance degradation under covariate noise perturbation.
  8. Resilience: evaluation of performance degradation under different out-of-distribution scenarios.

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

PiML-0.6.0.post2-cp310-none-win_amd64.whl (7.7 MB view hashes)

Uploaded CPython 3.10 Windows x86-64

PiML-0.6.0.post2-cp310-none-manylinux_2_17_x86_64.whl (12.2 MB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

PiML-0.6.0.post2-cp310-none-macosx_11_0_arm64.whl (9.2 MB view hashes)

Uploaded CPython 3.10 macOS 11.0+ ARM64

PiML-0.6.0.post2-cp310-none-macosx_10_12_x86_64.whl (9.7 MB view hashes)

Uploaded CPython 3.10 macOS 10.12+ x86-64

PiML-0.6.0.post2-cp39-none-win_amd64.whl (7.9 MB view hashes)

Uploaded CPython 3.9 Windows x86-64

PiML-0.6.0.post2-cp39-none-manylinux_2_17_x86_64.whl (12.2 MB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

PiML-0.6.0.post2-cp39-none-macosx_11_0_arm64.whl (9.2 MB view hashes)

Uploaded CPython 3.9 macOS 11.0+ ARM64

PiML-0.6.0.post2-cp39-none-macosx_10_12_x86_64.whl (9.7 MB view hashes)

Uploaded CPython 3.9 macOS 10.12+ x86-64

PiML-0.6.0.post2-cp38-none-win_amd64.whl (7.9 MB view hashes)

Uploaded CPython 3.8 Windows x86-64

PiML-0.6.0.post2-cp38-none-manylinux_2_17_x86_64.whl (12.2 MB view hashes)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

PiML-0.6.0.post2-cp38-none-macosx_11_0_arm64.whl (9.6 MB view hashes)

Uploaded CPython 3.8 macOS 11.0+ ARM64

PiML-0.6.0.post2-cp38-none-macosx_10_12_x86_64.whl (10.7 MB view hashes)

Uploaded CPython 3.8 macOS 10.12+ x86-64

PiML-0.6.0.post2-cp37-none-win_amd64.whl (7.5 MB view hashes)

Uploaded CPython 3.7 Windows x86-64

PiML-0.6.0.post2-cp37-none-manylinux_2_17_x86_64.whl (12.7 MB view hashes)

Uploaded CPython 3.7 manylinux: glibc 2.17+ x86-64

PiML-0.6.0.post2-cp37-none-macosx_10_12_x86_64.whl (10.4 MB view hashes)

Uploaded CPython 3.7 macOS 10.12+ x86-64

Supported by

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