This repository contains a simple python implementation of the Kohonen self-organizing map for dimensionality reduction. The code supports dimensionality reduction from 2 to 1 dimension.
The green dots represent the inputs, the white dots and lines represent the neurons and their connections. The input space and neuron space are superimposed to show how well the network is learning to represent the inputs.
A Kohonen Network is a type of neural network that tries to represent the input data in a lower dimensional space while preserving to its best the topology of the input space. It can be used to reduce the dimensions of the data one wants to analyze, as well as to simplify the input data to input to another neural network.