SOM is a data visualization technology that reduces the dimensions of data through the use of self-organizing neural network, to help us to understand the high dimensional data.
Initialize the map with random weight vectors.
for t = 0 ~ 1
select a sample randomly from the set of training data
every node is examined and find the best match unit --- (a)
choose neighbors and scale neighbors --- (b)
(a): go through all the weight vector and calculate the distance of each weight to the sample.
(b): different methods to choose neighbors, such like Gaussian, or within a radius R. The new value is: current value * (1 –t) + sample vector * t.
Disadvantages: Need a value for each dimension of each sample. It is very computationally expensive.