Skip to main content

Explain and debug any black-box Machine Learning model.

Project description

explainX.ai

Python supported explainx.ai website

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. Tweet

explainX.ai

Why we need explainability & interpretibility?

Essential for:

  1. Model debugging - Why did my model make a mistake? How can I improve the accuracy of the model?
  2. Detecting fairness issues - Is my model biased? If yes, where?
  3. Human-AI cooperation - How can I understand and trust the model's decisions?
  4. Regulatory compliance - Does my model satisfy legal & regulatory requirements?
  5. High-risk applications - Healthcare, Financial Services, FinTech, Judicial, Security etc,.

Visit our website to learn more: https://www.explainx.ai

Try it out

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:

  1. Import required module.
from explainx import * 
from sklearn.ensemble import RandomForestClassifier
from sklearn.model_selection import train_test_split
  1. 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()
  1. 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)
  1. Train your model.
# Train a RandomForest Model
model = RandomForestClassifier()
model.fit(X_train, Y_train)
  1. Pass your model and dataset into the explainX function:
explainx.ai(X_test, Y_test, model, model_name="randomforest")
  1. 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
explainX.ai

Learn to analyze the dashboard by following this link: explainX Dashboard Features

Visit the documentation to learn more

Models Supported

  1. Catboost
  2. XGBoost==1.0.2
  3. Gradient Boosting Regressor
  4. RandomForest Model
  5. SVM
  6. KNeighboursClassifier
  7. Logistic Regression
  8. DecisionTreeClassifier
  9. Scikit-learn Models
  10. Neural Networks

Walkthough Video Tutorial

Please click on the image below to load the tutorial:

here

(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

MIT

Project details


Download files

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

Source Distribution

explainx-2.407.tar.gz (792.4 kB view hashes)

Uploaded Source

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