Beispiel #1
0
    def run(self):
        print(
            "Starting at %s the execution %s" %
            (time.strftime("%Y-%m-%d %H:%M"), self.options['execution-name']))
        begin_time = time.clock()

        self.datasets = self.process_and_load_dataset(
            self.options['dataset-config-file'], self.options['class-map'])

        print("... running experiments")
        for config in sorted(self.configs.keys()):
            for replication in range(self.options['replications']):
                begin_config_time = time.clock()
                experiment_config_name = "{0};{1};rep-{2}.{3}".format(
                    self.options['execution-name'], config, replication + 1,
                    self.options['replications'])

                print("...... config {0}".format(experiment_config_name))
                """
				pretrained_pickle_filename = self.params_pretrained_dir + \
												experiment_config_name + ".pickle"
				trained_pickle_filename    = self.params_trained_dir + \
												experiment_config_name + ".pickle"
				"""

                result = SdA.run_SdA(
                    datasets=self.datasets,
                    numpy_rng=self.options['numpy_rng'],
                    n_ins=self.options['input-size'],
                    n_outs=len(self.options['class-map']),
                    batch_size=self.options['batch-size'],
                    finetune_lr=self.options['learning-finetune'],
                    pretrain_lr=self.options['learning-pretrain'],
                    pretraining_epochs=self.options['pretrain-epochs'],
                    training_epochs=self.options['train-epochs'],
                    hidden_layers_sizes=self.configs[config].
                    hidden_layers_sizes,
                    corruption_levels=self.configs[config].corruption_levels,
                    activation=self.options['activation_obj'],
                    autoencoder_in_activation=self.
                    options['autoencoder-in-activation_obj'],
                    autoencoder_reconstruction_activation=self.
                    options['autoencoder-reconstruction-activation_obj'],
                    save_pretrain_new_representation=self.
                    options['save_pretrain_new_representation'],
                    save_train_new_representation=self.
                    options['save_train_new_representation'],
                    save_valid_new_representation=self.
                    options['save_valid_new_representation'],
                    save_test_new_representation=self.
                    options['save_test_new_representation'])

                self.process_result_experiment_config(experiment_config_name,
                                                      self.configs[config],
                                                      result)
                print("...... config ran for %.2fm" %
                      ((time.clock() - begin_config_time) / 60.))
        print("==> Total Execution Time: %.2fm\n" %
              ((time.clock() - begin_time) / 60.))