MATLAB: Face recognition using back propagation network.

#face recognitionback propagationDeep Learning Toolboxzernike

I am trying to implement face recognition system. I am extracting the zernike features. the length of my feature vector is 49. on using euclidean distance as the classifier, I am getting an accuracy of 94%. however, on using BPN, I am getting just 89%. I am not sure if I am doing it right. I used "patternnet" in MATLAB as:
nat=patternnet(48);
nat.trainFcn='trainscg';
%nat.trainParam.lr=0.01;
nat.trainParam.epochs = 4000;
nat.performFcn = 'sse';
nat.trainParam.min_grad = 1e-11;
%nat.trainParam.goal=1e-11;
nat.divideFcn = 'dividerand';
nat.divideParam.trainRatio=100/100; nat.divideParam.valRatio=0; nat.divideParam.testRatio=0;
[nat,tr]=train(nat,A,t);
Is there any other parameter that I should set?
I also tried to implement the BPN through code. My code is working fine for XOR net. But I am not understanding how to use it for Zernike features. Please help.

Best Answer

How many examples do you have?
How many classes?
The number of hidden nodes should probably be much smaller than 48
Why aren't you using as many defaults as possible?
Search
greg patternnet
Hope this helps.
Thank you for formally accepting my answer
Greg