Designing black box machine learning algorithms are sometimes challenging and confusing to explain. But in reality, there are diffrenet ways to explain these models and also understand how each featue contributes to the accuracy of the model. explainMyModel is an open source webapp built to easily explain Supervised machine learning models merely by dragging and dropping without writing any code.
Name | Brief |
---|---|
Streamlit | An open source app framework for building beautiful data and ML apps |
eli5 | python library to debug ML classifier and expain thier predictions |
pdpbox | python library used to visualize the impact of features on models |
shap | python library using game theoristic approach to explain outputs of ML models |
Lime | |
Pandas | python library for data manipulaion and analysis |
Numpy | Python library for numerical computation |
Currently, explainMyModel uses library eli5 for Permutation Importance, pdpbox for Partial Dependency plot and shap for SHAP(SHapley Additive exPlanations) values. Features to implement are;
- LIME
- Comparing features with pdpbox
- Better UI
- Add tree and deep earning explainer for shap values to improve result speed
---> Gives a brief overview about the app and also explanation about what each explain feature means and how they work
---> This is the heart of the app, here the user uploads features on the app and selects any of the explain feature to get explanation
---> This part contains some code template to help you save some of the files required to eplain the model.
- Fork the repo
- Clone the repo
- Navigate to your local repository
- Pull latest changes from upstream to local repository
- create new branch
- Contribute
- Commit changes
- Push changes to your fork
- Begin pull request(PR)