フィルターのクリア

what is neural network sim function?

3 ビュー (過去 30 日間)
Wang Xiaomeng
Wang Xiaomeng 2023 年 10 月 16 日
回答済み: Wang Xiaomeng 2023 年 10 月 25 日
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.

Community Treasure Hunt

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

Start Hunting!

Translated by