function cikti = sigmoidDerivative(x)
cikti = sigmoid(x) .* (1 - sigmoid(x));
this code part have to be changed to
function cikti = sigmoidDerivative(x)
cikti = x .* (1 - x);
because in the jacobian function, sigmodiDerivative() funtion is called with parameter that already calculated with sigmoid() function
[~ , jA1] = forward_pass(jinput_vals(i),W1,b1,W2,b2);
derivW1 = -1 * W2'.* sigmoidDerivative(jA1) *jinput_vals(i);
jA1 is already return from sigmoid() function and so repeated unnecessary sudden increase and decrease of lamba problem solved.