machine-learningneural-networkself-organizing-maps

Kohonen Self Organizing Maps: Determining the number of neurons and grid size


I have a large dataset I am trying to do cluster analysis on using SOM. The dataset is HUGE (~ billions of records) and I am not sure what should be the number of neurons and the SOM grid size to start with. Any pointers to some material that talks about estimating the number of neurons and grid size would be greatly appreciated.

Thanks!


Solution

  • I don't have a reference for it, but I would suggest starting off by using approximately 10 SOM neurons per expected class in your dataset. For example, if you think your dataset consists of 8 separate components, go for a map with 9x9 neurons. This is completely just a ballpark heuristic though.

    If you'd like the data to drive the topology of your SOM a bit more directly, try one of the SOM variants that change topology during training:

    Unfortunately these algorithms involve even more parameter tuning than plain SOM, but they might work for your application.