What's wrong with my neural network?
3 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Tony Stark
il 26 Ott 2022
Risposto: Amanjit Dulai
il 27 Ott 2022
I am trying to debug and figure out why my code is not getting better with each epoch, rather it's getting progressively worse.
I am trying to make it so that I get better training of my training data each time I run the code. What do I do to fix it?
In general, I am aiming for 11 inputs, 1 single layer, and 5 output layers. I'm not sure what's the problem.
Here is the lines of code:
x = rand(75,11);
y = randi(5, 5, 75);
P = x';
T = y;
net = linearlayer;
net = configure(net,P,T);
net.IW{1}(5,11);
net.b{1};
[net,a,e,pf] = adapt(net,P,T);
net = train(net,P,T);
0 Commenti
Risposta accettata
Amanjit Dulai
il 27 Ott 2022
I managed to get this to work by reducing the learning rate:
x = rand(75,11);
y = randi(5, 5, 75);
P = x';
T = y;
% Set the learning rate to 0.001
net = linearlayer(0,0.001);
net = configure(net,P,T);
net.IW{1}(5,11);
net.b{1};
[net,a,e,pf] = adapt(net,P,T);
net = train(net,P,T);
By default, linearlayer does not use backpropagation when training. Instead, it uses the Widrow-Hoff learning rule, so the training might behave differently compared to other networks (fitnet for example uses backpropagation by default).
It's also worth noting that linearlayer is learning only a linear function (that is, a weight and a bias), so it won't fit data with a non-linear relationship very well.
0 Commenti
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Define Shallow Neural Network Architectures in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!