MATLAB: SOM training/t​esting-sim​-trainr

Deep Learning ToolboxMATLABneural networksim

I want to differentiate 3 sets of data, using SOFM. I am getting very absurd results. Sometimes the sample hits reverses. Are we supposed to use the 'sim' command to test a network? if yes, then even the data that is being used to train the network, when simulated, doesn't give more than 20-40% accuracy. How to go about it? Where could have I gone wrong?Does topology make a difference?I am using dimensions as [3] only, since 3 sets are there Also, I used wavelet decomposition to process my data, and selected some coefficients. Please Help.
PS: I am using trainr(by default from GUI – nntool). Thanking you in advance.

Best Answer

SOFM is not meant for classification. Therefore Kohonen extended it to LVQ (lvqnet).
However, the MLP (newff, patternnet) and RBF (newrb) and are based on universal approximators and, for me, are preferrable.
Hope this helps.
Greg