MATLAB: Supervised training of SOM in MATLAB

Deep Learning Toolboxneural networksomsupervised training

I have a labelled data set, each data entry is of six dimensional. Each data entry is pre-labelled as belonging to one of 10 clusters.
I would like to train a SOM to fit this labelled data set. In other words, I would like to enforce a SOM that can exactly( or almost) cluster the same result to each data entry as the pre-labelled one.
Is there a function in the MATLAB neural network toolbox that can fulfill the above requirement?

Best Answer

The "SO" in SOM means "Self-Organizing" and refers to using the Kohonen algorithm for UNSUPERVISED clustering. Do not use the acronym for supervised clustering.
Supervised clustering is called classification. Good classification algorithms do not usually restrict the number of clusters per class. They tend to create additional clusters to minimize overlapping clusters of different classes.
Kohonen's algorithms for supervised clustering (i.e., classification) are LVQ1 and LVQ2 and can be found in MATLAB's Neural Network Toolbox. I think a recommended initial configuration is that provided by SOM.
However, If you just want to minimize the misclassification rate, do not restrict the clusters to one per class and use NEWRB. You could try to limit the number of hidden nodes to 10. However, NEWRB may create 2 for one class before creating one for other classes.
NEWRB needs to be modified to accept an initial configuration of hidden nodes (cluster centers).
If you just want to minimize the misclassification rate and do not care about clusters, use NEWFF.
Hope this helps.
Greg
P.S. How much 6-dimensional data do you have