Skip to main content

A PyTorch and Fastai based implementation of Self-Organizing Maps

Project description

Fastsom

A PyTorch and Fastai based implementation of Self-Organizing Maps.

You can find documentation and examples here.

PyPI

Contents

Getting started

Install as a dependency

To install Fastsom, you can use pip to install the PyPi package:

pip install fastsom

or you can install directly from Github:

pip install git+ssh://github.com/kireygroup/fastsom
# or
pip install git+https://github.com/kireygroup/fastsom

Alternatively, you can clone the repository and then install as follows:

git clone git@github.com:kireygroup/fastsom
cd fastsom
python setup.py install

Docker boilerplate

This project was bootstrapped with the cookiecutter-dl-docker template.

Prerequisites

To run examples for this project you can either use Docker / Nvidia-Docker or recreate the environment on your local machine by using the provided requirements.txt.

Steps for Docker are described below.

Building the image

An utility script can be found in bin/build.sh:

./bin/build.sh

Running the container

A run script is available:

./bin/run.sh

This will mount the directories /fastsom and /nbs inside the container, allowing for code changes to be automatically replicated.

Note: if you plan on using Nvidia-Docker, you should use one of the images available on the Nvidia Container Repository.

The container will start a new Jupyter Notebook server on port 8888. Jupyter Lab is also available.

Note that the fastsom folder will be mounted inside the container, so any change you make to the source files or notebooks will be replicated on both host and container.

Developing inside the container

With Visual Studio Code and PyCharm, it is possible to use the container Python interpreter for development.

An SSH server has been configured inside the container to allow connection via PyCharm's remote interpreter feature.

In Visual Studio Code, this can be done via the Remote - Containers extension.

Documentation setup

Fastsom's documentation is built with Sphinx and deployed to Gihtub Pages via the gh-pages branch.

Documenting the code

We use a Numpy docstring notation (check out this link for more information about the various docstring styles).

Building the docs

To generate the static HTML documentation, use the following:

cd docs
make docs

Deploying the docs on GH Pages

Docs are automatically built from the master branch and pushed to the gh-pages branch on each version tag.

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

fastsom-0.1.11.tar.gz (24.5 kB view details)

Uploaded Source

Built Distribution

fastsom-0.1.11-py3-none-any.whl (32.8 kB view details)

Uploaded Python 3

File details

Details for the file fastsom-0.1.11.tar.gz.

File metadata

  • Download URL: fastsom-0.1.11.tar.gz
  • Upload date:
  • Size: 24.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.1 setuptools/51.1.0.post20201221 requests-toolbelt/0.9.1 tqdm/4.54.1 CPython/3.6.9

File hashes

Hashes for fastsom-0.1.11.tar.gz
Algorithm Hash digest
SHA256 ac04ddc519d89f38e31384e59904db54b398108160eeea6ece8dc0e72a66b72e
MD5 da2fd306521cd8323943263e5c53cc2e
BLAKE2b-256 1e2294a1776b05c2865134dc0becc5a0788c475f62d8928de0f5669a9e5c501b

See more details on using hashes here.

File details

Details for the file fastsom-0.1.11-py3-none-any.whl.

File metadata

  • Download URL: fastsom-0.1.11-py3-none-any.whl
  • Upload date:
  • Size: 32.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.1 setuptools/51.1.0.post20201221 requests-toolbelt/0.9.1 tqdm/4.54.1 CPython/3.6.9

File hashes

Hashes for fastsom-0.1.11-py3-none-any.whl
Algorithm Hash digest
SHA256 43be9f4971bc2ae1b2afa71c4f19373be5af5669ded75aa666a72a0e49df5787
MD5 e57c29994de819d74e31f7ca057c31c2
BLAKE2b-256 d0395732c67529c50dbb28aa0d16d76a64715120bb8f77f8175a2b40d8926876

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