def train_once(self, iteration, presets=None, masks=None): tf.reset_default_graph() sess = tf.Session() dataset = dataset_mnist.ConstructedDatasetMnist( train_len=self.train_len) input_tensor, label_tensor = dataset.placeholders hyperparameters = { 'layers': [(300, tf.nn.relu), (100, tf.nn.relu), (10, None)] } model = model_fc.ModelFc(hyperparameters, input_tensor, label_tensor, presets=presets, masks=masks) params = { 'test_interval': 100, 'save_summaries': True, 'save_network': True, } return trainer.train(sess, dataset, model, functools.partial( tf.train.GradientDescentOptimizer, .1), ('iterations', 50000), output_dir=paths.run(self.output_dir, iteration), **params)
def train_model(sess, level, dataset, model): params = { 'test_interval': 100, 'save_summaries': True, 'save_network': True, } return trainer_wgan.train(sess, dataset, model, constants.OPTIMIZER_FN, training_len, output_dir=paths.run(output_dir, level, experiment_name), **params)
def run(trial_name, level, experiment_name='same_init', run_id=''): return paths.run(trial(trial_name), level, experiment_name, run_id)
print(text.format(*self.counters[text][trial])) avg_printer = AveragePrinter(len(sys.argv) > 2 and sys.argv[2] == '-a') exp_path = paths.experiment(constants.EXPERIMENT_PATH, sys.argv[1]) trial_nums = [ int(re.findall('\d+', trial_dir)[0]) for trial_dir in os.listdir(exp_path) ] print("Found {} trials".format(max(trial_nums))) for trial in range(1, max(trial_nums) + 1): trial_path = paths.trial(exp_path, trial) if not os.path.isdir(trial_path): print("Warning: skipping trial {}, does not exist".format(trial)) continue first_run_path = paths.run(trial_path, 0) first_run_train_acc = float( subprocess.check_output( ['tail', '-n', '1', paths.log(first_run_path, 'train')]).strip().split(',')[-1]) avg_printer.do_print(trial, '\tFirst run train acc: {}', [first_run_train_acc]) first_run_test_acc = float( subprocess.check_output( ['tail', '-n', '1', paths.log(first_run_path, 'test')]).strip().split(',')[-1]) avg_printer.do_print(trial, '\tFirst run test acc: {}', [first_run_test_acc]) runs = map(int, os.listdir(trial_path)) second_last_run = sorted(runs)[-2] if len(runs) > 1 else runs[0]