def test_connection_adds_to_incoming_and_outgoing_arrays(self): neuron = Neuron(input=0) neuron_2 = Neuron() neuron.connect_child(neuron_2, weight=1) # Make sure there's only one connection back and forth assert [neuron == connection.neuron for connection in neuron_2.incoming].count(True) == 1 assert [neuron_2 == connection.neuron for connection in neuron.outgoing].count(True) == 1
def test_activate_applies_proper_math_over_many_neurons(self): neuron = Neuron(input=0) neuron_2 = Neuron() neuron.connect_child(neuron_2, weight=1) neuron_2.activate() # sucks comparing floats in python apparently, absolute difference check assert abs(neuron_2.output - 0.622459331202) < 0.000000001
def test_activate_applies_proper_math(self): '''Let's make sure the sigmoid function is working properly, 0 * 0 weight should be 0.5''' neuron = Neuron(input=0) neuron.activate() assert neuron.output == 0.5