Sim function giving different answer

1 vue (au cours des 30 derniers jours)
Omotayo Asiru
Omotayo Asiru le 17 Sep 2016
Modifié(e) : Greg Heath le 17 Sep 2016
I have trained a neural network with XOR gate using nprtool. I want to export it into my .net application. I used d sim function to simulate the network and it produced the expected result. However, the sim function does not work outside matlab so i need to write out the weights so i can use in my dotnet application. I wrote this function and tested it in matlab. The problem is that the function does not return same result as when i use sim function in matlab. Please i need help!!!
function [ Result ] = TrainedXOR_net(input )
load C:\Users\Student\Desktop\my_MatlabFiles\SampleXOR_Net.mat
y1 = tansig(net.IW{1}* input + net.b{1});
Result = tansig(net.LW{2}* y1 + net.b{2});
end
  1 commentaire
Greg Heath
Greg Heath le 17 Sep 2016
Modifié(e) : Greg Heath le 17 Sep 2016
It's a common mistake responsible for many posts in both the NEWSGROUP and ANSWERS.

Connectez-vous pour commenter.

Réponse acceptée

Omotayo Asiru
Omotayo Asiru le 17 Sep 2016
I got it sorted. Just wanna post my solution so another person with same problem can sort it easily. It turns out that i needed to do some pre-processing on my input and post-processing on the result. With this code below,I now have same result as sim function.
function [ Result ] = TrainedXOR_net(inputs)
%This is just to load the pre-trained network from the location i saved it.
load C:\Users\Student\Desktop\my_MatlabFiles\SampleXOR_Net.mat
for iii = 1:numel(net.inputs{1}.processFcns)
inputs = feval( net.inputs{1}.processFcns{iii}, 'apply', inputs, net.inputs{1}.processSettings{iii} );
end
y1 = tansig(net.IW{1}* inputs + net.b{1});
Result = tansig(net.LW{2}* y1 + net.b{2});
for iii = 1:numel(net.outputs{2}.processFcns)
Result = feval( net.outputs{2}.processFcns{iii},'reverse', Result, net.outputs{2}.processSettings{iii} );
end

Plus de réponses (0)

Catégories

En savoir plus sur Deep Learning Toolbox dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by