import("lib.nas"); rand(time(0)); var new_neuron=func() { return { in:0, out:0, w:[], bia:0, diff:0 }; } var sigmoid=func(x) { return 1/(1+math.exp(-x)); } var diffsigmoid=func(x) { x=sigmoid(x); return x*(1-x); } var (inum,hnum,onum,lr)=(2,4,1,0.1); var training_set=[[0,0],[0,1],[1,0],[1,1]]; var expect=[0,1,1,0]; var hidden=[]; for(var i=0;i0.0005) { error=0; for(var i=0;i<4;i+=1) { forward(i); error+=get_error(i); backward(i); } cnt+=1; } print('finished after ',cnt,' epoch.\n'); foreach(var v;training_set) { run(v); print(v,': ',output[0].out,'\n'); }