Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

New to MATLAB?

Thread Subject:
Incremental training of a SOM neural network

Subject: Incremental training of a SOM neural network

From: Ahmad Ammari

Date: 10 Feb, 2009 16:35:06

Message: 1 of 1

I am trying to train a SOM (Self Organizing Map) neural network using the incremental training algorithm (as opposed to the batch training algorithm). From Matlab help, I understand that I have to use two things:
1. the adapt function instead of the train function
2. the input variable should be a cell array instead of a regular matrix.

I have my input as a regular 21 X 219 matrix, representing 219 samples with each sample containing 21 attributes (dimensions).

So to convert this input to the form of a cell array, I used the mat2cell function. The result is having a new input cell array variable of (1X219 cell), with each cell contains a column vector of 21 elements.

I used this new input to create the SOM using the newsom function:
net = newsom(cellArray,[5,5]);

I set the number of passes (increments) to be 200 by:
net.adaptParam.passes = 200;

Now I used it to train the network incrementally with the adapt function :
[updatedNet,output,error] = adapt(net,cellArray);

The strange thing is that when I plotted the hits diagram, I only saw 1 hit in all the map ! Although when I used to do the batch training, I used to see a number of hits that is equal to the number of samples I have in my input variable !!

Is there something I am missing in my incremental training experiment?!

Thanks in advance

Tags for this Thread

No tags are associated with this thread.

What are tags?

A tag is like a keyword or category label associated with each thread. Tags make it easier for you to find threads of interest.

Anyone can tag a thread. Tags are public and visible to everyone.

Contact us