def testParameterSearchRunsNormallyUsingFirst(self): interface = BasicInterface() filename = "iris_tests/full_iris_with_parameter_search.xml" block_filepath = self.setup_holder.filepath_handler.get_test_block_path( filename) data_filepath = self.setup_holder.filepath_handler.get_test_block_path( "iris_tests") interface.load_file(block_filepath) interface.set_variable("data_folder", data_filepath) interface.initialize() interface.train() performance = interface.evaluate() self.assertGreaterEqual(1.0, performance) self.assertLess(0.9, performance) bg = interface.get_execution_component("batch_generator") self.assertEqual(10, bg.get_value_model().get_batch_size()) mlp = interface.get_execution_component("mlp") self.assertEqual(10, mlp.get_value_model().get_transform_shape()[1]) self.assertEqual(0.1, mlp.get_value_model().get_dropout_rate())
def testSeqtoSeqWithSgdLrDecease(self): filename = "full_ml_tests/toy_nmt/toy_nmt_sgd_learning_rate_decay.xml" block_filepath = self.setup_holder.filepath_handler.get_test_block_path( filename) data_filepath = self.setup_holder.filepath_handler.get_test_data_path( "nmt/toy/") embedding_filepath = self.setup_holder.filepath_handler.get_test_data_path( "embeddings/") interface = BasicInterface() interface.load_file(block_filepath) interface.set_variable("data_folder", data_filepath) interface.set_variable("embedding_folder", embedding_filepath) interface.initialize() f = open(data_filepath + "tgt.txt") lines = [l.strip() for l in f] gold_sentences = [l + " EOS" for l in lines] f.close() upd_component = interface.get_execution_component("upd") learning_rate_variable = upd_component.value_model.get_learning_rate() lr = interface.ml_helper.tensorflow_session_model.run( learning_rate_variable, {}) self.assertAlmostEqual(0.1, lr) interface.train(iterations=10) lr = interface.ml_helper.tensorflow_session_model.run( learning_rate_variable, {}) self.assertAlmostEqual(0.1, lr) interface.train(iterations=1991) lr = interface.ml_helper.tensorflow_session_model.run( learning_rate_variable, {}) self.assertAlmostEqual(0.0999, lr) interface.train(iterations=1) lr = interface.ml_helper.tensorflow_session_model.run( learning_rate_variable, {}) self.assertAlmostEqual(0.0998001, lr) interface.train() predictions = interface.predict() self.assertEqual(len(gold_sentences), len(predictions)) for i, s in enumerate(gold_sentences): pred_sent = " ".join(predictions[i]) self.assertEqual(s, pred_sent)