Regressin equation from neural network does not match to net(x)
1 view (last 30 days)
Show older comments
Keunwook Chung
on 17 Apr 2015
Commented: Mohamed El Ibrahimi
on 25 Jun 2020
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)
Accepted Answer
Greg Heath
on 19 Apr 2015
Edited: Greg Heath
on 19 Apr 2015
You did not take into account the default minmax normalization of inputs and targets
See
Hope this helps.
Greg
More Answers (0)
See Also
Categories
Find more on Define Shallow Neural Network Architectures in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!