MATLAB Answers

How do I create a neural network that will give multiple input and outputs?

조회 수: 138(최근 30일)
Junghyun Im
Junghyun Im 22 Nov 2019
댓글: Ray ptucha 24 Jan 2021
Hi I am trying to design a ffnn neural network. I have input data of 900x4, and I want to design with output data of 900x2. Here's how I designed it: But you can't assign function output to this expression. Error occurs.
How do you solve this?
clear all; close all; clc;
a = xlsread('input2.xlsx');
[ I 4 ] = size(input)
[ O 2 ] = size(target)
input = [a(:,3) a(:,4) a(:,5) a(:,6)];
target = [a(:,1) a(:,2)];
net = feedforwardnet(10);
net = train(net, input', target');
y = net(input);
perf = perform(net,y,target)

답변(2개)

Bhargavi Maganuru
Bhargavi Maganuru 26 Nov 2019
Inputs for the train should be R-by-Q matrix where R is input size and Q is batch size. Input size is 900x4 (Q- 900 and R-4) and target size is 900x2(Q-900 and R-2) in your case. So there is no issue with the below line
net = train (net, input', target');
But the lines
y = net(input);
perf = perform(net,y,target)
will give you an error because sizes don’t match. You could try using transpose for both input and target.
y = net(input');
perf = perform(net,y,target');
Hope this helps!

Greg Heath
Greg Heath 1 Jan 2020
ALWAYS arrange your data so that
[ I N ] = size(input)
[ O N ] = size(output)
Hope this helps.
Greg
  댓글 수: 1
Ray ptucha
Ray ptucha 24 Jan 2021
Greg, I noticed that you have answered this question online numerous times- thank you. However, your answer is terse. It would be great if you could post a simple example so that users can step through it. One good example is at:
https://www.mathworks.com/help/deeplearning/ug/train-network-with-multiple-outputs.html
but requires 2020b, which most readers probably don't have yet...
Thank you.

댓글을 달려면 로그인하십시오.

Community Treasure Hunt

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

Start Hunting!

Translated by