Pre-packaged prototype-based machine learning models using ProtoTorch and PyTorch-Lightning.
Project description
ProtoTorch Models
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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file prototorch-models-0.5.2.tar.gz
.
File metadata
- Download URL: prototorch-models-0.5.2.tar.gz
- Upload date:
- Size: 19.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.9.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 380413cc5163d8b4cf9206e5e8827afa67cdcb3cefff21672842b0053bab4951 |
|
MD5 | cfcf6eeb94d963480bf4ae0d9a718076 |
|
BLAKE2b-256 | 62e9162aff066e7804ce595a051d21d58c4460ec5c080edf19bf57c7cd0684df |
File details
Details for the file prototorch_models-0.5.2-py3-none-any.whl
.
File metadata
- Download URL: prototorch_models-0.5.2-py3-none-any.whl
- Upload date:
- Size: 21.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.9.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7a6a4b75a4836f7753b7c0941464bc20632ba7c9fafdff1fca72467cd974e5c2 |
|
MD5 | 4ae9aa887d70dd947daea73cce230918 |
|
BLAKE2b-256 | a68cd816e3ad6fca7e6cf24b5e2af764b09b17ba13a17d1ab892db2c48ea7dde |