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)

 採用された回答

Greg Heath
Greg Heath 2015 年 4 月 19 日
編集済み: Greg Heath 2015 年 4 月 19 日

0 投票

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

その他の回答 (0 件)

カテゴリ

ヘルプ センター および File ExchangeDeep Learning Toolbox についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by