MATLAB: Neural Network: Blast Furnace Simulation -How to how many neurons/layers i should use to optimize the network

Deep Learning Toolboxneural networkoptimizationsimulation

I´m sort of a new to neural networks and need some help. I´m working on a project that simulates a blast furnace and forcasts the silicon content of the molten metal output. I´ve tried many different combinations, sadly i haven´t had any real breakthrough. The best combination so far, that still doesn´t return satsfying results, is a 2 layer network:
180 neurons – TANSIG
1 neuron – PURELIN
Training = LM
I have 11 vectors of 1000 elements as input, some range from 0-10 some from 1300-1500. The target vector is the same size ranging from 0-3.
Any ideas on what I should do?

Best Answer

INCORRECT: The target vector does not have the same size.
Standardize input and target matrices (ZSCORE or MAPSTD)
[I N ] = size(input) % [11 1000 ] [O N ] =size(target) % [ 1 1000 ]
Plot the output vs each input
Use the plot, CORRCOEF and REGRESS for indications of insignificant inputs.
Ntrn = N - 2*(0.15*N) % 700 Neural Network default
Ntrneq = Ntrn*O % 700 No. of Design equations%
Nw=(I+1)*H+(H+1)*O = 13*H + 1 unknown weights for I-H-O net
% Hub = -1+ceil( (Ntrneq-O)/(I+O+1) ) % 53 upperbound for Ntrneq >= Nw
First try to find a good value for H. Try
Ntrials = 10% random initial weight trials for each of the values of H in the range
Hmin=0
dH = 5
Hmax =50
j = 0
for h = Hmin:dH:Hmax
j = j+1
if h == 0
net = fitmet([]);
else
net = fitnet(h);
end
for i = 1:Ntrials
% --------SNIP
end
end
Choose the smallest value of h that yields acceptable validation set results.
Hope this helps.
Thank you for formally accepting my answer
Greg