def test_propagate_errors(self): backpropagator = Backpropagator() normalizer = Normalizer(in_max = 100, out_max = 200) network = FeedForwardNN(normalizer, [1, 2, 1]) expectation = Expectation([50], [148]) result = network.receive_inputs(expectation.inputs) backpropagator.learn(network, expectation, 1)
def test_learn(self): backpropagator = Backpropagator() normalizer = Normalizer(in_min = 1, in_max = 15, out_min = -1, out_max = 1, norm_min = -3, norm_max = 3) network = FeedForwardNN(normalizer, [1, 2, 2, 1]) network.randomize_connection_weights(seed = 74) neurons = network.neurons expectation = Expectation([1], [0.8415]) error = backpropagator.calculate_error( network.receive_inputs(expectation.inputs), expectation.outputs) for i in range(20): last_error = error backpropagator.learn(network, expectation, 1.5) actual = network.receive_inputs(expectation.inputs) print(actual) error = backpropagator.calculate_error(actual, expectation.outputs) self.assertLess(error, last_error)