W = randn(n,H); % weight for hidden layer, W(:,i) is the weight vector for unit i
b = randn(H,1); % bias for hidden layer
wo = randn(H,1); %weight for output layer
bo = randn(1,1); %bias, output
y = zeros(H,1); %output of hidden layer
iter = 0;
cost_v = [inf];
fprintf(‘###################################\n’);
fprintf(‘ANN TRAINING STARTED\n’);
fprintf(‘###################################\n’);
fprintf(‘Iterate \t training error\n’);
while iter < max_iter
delta_wo = zeros(H,1);
delta_bo = 0;
delta_W = zeros(n,H);
delta_b = zeros(H,1);
for i=1:N
for j=1:H
y(j) = s(X(:,i),W(:,j),b(j));
end
delta_wo = delta_wo + y*(s(y,wo,bo)-t(i))*s(y,wo,bo)*(1-s(y,wo,bo));
delta_bo = delta_bo + (s(y,wo,bo)-t(i))