Solved – How to interpret “weight-position” plot when using self-organizing map for clustering

clusteringMATLABneural networksself organizing maps

I used MATLAB neural network toolbox to train a self-organizing map for a given data set. The obtained "weight-position" plot is given as follows. I do not think this plot looks good in comparison to the sample plot given in the MathWorks website.

enter image description here

I followed the standard MATLAB routine to train this SOM. Thus, I am having three questions on this case study.

  1. Which kind of information can I obtain from this plot?
  2. Given the shape of this plot, what can I say for the input?
  3. Since the training method is trivial and standard, I am wondering whether SOM can fit to my data set? My data set is composed of 3,000 data points, and each data points has 20,000 dimensions. The example given by MATLAB is only for 4 dimensions.

Best Answer

The SOM weight position is actually a 3D plot( use the Rotate 3D tool), and it operates as described below:

  1. If the input is one dimensional (and there fore the Neuron weights are also one dimensional), MATLAB plots this input data and weight positions in the X axis, and simply completes with zeros the Y axis, and with -1 (height -1) the Z axis.

  2. If the input is two dimensional (hence, two dimensional weights), it follows the above procedure , but this time poting the input data in the X axis and Y Axis. The z axis is filled with -1.

  3. If the input is three dimensional (3Dim weights), it plots the whole input data

  4. If the input/weights are N-dimensional, matlab only plots the first three compoenents of the inputs/weights.