Growing hierarchical self-organizing maps For learning GHSOM I figured out I should study SOM as a first step.
Now, I know the basics of SOM, about weighted vectors and euclidean distances: when the human brain cannot easily process more than two dimensions of data, SOM will cluster, or in other words, map the data from high dimensions into lower ones (from this awesome link).
I found out what vertices of weights and similarity will do, but I still couldn't understand exactly how GHSOM works. I read in an essay that it works with layers of SOMs.  With some examples I hope to understand it better.
Would you please tell me a proper reference for a beginner to study about it?
Or can anyone explain how the algorithm works?
Thanks in advance.
 A: A quick Google leads to a nice page at Vienna University that looks quite reasonable. 
From what I can tell, the algorithm keeps track of how much error there is for each node, which is the difference between its vector and the vectors of the training data for which it won. A SOM's error is the total of the errors of its nodes.
If a SOM's error exceeds a threshold, you expand the SOM, based on how different its nodes are from each other. So areas where there are great-enough errors and great-enough differences get expanded. (You need more data points where there is something "going on".)
Once you've expanded the SOM to keep the overall error below the threshold, you then look at each node, and if its individual error is large enough, you take the subset of training data on which it won and create a sub-SOM that you train with the errors. That is, the sub-SOM is handling the differences between the parent node and the data on which it won.
That sub-SOM is trained/grown in the same way as the parent.
So the algorithm increases the extent of the SOM to allow the map to span the whole data set. It then "zooms in" on remaining troublesome nodes, increasing resolution by creating a SOM for only the training data associated with that node. You thus don't create an enormous SOM in order to get the resolution you need at a few particular clusters.
At least that's how it reads to me. I like it.
