Implementing a Neural Network

조회 수: 1 (최근 30일)
Tony Stark
Tony Stark 2022년 10월 25일
댓글: Walter Roberson 2022년 10월 26일
I am trying to create a linear neural network that takes in 11 inputs and gives out 5 outputs.
I've been using the following documentation as reference: https://www.mathworks.com/help/deeplearning/ug/linear-neural-networks.html
Now, x is a 75 by 11 array, of inputs for the training data.
Meanwhile, y is a 5 by 75 array, of true label outputs for the training data.
So far I have tried:
P = x'
T = y
net = linearlayer;
net = configure(net,P,T);
net.IW{11,5}
net.b{1}
I am getting an error when initializing the weights, what am I doing wrong? Since there is going to be 10 inputs, I assume that there will be 11 weights. Then there should be 1 bias weight.
Overall structure is supposed to be 11 inputs for the input layer, 1 hidden layer, and an output layer of 5 outputs. (Hence, y has 5 rows. Also, hence why x has 11 columns)
I am only trying to set up the linear neural network, not at the point of training it.

채택된 답변

Walter Roberson
Walter Roberson 2022년 10월 26일
x = rand(75,11);
y = randi(5, 5, 75);
P = x';
T = y;
net = linearlayer;
net = configure(net,P,T);
net.IW
ans = 1×1 cell array
{5×11 double}
net.IW{1}(5,11)
ans = 0
net.b{1}
ans = 5×1
0 0 0 0 0
  댓글 수: 2
Tony Stark
Tony Stark 2022년 10월 26일
Thank you for your answer, it is really helpful. Although, since there are 11 inputs, shouldn't there be 11 weights? Why is the answer just 0?
Walter Roberson
Walter Roberson 2022년 10월 26일
There are 11 scalar weights for each of the 5 outputs, a 5 x 11 array. Asking to look at the 11, 5 configuration is asking to look at the initialization weight for the last step for the last output, a scalar.

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

추가 답변 (0개)

제품


릴리스

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by