public void BackwardNeuron() { sGate1.Backward(); aGate2.Backward(); aGate1.Backward(); mGate2.Backward(); mGate1.Backward(); var step_size = new DoubleNumber(0.01); a.Value = a.Value.AddMe(step_size.MultiplyMe(a.Gradient)); b.Value = b.Value.AddMe(step_size.MultiplyMe(b.Gradient)); c.Value = c.Value.AddMe(step_size.MultiplyMe(b.Gradient)); x.Value = x.Value.AddMe(step_size.MultiplyMe(x.Gradient)); y.Value = y.Value.AddMe(step_size.MultiplyMe(y.Gradient)); }