How to create a simple fully connected neural network with multiple outputs?

20 views (last 30 days)
I need to create a fully connected neural network that can have multiple otputs.
I see RegressionNeuralNetwork is a very good solution for me, but its output size can only be 1.
Please refer me to an example.

Answers (1)

Ashu
Ashu on 30 Nov 2022
Hey Mahmoud,
To train a network with multiple outputs, you must train the network using a custom training loop.
Example on Training and Inferencing Multiple Output Neural Network : https://www.mathworks.com/help/deeplearning/ug/train-network-with-multiple-outputs.html
To understand more about Multiple Input and Output Neural Networks : https://www.mathworks.com/help/deeplearning/ug/multiple-input-and-multiple-output-networks.html
Regards
  2 Comments
Mahmoud Elzouka
Mahmoud Elzouka on 30 Nov 2022
Thanks @Ashu for your answer.
I would like to "create" the NN from known parameters (i.e., biases and weights). Would you please share an example?
Ashu
Ashu on 13 Dec 2022
Edited: Ashu on 14 Dec 2022
Hey Mahmood,
To set the weights and biases, you can use 'setwb'.
Here is a small example of creating a network with multiple outputs :
x = randn(18,141); % input data
t = randn(18,141); % ground truth label
net = feedforwardnet([ 36 36 ]);
net = train(net,x,t);
view(net)
Now to set the weights and biases -
net = setwb(net,rand(10,1));
To view the parameter values-
net.IW{1,1}
net.b{1}
To know more about 'setwb' you can refer this -

Sign in to comment.

Categories

Find more on Sequence and Numeric Feature Data Workflows 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!