explainiverse 0.1.1a0__py3-none-any.whl → 0.2.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (31) hide show
  1. explainiverse/__init__.py +45 -1
  2. explainiverse/adapters/__init__.py +9 -0
  3. explainiverse/adapters/base_adapter.py +25 -25
  4. explainiverse/adapters/sklearn_adapter.py +32 -32
  5. explainiverse/core/__init__.py +22 -0
  6. explainiverse/core/explainer.py +31 -31
  7. explainiverse/core/explanation.py +24 -24
  8. explainiverse/core/registry.py +545 -0
  9. explainiverse/engine/__init__.py +8 -0
  10. explainiverse/engine/suite.py +142 -142
  11. explainiverse/evaluation/__init__.py +8 -0
  12. explainiverse/evaluation/metrics.py +232 -232
  13. explainiverse/explainers/__init__.py +38 -0
  14. explainiverse/explainers/attribution/__init__.py +9 -0
  15. explainiverse/explainers/attribution/lime_wrapper.py +90 -63
  16. explainiverse/explainers/attribution/shap_wrapper.py +89 -66
  17. explainiverse/explainers/counterfactual/__init__.py +8 -0
  18. explainiverse/explainers/counterfactual/dice_wrapper.py +302 -0
  19. explainiverse/explainers/global_explainers/__init__.py +23 -0
  20. explainiverse/explainers/global_explainers/ale.py +191 -0
  21. explainiverse/explainers/global_explainers/partial_dependence.py +192 -0
  22. explainiverse/explainers/global_explainers/permutation_importance.py +123 -0
  23. explainiverse/explainers/global_explainers/sage.py +164 -0
  24. explainiverse/explainers/rule_based/__init__.py +8 -0
  25. explainiverse/explainers/rule_based/anchors_wrapper.py +350 -0
  26. explainiverse-0.2.0.dist-info/METADATA +264 -0
  27. explainiverse-0.2.0.dist-info/RECORD +29 -0
  28. explainiverse-0.1.1a0.dist-info/METADATA +0 -84
  29. explainiverse-0.1.1a0.dist-info/RECORD +0 -19
  30. {explainiverse-0.1.1a0.dist-info → explainiverse-0.2.0.dist-info}/LICENSE +0 -0
  31. {explainiverse-0.1.1a0.dist-info → explainiverse-0.2.0.dist-info}/WHEEL +0 -0
@@ -1,84 +0,0 @@
1
- Metadata-Version: 2.1
2
- Name: explainiverse
3
- Version: 0.1.1a0
4
- Summary: Unified, extensible explainability framework supporting LIME, SHAP, and custom adapters
5
- Home-page: https://github.com/jemsbhai/explainiverse
6
- License: MIT
7
- Author: Muntaser Syed
8
- Author-email: jemsbhai@gmail.com
9
- Requires-Python: >=3.10,<3.13
10
- Classifier: License :: OSI Approved :: MIT License
11
- Classifier: Programming Language :: Python :: 3
12
- Classifier: Programming Language :: Python :: 3.10
13
- Classifier: Programming Language :: Python :: 3.11
14
- Classifier: Programming Language :: Python :: 3.12
15
- Requires-Dist: lime (>=0.2.0.1,<0.3.0.0)
16
- Requires-Dist: numpy (==1.24.4)
17
- Requires-Dist: scikit-learn (>=1.1,<1.4)
18
- Requires-Dist: shap (>=0.48.0,<0.49.0)
19
- Requires-Dist: xgboost (>=3.0.2,<4.0.0)
20
- Project-URL: Repository, https://github.com/jemsbhai/explainiverse
21
- Description-Content-Type: text/markdown
22
-
23
- # Explainiverse
24
-
25
- Explainiverse is a unified, extensible, and testable Python framework for explainable AI (XAI).
26
- It provides a consistent API and support for post-hoc explainers like LIME and SHAP, model adapters, and rigorous evaluation strategies.
27
-
28
- ---
29
-
30
- ## Features
31
-
32
- - Standardized Explainer interface (`BaseExplainer`)
33
- - Support for classification, regression, and multi-class models
34
- - Integrated explainers:
35
- - LIME (Local surrogate models)
36
- - SHAP (KernelExplainer with per-class and global support)
37
- - Adapter layer for scikit-learn models
38
- - Explanation object with structured output and future extensibility for `.plot()`
39
- - Full unit test suite covering classification, regression, global/cohort SHAP, and adapter behavior
40
-
41
- ---
42
-
43
- ## Installation
44
-
45
- This package will soon be available on PyPI.
46
-
47
- For development use:
48
-
49
- ```bash
50
- git clone https://github.com/YOUR_USERNAME/explainiverse.git
51
- cd explainiverse
52
- poetry install
53
- ```
54
-
55
- ---
56
-
57
- ## Running Tests
58
-
59
- All tests can be run using:
60
-
61
- ```bash
62
- poetry run python tests/test_all.py
63
- ```
64
-
65
- For individual component testing:
66
-
67
- ```bash
68
- poetry run python tests/test_shap_explainer.py
69
- poetry run python tests/test_lime_explainer.py
70
- ```
71
-
72
- ---
73
-
74
- ## Documentation
75
-
76
- Documentation is currently in development.
77
- Until then, test files (especially `test_shap_explainer.py`) demonstrate usage and structure.
78
-
79
- ---
80
-
81
- ## License
82
-
83
- This project is licensed under the MIT License.
84
-
@@ -1,19 +0,0 @@
1
- explainiverse/__init__.py,sha256=bucmhjkOeGG8OigJFQscb0FSTLIyek52y1Jp8ZF_a4M,20
2
- explainiverse/adapters/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
3
- explainiverse/adapters/base_adapter.py,sha256=QANRbTFxrESM3ReT2kWR3c_CcWMDfKdl9fEbYZzzTuw,628
4
- explainiverse/adapters/sklearn_adapter.py,sha256=WQC-i4OIaR0M-AILXV5OvNo9H2JA0dVMBYioalFOCu0,990
5
- explainiverse/core/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
6
- explainiverse/core/explainer.py,sha256=8vI_Paj1cpbhLK6GP1Ckq2SzW4FyjUgxOpuLKE12ddI,815
7
- explainiverse/core/explanation.py,sha256=Gxz-0lU4YVZfV1Bsrzma7uvfze127aCmqDaVK1dg-hI,905
8
- explainiverse/engine/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
9
- explainiverse/engine/suite.py,sha256=brBQNCHMBobaOjSVpoBBsbo3gep9qbEcT0NSdU6SPxw,5056
10
- explainiverse/evaluation/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
11
- explainiverse/evaluation/metrics.py,sha256=N_EucJ8Ud1Wa3IU6ZxzKKILF7UkQDLKEyhAvUaDHIGM,7685
12
- explainiverse/explainers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
13
- explainiverse/explainers/attribution/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
14
- explainiverse/explainers/attribution/lime_wrapper.py,sha256=hFd6tQ7uE6R3ORHTuT-w2vW9JkvFuYbEZDpGqRLRNto,2107
15
- explainiverse/explainers/attribution/shap_wrapper.py,sha256=yAQDZNPFbn_H0AMFhWKMEoQb8IG05Tg6oRBcWRw4CP8,2378
16
- explainiverse-0.1.1a0.dist-info/LICENSE,sha256=28rbHe8rJgmUlRdxJACfq1Sj-MtCEhyHxkJedQd1ZYA,1070
17
- explainiverse-0.1.1a0.dist-info/METADATA,sha256=gNDqhbbQHqCkQyt6by0Pz_ws0bUWlsPw6ijOGpWw5o0,2262
18
- explainiverse-0.1.1a0.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
19
- explainiverse-0.1.1a0.dist-info/RECORD,,