Skip to main content

Companion web application for EQUINE^2: Establishing Quantified Uncertainty for Neural Networks

Project description

EQUINE Webapp

TypeScript

This is a web application utilizing EQUINE for neural network uncertainty quantification through a visual user interface. The webapp allows you to upload your own model and data, and let the server retrain the model with EQUINE. The visualization dashboard also allows you to analyze your samples and view uncertainty quantification visualizations to explain model uncertainty.

The EQUINE repository is here https://github.com/mit-ll-responsible-ai/equine

ScatterUQ Static Demo

You can view a static demo of ScatterUQ here:

https://mit-ll-responsible-ai.github.io/equine-webapp/demo

ScatterUQ Out of Distribution Example

ScatterUQ at IEEE VIS 2023

We presented ScatterUQ at IEEE VIS 2023: https://ieeexplore.ieee.org/document/10360884

Our data and analysis script can be found in this release: https://github.com/mit-ll-responsible-ai/equine-webapp/releases/tag/ScatterUQ-VIS-2023-Data

Usage with Python and PyPI

You can install and run the equine-webapp as a command in your terminal with python. These commands create a new conda environment, activate the environment, install equine-webapp from PyPI, and start the equine-webapp which will be available at localhost:8080.

conda create --name my-environment-name python=3.10
conda activate my-environment-name
pip install equine-webapp
equine-webapp

Local Development

You can also develop the webapp locally in two ways:

  1. Run equine-webapp as a locally installed package with local web files
  2. Run equine-webapp with local Node.js/Next.js and Python/Flask development servers

Run equine-webapp as a locally installed package with local web files

  1. Install node packages
cd client
npm i
  1. Make a copy of client/.env.example and rename to client/.env.local. This new file should be git-ignored by default.

  2. Build the local static web files

npm run build
  1. Install the package locally from the root of the repo and run it
../
conda create --name equine-webapp python=3.10
conda activate equine-webapp
pip install -e .
equine-webapp

Run equine-webapp with local Node.js/Next.js and Python/Flask development servers

Node.js/Next.js Frontend Development Server

  1. Make a copy of client/.env.example and rename to client/.env.local. This new file should be git-ignored by default.

  2. Install node packages and start the development server

cd client
npm i
npm run dev
Frontend testing
npm run test

Python/Flask Development Server

Create a new Anaconda environment, activate it, install the requirements, and start the dev server

conda create --name equine-webapp python=3.10
conda activate equine-webapp
pip install -r requirements.txt
python start_dev_server.py
Python Testing
pip install pytest
python -m pytest

Bibliography

@INPROCEEDINGS{10360884,
  author={Li, Harry X. and Jorgensen, Steven and Holodnak, John and Wollaber, Allan B.},
  booktitle={2023 IEEE Visualization and Visual Analytics (VIS)}, 
  title={ScatterUQ: Interactive Uncertainty Visualizations for Multiclass Deep Learning Problems}, 
  year={2023},
  volume={},
  number={},
  pages={246-250},
  keywords={Deep learning;Dimensionality reduction;Training;Uncertainty;Visual analytics;Soft sensors;Interactive systems;Uncertainty quantification;Machine learning;Dimensionality reduction;Visualization;Explainable AI},
  doi={10.1109/VIS54172.2023.00058}}

Disclaimer

DISTRIBUTION STATEMENT A. Approved for public release. Distribution is unlimited.

© 2023 MASSACHUSETTS INSTITUTE OF TECHNOLOGY

  • Subject to FAR 52.227-11 – Patent Rights – Ownership by the Contractor (May 2014)
  • SPDX-License-Identifier: MIT

This material is based upon work supported by the Under Secretary of Defense for Research and Engineering under Air Force Contract No. FA8702-15-D-0001. Any opinions, findings, conclusions or recommendations expressed in this material are those of the author(s) and do not necessarily reflect the views of the Under Secretary of Defense for Research and Engineering.

The software/firmware is provided to you on an As-Is basis.

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

equine_webapp-0.1.1rc7.tar.gz (2.3 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

equine_webapp-0.1.1rc7-py3-none-any.whl (1.4 MB view details)

Uploaded Python 3

File details

Details for the file equine_webapp-0.1.1rc7.tar.gz.

File metadata

  • Download URL: equine_webapp-0.1.1rc7.tar.gz
  • Upload date:
  • Size: 2.3 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.8

File hashes

Hashes for equine_webapp-0.1.1rc7.tar.gz
Algorithm Hash digest
SHA256 fd3030cd66e19bca96df340a94a0684559bbd227aca70f45317e05841798bbd6
MD5 68bcf13295b72e965ac11d851617707b
BLAKE2b-256 ada1e13bce29805b7cfd34c9b450587d958dfd6dbe79d95ffc90d523f45b75f1

See more details on using hashes here.

Provenance

The following attestation bundles were made for equine_webapp-0.1.1rc7.tar.gz:

Publisher: python-publish.yml on mit-ll-responsible-ai/equine-webapp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file equine_webapp-0.1.1rc7-py3-none-any.whl.

File metadata

File hashes

Hashes for equine_webapp-0.1.1rc7-py3-none-any.whl
Algorithm Hash digest
SHA256 db1c890a3579a1acd6fe8d5394706d4d953938c43ae094b6ee4f5779ce229c85
MD5 10fd2f2f30afb97c50b456bde14f0b72
BLAKE2b-256 145c04db5bfbd36b221cf20c415c42ebd84af15ca6a1ec924be79eb459f6cc65

See more details on using hashes here.

Provenance

The following attestation bundles were made for equine_webapp-0.1.1rc7-py3-none-any.whl:

Publisher: python-publish.yml on mit-ll-responsible-ai/equine-webapp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page