MATLAB: Multiple output in TDNN (Time Delay Neural Network)

mimoneural networkstdnntime delay neural networks

Hello,
My name is Oresti and I am currently working with time delay neural networks ("timedelaynet").
I have three inputs signals and three outputs signals, and the problem appears when the the data is prepared (for taking into account the delay established).
[Is_tr,Ii_tr,Ai_tr,Os_tr] = preparets(net,cell_inputs_train,cell_outputs_train);
The idea is to define the particular NN by establishing the different parameters, but actually this is in principle not allowed for the outputs:
Considering 'net' the struct for the TDNN, defined as:
net = timedelaynet(DELAYS,LAYERS);
it is absolutely feasible to define the number of inputs
net.numInputs = Ninputs;
but as far as I know you cannot modify the number of outputs
net.numOutputs (READ ONLY)
because you have only read permissions.
Of course, I know that the problem can be split so defining three independent TDNN for each output (my current solution) but I would like to know why I cannot define it directly.
If someone has an idea I will really appreciate the answer.
Thanks in advance,
Oresti.

Best Answer

% I have three inputs signals and three outputs signals, and the problem % appears when the the data is prepared (for taking into account the % delay established). % % % [Xs,Xi,Ai,Ts,EWs,shift] = preparets(net,Xnf,Tnf,Tf,EW) % % [Is_tr,Ii_tr,Ai_tr,Os_tr] = preparets(net,cell_inputs_train, ... % cell_outputs_train);
1. IF YOU PUT TRAINING DATA INTO PREPARETS, YOU WILL HAVE TO PREVENT CONFIGURE OR TRAIN FROM USING THE DEFAULT DIVIDERAND TO OBTAIN VAL & TEST DATA.
% The idea is to define the particular NN by establishing the different % parameters, but actually this is in principle not allowed for the outputs: % % Considering 'net' the struct for the TDNN, defined as: % % net = timedelaynet(DELAYS,LAYERS);
2. NO. THE NO. OF HIDDEN LAYER NODES, NOT THE NUMBER OF LAYERS.
% it is absolutely feasible to define the number of inputs % % net.numInputs = Ninputs; % % but as far as I know you cannot modify the number of outputs % % net.numOutputs (READ ONLY) % % because you have only read permissions.
3.NO. NUMBER OF INPUTS AND OUTPUTS RECOGNIZED BY THE NET IS DETERMINED BY ONFIGURE OR TRAIN
% Of course, I know that the problem can be split so defining three % independent TDNN for each output (my current solution) but I would % like to know why I cannot define it directly. % % If someone has an idea I will really appreciate the answer.
SEE 3 ABOVE. ALSO, MULTIDIMENSIONAL DOCUMENTATION EXAMPLES.
HOPE THIS HELPS.
GREG