what is neural network sim function?

3 次查看(过去 30 天)
I set the input layer with 2 neurons and a hidden layer with 3 neurons in Matlab ANN, and trained the model.
Why are these two methods lead to differernt output:
1.
z1 = IW * I' + b1; % Output of the first hidden layer
a1 = logsig(z1); % Apply the sigmoid activation function
z2 = LW1 * a1 + b2; % Final output
output = logsig(z2); % Apply the sigmoid activation function
2.
output = sim(net, I')
I really want to use the first method, but it seems something wrong with it.

采纳的回答

Wang Xiaomeng
Wang Xiaomeng 2023-10-25
Thank you very much for your help.

更多回答(1 个)

Ayush Aniket
Ayush Aniket 2023-10-25
Hi Wang,
As per my understanding, the neural network analytical equations are not giving you the same result as through “simfunction. The reason behind this is that the "net” object returned by the feedforwardnet” neural network function in MATLAB uses pre-processing and post-processing functions to process the input and output data.
To achieve the same output through the “sim” function, you can add these lines to your code:
normalized_I' = mapminmax('apply', I', net.inputs{1}.processSettings{1}); %we are applying the same pre-processing as in the feedforwardnet
output = mapminmax('reverse', output, net.outputs{2}.processSettings{1});%we are applying the same post-processing as in the feedforwardnet
To read more about the process functions please refer to the following documentation page:
Hope it helps.

类别

Help CenterFile Exchange 中查找有关 Sequence and Numeric Feature Data Workflows 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by