Explain and debug any black-box Machine Learning model.
Project description
ExplainX.ai is a fast, scalable and end-to-end Explainable AI framework for data scientists & machine learning engineers.
With explainX, you can understand overall model behavior, get the reasoning behind model predictions, remove biases and create convincing explanations for your business stakeholders.
Why we need explainability & interpretibility?
Essential for:
- Model debugging - Why did my model make a mistake? How can I improve the accuracy of the model?
- Detecting fairness issues - Is my model biased? If yes, where?
- Human-AI cooperation - How can I understand and trust the model's decisions?
- Regulatory compliance - Does my model satisfy legal & regulatory requirements?
- High-risk applications - Healthcare, Financial Services, FinTech, Judicial, Security etc,.
Visit our website to learn more: https://www.explainx.ai
Try it out
- Installing explainX
- Working Examples
- explainX Dashboard Features
- Documentation
- Help Us Improve explainX.ai
Installation
Python 3.5+ | Linux, Mac, Windows (Install Microsoft C++ Build Tools first to run on Windows.)
pip install explainx
Installation on the cloud
If you are using AWS SageMaker of Jupyter Notebook deployed on the cloud, visit our documentation for step-by-step guide installing and running explainX. Cloud Installation Instructions
Example Usage
After successfully installing explainX, open up your Python IDE of Jupyter Notebook and simply follow the code below to use it:
- Import required module.
from explainx import *
from sklearn.ensemble import RandomForestClassifier
from sklearn.model_selection import train_test_split
- Load and split your dataset into x_data and y_data
#Load Dataset: X_Data, Y_Data
#X_Data = Pandas DataFrame
#Y_Data = Numpy Array or List
X_data,Y_data = explainx.dataset_heloc()
- Split dataset into training & testing.
X_train, X_test, Y_train, Y_test = train_test_split(X_data,Y_data, test_size=0.3, random_state=0)
- Train your model.
# Train a RandomForest Model
model = RandomForestClassifier()
model.fit(X_train, Y_train)
- Pass your model and dataset into the explainX function:
explainx.ai(X_test, Y_test, model, model_name="randomforest")
- Click on the dashboard link to start exploring model behavior:
App running on https://0.0.0.0:8080
If you are running explainX on the cloud e.g., AWS Sagemaker? https://0.0.0.0:8080 will not work. Please visit our documentation for installation instructions for the cloud: Cloud Installation Instructions
After installation is complete, just open your terminal and run the following command.
lt -h "https://serverless.social" -p [port number]
lt -h "https://serverless.social" -p 8080
Learn to analyze the dashboard by following this link: explainX Dashboard Features
Visit the documentation to learn more
Models Supported
- Catboost
- XGBoost==1.0.2
- Gradient Boosting Regressor
- RandomForest Model
- SVM
- KNeighboursClassifier
- Logistic Regression
- DecisionTreeClassifier
- Scikit-learn Models
- Neural Networks
Walkthough Video Tutorial
Please click on the image below to load the tutorial:
(Note: Please manually set it to 720p or greater to have the text appear clearly)
Contributing
Pull requests are welcome. In order to make changes to explainx, the ideal approach is to fork the repository then clone the fork locally.
For major changes, please open an issue first to discuss what you would like to change. Please make sure to update tests as appropriate.
Report Issues
Please help us by reporting any issues you may have while using explainX.
License
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file explainx-2.407.tar.gz
.
File metadata
- Download URL: explainx-2.407.tar.gz
- Upload date:
- Size: 792.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.1 CPython/3.7.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a826d83915e3e0a12cf2b2d581676d04d0c92cb2a9156a7f77f9ee096c35c650 |
|
MD5 | 8cefb7be4e19f17dcbd9947faae84e8b |
|
BLAKE2b-256 | f68a222a06d865b10d9bac24a0edd8d026c29c9e9fcb950fc4f7f189cb812f72 |