Skip to main content

Pre-packaged prototype-based machine learning models using ProtoTorch and PyTorch-Lightning.

Project description

ProtoTorch Models

GitHub tag (latest by date) PyPI GitHub license

Pre-packaged prototype-based machine learning models using ProtoTorch and PyTorch-Lightning.

Installation

To install this plugin, simply run the following command:

pip install prototorch_models

Installing the models plugin should automatically install a suitable version of ProtoTorch. The plugin should then be available for use in your Python environment as prototorch.models.

Available models

LVQ Family

  • Learning Vector Quantization 1 (LVQ1)
  • Generalized Learning Vector Quantization (GLVQ)
  • Generalized Relevance Learning Vector Quantization (GRLVQ)
  • Generalized Matrix Learning Vector Quantization (GMLVQ)
  • Limited-Rank Matrix Learning Vector Quantization (LiRaMLVQ)
  • Localized and Generalized Matrix Learning Vector Quantization (LGMLVQ)
  • Learning Vector Quantization Multi-Layer Network (LVQMLN)
  • Siamese GLVQ
  • Cross-Entropy Learning Vector Quantization (CELVQ)
  • Soft Learning Vector Quantization (SLVQ)
  • Robust Soft Learning Vector Quantization (RSLVQ)
  • Probabilistic Learning Vector Quantization (PLVQ)
  • Median-LVQ

Other

  • k-Nearest Neighbors (KNN)
  • Neural Gas (NG)
  • Growing Neural Gas (GNG)

Work in Progress

  • Classification-By-Components Network (CBC)
  • Learning Vector Quantization 2.1 (LVQ2.1)
  • Self-Organizing-Map (SOM)

Planned models

  • Generalized Tangent Learning Vector Quantization (GTLVQ)
  • Self-Incremental Learning Vector Quantization (SILVQ)

Development setup

It is recommended that you use a virtual environment for development. If you do not use conda, the easiest way to work with virtual environments is by using virtualenvwrapper. Once you've installed it with pip install virtualenvwrapper, you can do the following:

export WORKON_HOME=~/pyenvs
mkdir -p $WORKON_HOME
source /usr/local/bin/virtualenvwrapper.sh  # location may vary
mkvirtualenv pt

Once you have a virtual environment setup, you can start install the models plugin with:

workon pt
git clone git@github.com:si-cim/prototorch_models.git
cd prototorch_models
git checkout dev
pip install -e .[all]  # \[all\] if you are using zsh or MacOS

To assist in the development process, you may also find it useful to install yapf, isort and autoflake. You can install them easily with pip. Also, please avoid installing Tensorflow in this environment. It is known to cause problems with PyTorch-Lightning.

Contribution

This repository contains definition for git hooks. Pre-commit is automatically installed as development dependency with prototorch or you can install it manually with pip install pre-commit.

Please install the hooks by running:

pre-commit install
pre-commit install --hook-type commit-msg

before creating the first commit.

The commit will fail if the commit message does not follow the specification provided here.

FAQ

How do I update the plugin?

If you have already cloned and installed prototorch and the prototorch_models plugin with the -e flag via pip, all you have to do is navigate to those folders from your terminal and do git pull to update.

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

prototorch-models-0.5.4.tar.gz (19.6 kB view details)

Uploaded Source

Built Distribution

prototorch_models-0.5.4-py3-none-any.whl (21.9 kB view details)

Uploaded Python 3

File details

Details for the file prototorch-models-0.5.4.tar.gz.

File metadata

  • Download URL: prototorch-models-0.5.4.tar.gz
  • Upload date:
  • Size: 19.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.11.2

File hashes

Hashes for prototorch-models-0.5.4.tar.gz
Algorithm Hash digest
SHA256 768ec131db5736fe654b8cacd9f2215f9db67cc204b457373e5617be6c4b15bf
MD5 179aadd6ab8e8d3c605285ce4453dfed
BLAKE2b-256 530ccd98a70046258c5d43f448bb92f2243f73a548a7a32c36de98258f3ae33d

See more details on using hashes here.

File details

Details for the file prototorch_models-0.5.4-py3-none-any.whl.

File metadata

File hashes

Hashes for prototorch_models-0.5.4-py3-none-any.whl
Algorithm Hash digest
SHA256 eb0b2351048a97809a05b26aadcb6111a52a30e17bfd26d75a9a2be4163eced0
MD5 9839bc3b3bc1c2401d60c1c8521f208d
BLAKE2b-256 213a8496baf654a0d5c6d175bff38857f4c392f8687f0d950b179d86e5a3e6e4

See more details on using hashes here.

Supported by

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