def test_initialize_reservoir(self): w1 = EchoStateNetwork.initialize_reservoir(10, 0.1, self.rs1, 1.0, 1.0) self.assertAlmostEqual(1.0, max(abs(eigs(w1)[0]))) w2 = EchoStateNetwork.initialize_reservoir(10, 0.1, self.rs1, 1.0, 5.0) self.assertAlmostEqual(5.0, max(abs(eigs(w2)[0]))) w3 = EchoStateNetwork.initialize_reservoir(10, 0.1, self.rs1, 1.0, 0.1) self.assertAlmostEqual(0.1, max(abs(eigs(w3)[0])))
def __init__(self, input_size, output_size, reservoir_size = 300, spectral_radius = 1.25, leaking_rate = 0.3, linear_model = None, average_nb_connexions = None, use_feedback = False, use_raw_input = True, feedback_scaling = 1., input_scaling = 1., output_activation_function = None, output_activation_inverse_function = None, reservoir_noise_scaling = 0., input_sparsity = 1., ridge_coef = 1e-6): EchoStateNetwork.__init__(self, input_size, output_size, reservoir_size = reservoir_size, spectral_radius = spectral_radius, leaking_rate = leaking_rate, linear_model = linear_model, average_nb_connexions = average_nb_connexions, use_feedback = use_feedback, use_raw_input = use_raw_input, feedback_scaling = feedback_scaling, input_scaling = input_scaling, output_activation_function = output_activation_function, output_activation_inverse_function = output_activation_inverse_function, reservoir_noise_scaling = reservoir_noise_scaling, input_sparsity = input_sparsity) self.ridge_coef = ridge_coef self.reset_correlation_matrix()
def test_initialize_weights(self): w1 = EchoStateNetwork.initialize_weights(10, 10, 0.1, self.rs1, 1.0) w2 = EchoStateNetwork.initialize_weights(10, 10, 0.1, self.rs2, 1.0) assert_allclose(w1.toarray(), w2.toarray()) self.assertLessEqual(np.amax(w1.data), 1.0) self.assertGreaterEqual(np.amin(w1.data), -1.0) w3 = EchoStateNetwork.initialize_weights(10, 10, 0.1, self.rs1, 5.0) self.assertLessEqual(np.amax(w3.data), 5.0) self.assertGreaterEqual(np.amin(w3.data), -5.0) self.assertLess(np.amin(w3.data), -1.0) self.assertGreater(np.amax(w3.data), 1.0)