- The global minimum is achievable with a single hidden layer.
- With more hidden layers you add more local minima; most of which are higher than the global minimum.
Adding hidden layers to a patternnet hurts accuracy?
4 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Ekaterina Kryuchkova
le 3 Avr 2019
Modifié(e) : Greg Heath
le 4 Avr 2019
I am trying to use patternnet to classify the MNIST handwritten digit dataset.
I expected patternnet(10) to do worse than patternnet([10,10]), but it seems that the accuracy decreases as I add more layers.
Can someone explain why?
Here is my code:
images = loadMNISTImages('train-images.idx3-ubyte'); % initialize figure
labels = loadMNISTLabels('train-labels.idx1-ubyte'); % initialize figure
labels = labels'; % transpose
labels(labels==0)=10; % dummyvar function doesn´t take zeroes
labels=dummyvar(labels)';
net = patternnet([10,10]); %or patternnet(10)
net.divideParam.trainRatio = 70/100;
net.divideParam.valRatio = 15/100;
net.divideParam.testRatio = 15/100;
net.performFcn = 'crossentropy';
net = configure(net,images,labels);
net = train(net,images,labels);
y=net(images);
perf = perform(net,labels,y)
correctcount=0;
for i = 1:60000
[M, I]= max(y(:,i));
if t(I,i)== 1
correctcount=correctcount+1;
end
end
errorrate = 1- (correctcount/60000)
0 commentaires
Réponse acceptée
Greg Heath
le 3 Avr 2019
Modifié(e) : Greg Heath
le 4 Avr 2019
Thank you for formally accepting my answer
Greg
0 commentaires
Plus de réponses (0)
Voir également
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!