Minimalistic implementation of the Self Organizing Maps (SOM) employing GPU.
Project description
MiniSom
Self Organizing Maps
MiniSom GPU is a minimalistic and PyTorch based implementation of the Self Organizing Maps (SOM). SOM is a type of Artificial Neural Network able to convert complex, nonlinear statistical relationships between high-dimensional data items into simple geometric relationships on a low-dimensional display. Minisom is designed to allow researchers to easily build on top of it and to give students the ability to quickly grasp its details.
This repository is a fork of the original MiniSom package.
Installation
Just use pip:
pip install minisom_gpu
How to use it
In order to use MiniSom you need your data organized as a PyTorch tensor where each row corresponds to an observation like the following:
import torch
data = torch.tensor([[ 0.80, 0.55, 0.22, 0.03],
[ 0.82, 0.50, 0.23, 0.03],
[ 0.80, 0.54, 0.22, 0.03],
[ 0.80, 0.53, 0.26, 0.03],
[ 0.79, 0.56, 0.22, 0.03],
[ 0.75, 0.60, 0.25, 0.03],
[ 0.77, 0.59, 0.22, 0.03]])
Then you can train MiniSom just as follows:
from minisom_gpu.som import MiniSom
som = MiniSom(6, 6, 4, sigma=0.3, learning_rate=0.5) # initialization of 6x6 SOM
som.train(data, 100) # trains the SOM with 100 iterations
You can obtain the position of the winning neuron on the map for a given sample as follows:
som.winner(data[0])
For an overview of all the features implemented in minisom you can browse the following examples: https://github.com/rctorres/minisom/tree/master/examples
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file minisom_gpu-0.2.0.tar.gz.
File metadata
- Download URL: minisom_gpu-0.2.0.tar.gz
- Upload date:
- Size: 9.7 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
acddd06cf28f6004cf4bd4808002527dca9fc9703eaecc538351c1bfdb672c15
|
|
| MD5 |
731368efd3157f4cc52c5422323ab188
|
|
| BLAKE2b-256 |
e2f2ccd359de76c719021fc0216cc225fc2c0478a65fe9a3f587996811c59306
|
File details
Details for the file minisom_gpu-0.2.0-py3-none-any.whl.
File metadata
- Download URL: minisom_gpu-0.2.0-py3-none-any.whl
- Upload date:
- Size: 10.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5461c1c6a9f7543b6b6b7448e3cf0e522d7f08d11176049148a62b01be75096f
|
|
| MD5 |
57b6ec1a6b328690fcc4076a89316eb0
|
|
| BLAKE2b-256 |
3b059b8eabeb049cfec6abddef21e8c08c3dde2950cb1155c8501334a002c3fc
|