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:
- GLM: Linear/Logistic Regression with L1 ∨ L2 Regularization
- GAM: Generalized Additive Models using B-splines
- Tree: Decision Tree for Classification and Regression
- FIGS: Fast Interpretable Greedy-Tree Sums (Tan, et al. 2022)
- XGB2: Extreme Gradient Boosted Trees of Depth 2 (Chen and Guestrin, 2016; Lengerich, et al. 2020)
- EBM: Explainable Boosting Machine (Nori, et al. 2019; Lou, et al. 2013)
- GAMI-Net: Generalized Additive Model with Structured Interactions (Yang, Zhang and Sudjianto, 2021)
- 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:
- Accuracy: popular metrics like MSE, MAE for regression tasks and ACC, AUC, Recall, Precision, F1-score for binary classification tasks.
- Explainability: post-hoc global explainers (PFI, PDP, ALE) and local explainers (LIME, SHAP).
- Fairness: disparity test and segmented analysis by integrating the solas-ai package.
- WeakSpot: identification of weak regions with high residuals by slicing techniques.
- Overfit: identification of overfitting regions according ot train-test performance gap.
- Reliability: assessment of prediction uncertainty by split conformal prediction techniques.
- Robustness: evaluation of performance degradation under covariate noise perturbation.
- 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)
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
|