Regressin equation from neural network does not match to net(x)

Hello,
I have created the codes using the button in the nnstart toolbox 'simple script' as below. After training I have compared the values using following commands and it was showing me different results.
  • y1 = b2 + LW*tanh(b1+IW*x)
  • y2 = net(x)
Could someone please help me what the promblem is?
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
load('Input_Output.mat') % Data attached
inputs = Input_transpose; targets = Output_transpose;
hiddenLayerSize = 10; net = fitnet(hiddenLayerSize);
net.divideParam.trainRatio = 70/100; net.divideParam.valRatio = 15/100; net.divideParam.testRatio = 15/100;
[net,tr] = train(net,inputs,targets);
outputs = net(inputs); errors = gsubtract(targets,outputs); performance = perform(net,targets,outputs)
view(net)
b1 = net.b{1};
b2 = net.b{2};
IW = net.IW{1,1};
LW = net.LW{2,1};
x = Input_transpose(:,1)
y = b2 + LW*tanh(b1+IW*x)
net(x)

 Akzeptierte Antwort

Greg Heath
Greg Heath am 19 Apr. 2015
Bearbeitet: Greg Heath am 19 Apr. 2015

0 Stimmen

You did not take into account the default minmax normalization of inputs and targets
See
Hope this helps.
Greg

Weitere Antworten (0)

Kategorien

Mehr zu Deep Learning Toolbox finden Sie in Hilfe-Center und File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by