def test_update_error(self): # upper_node1.error = .8 # upper_node2.error = .4 # conn1 weight = .3 # conn2 weight = .7 self.node.node_type = NODE_OUTPUT self.node.set_activation_type(ACTIVATION_SIGMOID) halt_on_extremes = True self.node._value = .4 self.node.target = .55 self.node.error = 0.0 self.node.update_error(halt_on_extremes) self.assertAlmostEqual(.55 - sigmoid(.4), self.node.error) # self.node.node_type = NODE_HIDDEN self.node.set_activation_type(ACTIVATION_SIGMOID) halt_on_extremes = True self.node._value = .4 self.node.error = .55 self.node.update_error(halt_on_extremes) self.assertAlmostEqual(.55 * sigmoid_derivative(sigmoid(.4)), self.node.error)
def test_error_func(self): self.node.set_activation_type(ACTIVATION_SIGMOID) self.assertAlmostEqual(sigmoid_derivative(.2), self.node.error_func(.2))