Aifred-Health / VulcanAI

A high level deep learning framework for quickly prototyping networks with added tools in data visualisation, model interpretability and performance metrics
https://www.aifredhealth.com
GNU Affero General Public License v3.0
17 stars 8 forks source link
data-analysis data-cleaning data-science data-visualization deep-learning deep-neural-networks feature-engineering mental-health python3 pytorch scikit-learn

Vulcan

Build Status Documentation Status

Vulcan is Aifred Health's framework for rapid deep learning model prototyping and analysis.

Vulcan provides the tools for:

  1. Rapid-yet-flexible data preprocessing
  2. Rapid creation of modular neural networks. Among the usual we also include capability for:
    • snapshot ensembles
    • multi-modal networks with complex architectures
    • state of the art activations
    • training and saving models across multiple machines
  3. Model Evaluation
  4. Visualization for data and network interpretability. Among the usual we also include:

Vulcan is built on Pytorch. We think Pytorch is great, so our framework was built with the goal of facilitating but not impeding access to all of Pytorch. Want to do things the easy way? Great, create a network using our simple configuration dict. Need something a little more complicated? Extend our classes or write your own Pytorch module to use within the rest of our framework.

For a more detailed runthrough on how to use the tools, please look at the documentation.

Installation

Pytorch must be installed separately as per your devices requirements (e.g. GPU/CPU). Afterwards, Vulcan can be installed using PyPI:

<sudo> pip install vulcanai

or you can install from source after cloning the repository:

git clone https://github.com/Aifred-Health/Vulcan.git
cd Vulcan
pip install -e vulcanai

Releases

The current stable release is 1.0.8

Contributions

We welcome contributions, particularily to tabular_data_utils, additional processing methods, and to generalized and generalizable network architectures. Please create an issue before embarking on a solution, however, as we may already have something similar in the works!