Code Monkey home page Code Monkey logo

alignedsom's Introduction

Aligned SOM

GitHub Link: https://github.com/Znerual/AlignedSOM

Aligned SOMs aims at training mulitple layers of n SOMs with differently weighted subsets of attributes. The implementation of the SOM training is closely modelled after the decription in the paper Aligned self-organizing maps by Pampalk, Elias [1].

The Alignd SOM implementation uses the well known MiniSom package and trains multiple layers of the MiniSom [2]. A Layer has in extension to the normal MiniSom implementation the possibility to set initial codebook weights. Furter, the update method is adapted to model the distance between layers. We implemented an online-training algorithm which iteratively traines all layers.

The base visualization functions for one Layer and functions for loading the datasets were taken from PySOMVis.

Notebooks

We provide three notebooks exploring the Algind SOMs implementation.

  • AlignedSOM_implementation_details: Description of essential parts of the implemented code in more detail.
  • AlignedSOM_chainlink: Visual evaluation of the Alignd SOMs on the Chainlink dataset
  • AlignedSOM_10clusters: Visual evaluation of the Alignd SOMs on the 10Clusters dataset

Visualization Example on Animals Dataset

We show here a small example on the animals dataset as in the paper "Aligned Self-Organizing Maps" [1].

The dataset comprises 16 records of different kinds of animals, described by 13 binary-valued attributes. The animals can be categorised into three classes: birds, carnivores, and herbivores.

The features are split into activity (aspect A) and appearance (aspect B) features.
activity features: hunt, run, fly, swim
appearance features: small, medium, big, 2_legs, 4_legs, hair, hooves, mane, feathers

Alt text

How to reproduce

The algorithm and all notebooks were tested with Python 3.9 and all libraries requirements used can be found in the Pipfile or Pipfile.lock.
The virtual environment can easily be recreated using Pipenv (pipenv install).
We further provide a freez of the used requirements in the requirements.txt file.

Data

The datasets were optained from Data Mining with the Java SOMToolbox.
They can be downloaded directly from the Section Benchmark data & maps.

References

[1] Pampalk, Elias. "Aligned self-organizing maps." Proceedings of the Workshop on Self-Organizing Maps. 2003.
URL: https://www.researchgate.net/publication/2887633_Aligned_Self-Organizing_Maps

[2] Vettigli, Giuseppe. "MiniSom: minimalistic and NumPy-based implementation of the Self Organizing Map." (2018).
URL: https://github.com/JustGlowing/minisom

alignedsom's People

Contributors

markuskiesel93 avatar znerual avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.