No description, website, or topics provided.
Switch branches/tags
Nothing to show
Clone or download
Pull request Compare This branch is 2 commits ahead, 1 commit behind shresh02:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.

Explainability of Machine Learning Models

Research Project on the explainability and interpretability of machine learning models.

Getting Started

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.


  • Appilication/Backend

    • Python 3.4 or greater, Django 1.11
    • numpy, pandas, patsy, sklearn, scipy, django-cors-headers, django-filter, djangorestframework-bulk
      • To install: pip install -r requirements.txt
  • WebUI/Frontend

    • node.js
    • react-router-dom, file-saver
      • To install: cd Explainability/client; npm install
  • If using virtualenv, create a new virtualenv before running pip install -r requirements.txt

  • If using Anaconda, run conda create --name explainableml python=3.5 and source activate explainableml


  • Appilication/Backednd: Run

    • python runserver
  • WebUI/Frontend: Run

    • npm start (in Explainability/client directory)
  • Use different terminal instances for each


First, set up your python environment. If using Anaconda, run conda create --name explainableml django numpy pandas patsy sklearn scikit-learn

To install all node_modules for the frontend, use

cd Explainability/client
npm install
cd ../..

Then start the python api server with python runserver

And (in a separate terminal) start the frontend server with

cd Explainability/client
npm start

The frontend server at http://localhost:3000/ will automatically load in your default browser.

The frontend will automatically refresh the page when JavaScript files are changed.

You can view api documentation at http://localhost:8000/


You can run tests for python with python test restapi

And tests for React in Explainability/client with npm test

Database updates

Any time you update the database tables, you must also generate a migration script with python makemigrations Otherwise, tests will fail.

Deployment on a public server (not secure)

In Explainability/client, run npm run build Then at the project root run python collectstatic and python runserver


User Story Map
UI Wireframe
ERD and Internal Interface Overview


Set up using create-react-app