%%%%%%        Code         %%%%%%%

% train_input -- 224 * 320 matrix containing 80 samples each with 224 features

% test_input -- 224 * 80 matrix containing 80 samples each with 224 features

% train_target -- 40 * 320 containing 320 samples

% test_target -- 40 * 80 containing 80 samples

setdemorandstream(491218382);

net = patternnet(44);

net.performFcn = 'mse';

net.trainFcn = 'trainscg';

net.layers{1}.transferFcn = 'tansig';

net.layers{2}.transferFcn = 'tansig';

net.divideParam.trainRatio = 1.0; % training set [%]

net.divideParam.valRatio = 0.0; % validation set [%]

net.divideParam.testRatio = 0.0; % test set [%]

net.trainParam.epochs = 300;

net.trainParam.showWindow = 0;

[net,tr] = train(net,train_input,train_target)

%%%%%%% Inbuilt Testing of the Network   %%%%%%%%%%

testY = net(test_input);

[c,cm] = confusion(test_target,testY);

fprintf('Percentage Correct Classification : %f%%\n', 100*(1-c));

%%% Output : Percentage Correct Classification : 95 %   %%%

%%%%%%% Custom Designed Testing of the Network  %%%%%%%%%%%

wb = formwb(net,net.b,net.iw,net.lw);

[b,iw,lw] = separatewb(net,wb);

weight_input = iw{1,1};

weight_hidden = lw{2,1};

bias_input = b{1,1};

bias_hidden = b{2,1};

test_input = mapminmax(test_input);

test_input = removeconstantrows(test_input);

hidden = [];

output = [];

indx = [];

for j = 1:80

%%%%%% 1st Layer Calculation %%%%%.

    for k = 1:44

           weighted_sum = sum(times(test_input(:,j),weight_input(k,:)'));

           hidden(k,j) = 2/(1+exp(-2*(weighted_sum + bias_input(k))))-1;   

    end

%%%%%% 2nd Layer Calculation %%%%%

    for k = 1:40

           weighted_sum = sum(times(hidden(:,j),weight_hidden(k,:)'));

           output(k,j) = 2/(1+exp(-2*(weighted_sum + bias_hidden(k))))-1; 

    end

end

output = mapminmax(output);

[c,cm] = confusion(test_target,output);

fprintf('Percentage Correct Classification : %f%%\n', 100*(1-c));

%%%%%% Output : Percentage Correct Classification : 90 % %%%%%%

Why is there a difference in percentage of correct classification when both are expected to be equal?

P.S - Attached is the matlab file for input and target values

http://1drv.ms/1HGZprl

Similar questions and discussions