Skip to main content

Highly extensible, GPU-supported Learning Vector Quantization (LVQ) toolbox built using Tensorflow 2.x and its Keras API.

Project description

ProtoFlow: Prototype Learning in TensorFlow

ProtoFlow Logo

Build Status tests GitHub tag (latest by date) docs PyPI codecov PyPI - Downloads GitHub license

PyTorch users, please see: ProtoTorch

Description

This is a Python toolbox brewed at the Mittweida University of Applied Sciences in Germany for bleeding-edge research in Prototype-based Machine Learning methods and other interpretable models. The focus of ProtoFlow is ease-of-use, extensibility and speed.

Installation

ProtoFlow can be easily installed using pip. To install the latest version, run

pip install -U protoflow

To also install the extras, run

pip install -U protoflow[docs,others,tests]

To install the bleeding-edge features and improvements before they are release on PyPI, run

git clone https://github.com/si-cim/protoflow.git
git checkout dev
cd protoflow
pip install -e .[docs,others,tests]

For gpu support, run

pip install -U protoflow[gpu]

Documentation

The documentation is available at https://www.protoflow.ml/en/latest/. Should that link not work try https://protoflow.readthedocs.io/en/latest/.

Usage

For researchers

ProtoFlow is modular. It is very easy to use the modular pieces provided by ProtoFlow, like the layers, losses, callbacks and metrics to build your own prototype-based(instance-based) models. These pieces blend-in seamlessly with Keras allowing you to mix and match the modules from ProtoFlow with other Keras modules.

For engineers

ProtoFlow comes prepackaged with many popular Learning Vector Quantization (LVQ)-like algorithms in a convenient API. If you would simply like to be able to use those algorithms to train large ML models on a GPU, ProtoFlow lets you do this without requiring a black-belt in high-performance Tensor computation.

Bibtex

If you would like to cite the package, please use this:

@misc{Ravichandran2020a,
  author = {Ravichandran, J},
  title = {ProtoFlow},
  year = {2020},
  publisher = {GitHub},
  journal = {GitHub repository},
  howpublished = {\url{https://github.com/si-cim/protoflow}}
}

Download files

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

Files for protoflow, version 0.3.4
Filename, size File type Python version Upload date Hashes
Filename, size protoflow-0.3.4.tar.gz (160.7 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page