public void Neuron_Activation_CorrectLogic() { // arrange Neuron neuron = new Neuron(); Sinaps sinaps1 = new Sinaps(new Neuron() { Data = 0.5 }, 0.2); Sinaps sinaps2 = new Sinaps(new Neuron() { Data = 0.3 }, 0.4); neuron.Sinapses.Add(sinaps1); neuron.Sinapses.Add(sinaps2); double expected = 0; foreach (Sinaps sinaps in neuron.Sinapses) { expected += sinaps.GetData(); } expected = (Math.Exp(2 * expected) - 1) / (Math.Exp(2 * expected) + 1); // act neuron.Activation(); // assert double actual = neuron.Data; Assert.AreEqual(expected, actual); }
public void Sinaps_GetData2_ExpectedCorrect() { // arrange Neuron neuron = new Neuron() { Data = 0.156 }; Sinaps sinaps = new Sinaps(neuron, 0.754); double expected = 0.754 * 0.156; // act double actual = sinaps.GetData(); // assert Assert.AreEqual(expected, actual); }
public void Neuron_Activation_CorrectRange() { // arrange Neuron neuron = new Neuron(); Sinaps sinaps1 = new Sinaps(new Neuron() { Data = 0.5 }, 0.5); Sinaps sinaps2 = new Sinaps(new Neuron() { Data = 0.3 }, 0.4); neuron.Sinapses.Add(sinaps1); neuron.Sinapses.Add(sinaps2); // act neuron.Activation(); // assert double actual = neuron.Data; Assert.IsTrue(actual >= -1 && actual <= 1); }