public void TestAccumulatesWeightShift() { Neuron n31 = new Neuron(); BiasNeuron bias2 = new BiasNeuron();; Neuron n21 = new Neuron(); n31.Connect(bias2); n31.Connect(n21); InputNeuron input = new InputNeuron(); BiasNeuron bias1 = new BiasNeuron(); n21.Connect(bias1); n21.Connect(input); input.Input = 1; n31.SetAnswer(0.9); double[] ws = n31.GetWeightShifts(); double acc = ws[1]; Assert.AreEqual(acc, 0); n31.PropagateBackwards(); ws = n31.GetWeightShifts(); acc = ws[1]; Assert.AreNotEqual(acc, 0); n31.ApplyTraining(0, 1); ws = n31.GetWeightShifts(); acc = ws[1]; Assert.AreEqual(acc, 0); }
public void TestAccumulatesWeightShift() { Neuron n31 = new Neuron(); BiasNeuron bias2 = new BiasNeuron(); ; Neuron n21 = new Neuron(); n31.Connect(bias2); n31.Connect(n21); InputNeuron input = new InputNeuron(); BiasNeuron bias1 = new BiasNeuron(); n21.Connect(bias1); n21.Connect(input); input.Input = 1; n31.SetAnswer(0.9); double[] ws = n31.GetWeightShifts(); double acc = ws[1]; Assert.AreEqual(acc, 0); n31.PropagateBackwards(); ws = n31.GetWeightShifts(); acc = ws[1]; Assert.AreNotEqual(acc, 0); n31.ApplyTraining(0, 1); ws = n31.GetWeightShifts(); acc = ws[1]; Assert.AreEqual(acc, 0); }