Skip to main content
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.

Metadata

Release files for PiML 0.6.0.post2

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

Built distributions (wheels)

Table of built distributions (wheels) for PiML 0.6.0.post2
File
PiML-0.6.0.post2-cp310-none-win_amd64.whl CPython 3.10 none Windows x86-64 Details
PiML-0.6.0.post2-cp310-none-manylinux_2_17_x86_64.whl CPython 3.10 none Linux glibc 2.17+ x86-64 Details
PiML-0.6.0.post2-cp310-none-macosx_11_0_arm64.whl CPython 3.10 none macOS 11.0+ ARM64 Details
PiML-0.6.0.post2-cp310-none-macosx_10_12_x86_64.whl CPython 3.10 none macOS 10.12+ x86-64 Details
PiML-0.6.0.post2-cp39-none-win_amd64.whl CPython 3.9 none Windows x86-64 Details
PiML-0.6.0.post2-cp39-none-manylinux_2_17_x86_64.whl CPython 3.9 none Linux glibc 2.17+ x86-64 Details
PiML-0.6.0.post2-cp39-none-macosx_11_0_arm64.whl CPython 3.9 none macOS 11.0+ ARM64 Details
PiML-0.6.0.post2-cp39-none-macosx_10_12_x86_64.whl CPython 3.9 none macOS 10.12+ x86-64 Details
PiML-0.6.0.post2-cp38-none-win_amd64.whl CPython 3.8 none Windows x86-64 Details
PiML-0.6.0.post2-cp38-none-manylinux_2_17_x86_64.whl CPython 3.8 none Linux glibc 2.17+ x86-64 Details
PiML-0.6.0.post2-cp38-none-macosx_11_0_arm64.whl CPython 3.8 none macOS 11.0+ ARM64 Details
PiML-0.6.0.post2-cp38-none-macosx_10_12_x86_64.whl CPython 3.8 none macOS 10.12+ x86-64 Details
PiML-0.6.0.post2-cp37-none-win_amd64.whl CPython 3.7 none Windows x86-64 Details
PiML-0.6.0.post2-cp37-none-manylinux_2_17_x86_64.whl CPython 3.7 none Linux glibc 2.17+ x86-64 Details
PiML-0.6.0.post2-cp37-none-macosx_10_12_x86_64.whl CPython 3.7 none macOS 10.12+ x86-64 Details

Total release size: 148.7 MB

Release files / PiML-0.6.0.post2-cp310-none-win_amd64.whl

Download URL PiML-0.6.0.post2-cp310-none-win_amd64.whl
Size 7.7 MB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
ed758c62dfb6f32ec7a82702461b32b8c9bd2f0570bb824b6fe8f18745d93201
BLAKE2b-256 checksum
How to use checksums
c4323bf8e342a4ccb3c69f8b430da157da5a428422395fe3e51a4fd14a305246
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.0 CPython/3.7.13

Release files / PiML-0.6.0.post2-cp310-none-manylinux_2_17_x86_64.whl

Download URL PiML-0.6.0.post2-cp310-none-manylinux_2_17_x86_64.whl
Size 12.2 MB
Tags CPython 3.10 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
d8caaaa60b6dd4ab2632beeaf4ac4f741f3a38e8d18487b83262b2c7ac2e9748
BLAKE2b-256 checksum
How to use checksums
3f234327572fd2ac3bd1f6b78ed5b29f94ed4c425266c4e59f16505622295a20
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.0 CPython/3.7.13

Release files / PiML-0.6.0.post2-cp310-none-macosx_11_0_arm64.whl

Download URL PiML-0.6.0.post2-cp310-none-macosx_11_0_arm64.whl
Size 9.2 MB
Tags CPython 3.10 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
5d798e4dac699495f6570b05ab0cc160881b9ef6de2b364bc2dc733a1174ac56
BLAKE2b-256 checksum
How to use checksums
d5d49db624a323ae6f3ea1998e889a032491f23db75bee843e9acaf910545f28
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.0 CPython/3.7.13

Release files / PiML-0.6.0.post2-cp310-none-macosx_10_12_x86_64.whl

Download URL PiML-0.6.0.post2-cp310-none-macosx_10_12_x86_64.whl
Size 9.7 MB
Tags CPython 3.10 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
7f9d528d4ca0f468418248d081a6a494b131e72475c437510452063d572e000b
BLAKE2b-256 checksum
How to use checksums
cba8c1f18f44195f0bf1cb3c7c90b20dcb9955506cde0aec56ca47c5b47afd52
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.0 CPython/3.7.13

Release files / PiML-0.6.0.post2-cp39-none-win_amd64.whl

Download URL PiML-0.6.0.post2-cp39-none-win_amd64.whl
Size 7.9 MB
Tags CPython 3.9 Windows x86-64
SHA-256 checksum
How to use checksums
8d1ca81ffcfcfdde2f7509d3bc65143099b7c2707f097b4d185b7f24b5380305
BLAKE2b-256 checksum
How to use checksums
b1bb59cf6d0292cbe652fcf6d883de59a56954808705863a23045bab8f21895d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.0 CPython/3.7.13

Release files / PiML-0.6.0.post2-cp39-none-manylinux_2_17_x86_64.whl

Download URL PiML-0.6.0.post2-cp39-none-manylinux_2_17_x86_64.whl
Size 12.2 MB
Tags CPython 3.9 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
7fa3fd6d7a30ca5c3aea8753c62abcdc2c9b8d65a3c8efaa11922b648b3022aa
BLAKE2b-256 checksum
How to use checksums
01fbad519fcc114a15b23e9e684b57ef86923388ae0b15933750e1c5c6280cb0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.0 CPython/3.7.13

Release files / PiML-0.6.0.post2-cp39-none-macosx_11_0_arm64.whl

Download URL PiML-0.6.0.post2-cp39-none-macosx_11_0_arm64.whl
Size 9.2 MB
Tags CPython 3.9 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
58d6a2f4de8ee7f8f82fbf88f7037233e16e63889a07f13ca96cc8021b927ef4
BLAKE2b-256 checksum
How to use checksums
9782995afed4e67d5766a225aca894616e5d093f5d520819c587c0d00d27c917
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.0 CPython/3.7.13

Release files / PiML-0.6.0.post2-cp39-none-macosx_10_12_x86_64.whl

Download URL PiML-0.6.0.post2-cp39-none-macosx_10_12_x86_64.whl
Size 9.7 MB
Tags CPython 3.9 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
9706e876d8b0341d82529977440e71c7899544e3534dea459e7d1d6fed6432f9
BLAKE2b-256 checksum
How to use checksums
1a7d18c8e67cd25ea3703b75b269f7040e538ecb3797f155879c5be3d3573083
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.0 CPython/3.7.13

Release files / PiML-0.6.0.post2-cp38-none-win_amd64.whl

Download URL PiML-0.6.0.post2-cp38-none-win_amd64.whl
Size 7.9 MB
Tags CPython 3.8 Windows x86-64
SHA-256 checksum
How to use checksums
55865fa3fead2d34d342df10aa3b14e8d2e7d57995c3ce34cd38e93b7dd1cfbd
BLAKE2b-256 checksum
How to use checksums
034c289d7be939e37cf741a6e395fd4a8d41d061f33cbff0244ce3eb87b3bcee
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.0 CPython/3.7.13

Release files / PiML-0.6.0.post2-cp38-none-manylinux_2_17_x86_64.whl

Download URL PiML-0.6.0.post2-cp38-none-manylinux_2_17_x86_64.whl
Size 12.2 MB
Tags CPython 3.8 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
e532923792fba195545fa0c037e15423ea4fc57b8a4ff69397551f1ecc6420cd
BLAKE2b-256 checksum
How to use checksums
f3ce282f102a7c98343383db720b2ef4f7de39a8f4245dec41f10ea66a476735
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.0 CPython/3.7.13

Release files / PiML-0.6.0.post2-cp38-none-macosx_11_0_arm64.whl

Download URL PiML-0.6.0.post2-cp38-none-macosx_11_0_arm64.whl
Size 9.6 MB
Tags CPython 3.8 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
26935f0e75f9e2ee315dcadc83fd742f5e3802c4dfc07a2c14cf3e46aa717463
BLAKE2b-256 checksum
How to use checksums
c7401363be8a0e119a0d2d62d6e1b21f913f5fd52132bc7c76eb2d21a54c050b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.0 CPython/3.7.13

Release files / PiML-0.6.0.post2-cp38-none-macosx_10_12_x86_64.whl

Download URL PiML-0.6.0.post2-cp38-none-macosx_10_12_x86_64.whl
Size 10.7 MB
Tags CPython 3.8 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
e864e530ddf0396b940d3d8bae815b339fda29abf7be80a70fc811f2627a1e05
BLAKE2b-256 checksum
How to use checksums
287c9f4f7fb5563487197ba04f68a722ead94edadc0e0062d6795fe6592c65fd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.0 CPython/3.7.13

Release files / PiML-0.6.0.post2-cp37-none-win_amd64.whl

Download URL PiML-0.6.0.post2-cp37-none-win_amd64.whl
Size 7.5 MB
Tags CPython 3.7 Windows x86-64
SHA-256 checksum
How to use checksums
c2da9d53d8d1acea1e6100fb5c8df3f0e32f41ad95e20fbffaa2ba4c95890fd5
BLAKE2b-256 checksum
How to use checksums
ab3aced7c8d1a20dab80296cbeb744f9f0ba840895a4cf6a7ab3b86e61d553ed
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.0 CPython/3.7.13

Release files / PiML-0.6.0.post2-cp37-none-manylinux_2_17_x86_64.whl

Download URL PiML-0.6.0.post2-cp37-none-manylinux_2_17_x86_64.whl
Size 12.7 MB
Tags CPython 3.7 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
d7d1773fbb62445ab02f309591fb75b5f9ca3f170e0f4ce907955db07031038e
BLAKE2b-256 checksum
How to use checksums
bf5b4f84cb76f235406decaaec4bdb296ca9d0d64874e8eaa97dd91266b3c1d3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.0 CPython/3.7.13

Release files / PiML-0.6.0.post2-cp37-none-macosx_10_12_x86_64.whl

Download URL PiML-0.6.0.post2-cp37-none-macosx_10_12_x86_64.whl
Size 10.4 MB
Tags CPython 3.7 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
e09a59f6e53efe8ab2a3b0f653cdb2cf44b9a8dd1befd3eda1132d3d4c044c5d
BLAKE2b-256 checksum
How to use checksums
995f98f6488d436cc1987d4870101290c5001f76661c6b80787dc8ba53b62c20
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.0 CPython/3.7.13
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