Red neuronal en MATLAB

He entrenado xor red neuronal en Matlab y obtuve estos pesos:

iw: [-2.162 2.1706; 2.1565 -2.1688]

lw: [-3.9174 -3.9183]

b{1} [2.001; 2.0033]

b{2} [3.8093]

Solo por curiosidad, he intentado escribir el código MATLAB que calcula la salida de esta red (2 neuronas en capa oculta y 1 en salida, función de activación TANSIG).

Código que obtuve:

l1w = [-2.162 2.1706; 2.1565 -2.1688];
l2w = [-3.9174 -3.9183];
b1w = [2.001 2.0033];
b2w = [3.8093];

input = [1, 0];

out1 = tansig (input(1)*l1w(1,1) + input(2)*l1w(1,2) + b1w(1));
out2 = tansig (input(1)*l1w(2,1) + input(2)*l1w(2,2) + b1w(2));
out3 = tansig (out1*l2w(1) + out2*l2w(2) + b2w(1))

El problema es que cuando la entrada es digamos [1,1], sale-0,9989, cuando [0,1]0.4902. Si bien la red de simulación generada con salidas MATLAB es adecuadamente0.00055875 y0.99943.

¿Qué estoy haciendo mal?

Respuestas a la pregunta(2)

Su respuesta a la pregunta