Neuronales Netz in MATLAB
Ich habe xor neuronales Netzwerk in Matlab trainiert und diese Gewichte erhalten:
iw: [-2.162 2.1706; 2.1565 -2.1688]
lw: [-3.9174 -3.9183]
b{1} [2.001; 2.0033]
b{2} [3.8093]
Aus Neugier habe ich versucht, MATLAB-Code zu schreiben, der die Ausgabe dieses Netzwerks berechnet (2 Neuronen in der verborgenen Schicht und 1 in der Ausgabe, TANSIG-Aktivierungsfunktion).
Code, den ich bekommen habe:
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))
Das Problem ist, wenn die Eingabe beispielsweise [1,1] lautet, wird sie ausgegeben-0,9989, wenn [0,1]0,4902. Während der Simulation werden mit MATLAB generierte Netzwerkausgaben adäquat dargestellt0,00055875 und0.99943.
Was mache ich falsch?