Exemple #1
0
def generate_param_list(Job_Params, params, config, subject):

    sp = spearmint_lite.spearmint_lite(Job_Params, [], config, Job_Params.type)
    params_dict = sp.generate_params_dict(params, subject)
    params_list = []

    if "cutoff_frequencies_low_list" in params_dict:
        #             cutoff_frequencies_low_list = params_dict.pop('cutoff_frequencies_low_list')
        #             cutoff_frequencies_high_list = params_dict.pop('cutoff_frequencies_high_list')
        params_list = [
            float(params_dict['discard_mv_begin']),
            float(params_dict['discard_mv_end']),
            float(params_dict['discard_nc_begin']),
            float(params_dict['discard_nc_end']),
            float(params_dict['window_size']),
            float(params_dict['window_overlap_size']),
            params_dict['cutoff_frequencies_low_list'],
            params_dict['cutoff_frequencies_high_list'],
            params_dict['channel_type']
        ]

    else:
        params_list = [
            float(params_dict['discard_mv_begin']),
            float(params_dict['discard_mv_end']),
            float(params_dict['discard_nc_begin']),
            float(params_dict['discard_nc_end']),
            float(params_dict['window_size']),
            float(params_dict['window_overlap_size']),
            params_dict['channel_type']
        ]

    return params_list
Exemple #2
0
def generate_param_list(Job_Params, params, config, subject):
    
    
    sp = spearmint_lite.spearmint_lite(Job_Params, [], config, Job_Params.type)
    params_dict = sp.generate_params_dict(params, subject)
    params_list = []
    
    if "cutoff_frequencies_low_list" in params_dict:
#             cutoff_frequencies_low_list = params_dict.pop('cutoff_frequencies_low_list')
#             cutoff_frequencies_high_list = params_dict.pop('cutoff_frequencies_high_list')
        params_list = [float(params_dict['discard_mv_begin']), float(params_dict['discard_mv_end']), float(params_dict['discard_nc_begin']), 
                       float(params_dict['discard_nc_end']), float(params_dict['window_size']), float(params_dict['window_overlap_size']), 
                        params_dict['cutoff_frequencies_low_list'], params_dict['cutoff_frequencies_high_list'], params_dict['channel_type']]
        
    else:
        params_list = [float(params_dict['discard_mv_begin']), float(params_dict['discard_mv_end']), float(params_dict['discard_nc_begin']),
                            float(params_dict['discard_nc_end']), float(params_dict['window_size']), float(params_dict['window_overlap_size']), params_dict['channel_type']]
            
    return params_list    
    def generate_params_dict(self, params):

        sp = spearmint_lite.spearmint_lite(None, None, self.config, self.optimization_type)

        params_dict = sp.generate_params_dict(map(float, params.split(' ')[2:]), self.subject)
        params_list = SJR.Simple_Job_Runner.create_params_list(params_dict)

        out_file_name = SJR.Simple_Job_Runner.generate_learner_output_file_name( params_list, self.subject)
        results_path = self.config.configuration['results_path_str']
        results_opt_path = self.config.configuration['results_opt_path_str']

        results_path, results_opt_path = SJR.Simple_Job_Runner.set_results_path( results_path, results_opt_path, self.classifier, self.feature,
                                                                         optimization_type = self.optimization_type, BO_selection_type = '')
        res_file_name = os.path.join(results_path, out_file_name)
        my_Learner_Manager = Learner_Manager.Learner_Manager(self.config, self.classifier, self.feature)

        current_error, learner_params = my_Learner_Manager.find_cv_error(res_file_name)

        # params_dict = sp.generate_params_dict(map(float, params), self.subject)
        params_dict = dict(params_dict.items() + learner_params.items())

        return float(params.split(' ')[0]), params_dict, params_list, learner_params
Exemple #4
0
                        'BCI_Framework', dataset)
                    complete_jobs = np.zeros(
                        config.configuration['number_of_subjects'])

                    all_mvs_have_same_lebngth = all(
                        map(
                            lambda x: x == config.configuration[
                                'movement_trial_size_list'][0],
                            config.configuration['movement_trial_size_list']))

                    for subj_ind, subj in enumerate(
                            config.configuration['subject_names_str']):

                        if all_mvs_have_same_lebngth:
                            all_subjects_candidates_list = all_subjects_candidates_dict[
                                (dataset_ind, optimization_type)][0]
                        else:
                            all_subjects_candidates_list = all_subjects_candidates_dict[
                                (dataset_ind, optimization_type)][subj_ind]

                        sp = spearmint_lite.spearmint_lite(
                            Job_Params, all_subjects_candidates_list, config,
                            optimization_type)

                        finished[(subj + str(dataset_ind),
                                  optimization_type)] = sp.main(
                                      Job_Params, complete_jobs, subj)

                    sleep(30)

        first_iteration = False
Exemple #5
0
os.chdir('../bci_framework')
sys.path.append('./BCI_Framework')

import Main
import Configuration_BCI
import numpy as np

import spearmint_lite


class Job_Params:
    job_dir = 'BCI_Framework'
    num_all_jobs = 100
    dataset = 'BCICIV2b'
    seed = 1
    classifier_name = 'LogisticRegression'
    feature_extraction = 'BP'
    n_concurrent_jobs = 3
    chooser_module = "GPEIOptChooser"
    n_initial_candidates = 12


if __name__ == '__main__':

    BO_type = 2
    config = Configuration_BCI.Configuration_BCI('BCI_Framework', 'BCICIV2b')

    sp = spearmint_lite.spearmint_lite(Job_Params, [], config, BO_type)
    params = [687.0, 1.0, 1.5, 3.5]
    subj = '100'
    sp.run_job(params, subj)
Exemple #6
0
                        from random import randrange
                        seed = randrange(50)
                        classifier_name = classifier
                        feature_extraction = feature
                        n_concurrent_jobs = 1
                        chooser_module = bo_type
                
                    Job_Params.n_initial_candidates = 0    
                    config = Configuration_BCI.Configuration_BCI('BCI_Framework', dataset)
                    complete_jobs = np.zeros(config.configuration['number_of_subjects'])
                    
                    all_mvs_have_same_lebngth = all(map(lambda x: x == config.configuration['movement_trial_size_list'][0], config.configuration['movement_trial_size_list']))
                    
                    
                    for subj_ind, subj in  enumerate(config.configuration['subject_names_str']):
                        
                        if all_mvs_have_same_lebngth:
                            all_subjects_candidates_list = all_subjects_candidates_dict[(dataset_ind, optimization_type)][0]
                        else:
                            all_subjects_candidates_list = all_subjects_candidates_dict[(dataset_ind, optimization_type)][subj_ind]
                    
                        sp = spearmint_lite.spearmint_lite(Job_Params, all_subjects_candidates_list, config, optimization_type)
                
                        finished[(subj+str(dataset_ind), optimization_type)] = sp.main(Job_Params, complete_jobs, subj)
                        
                    # sleep(1)
        
        first_iteration = False

    # execution_time = time.time() - start_time
    # print execution_time
import sys
os.chdir('../bci_framework')
sys.path.append('./BCI_Framework')

import Main
import Configuration_BCI
import numpy as np

import spearmint_lite

class Job_Params:
    job_dir = 'BCI_Framework'
    num_all_jobs = 100
    dataset = 'BCICIV2b'
    seed = 1
    classifier_name = 'LogisticRegression'
    feature_extraction = 'BP'
    n_concurrent_jobs = 3
    chooser_module = "GPEIOptChooser"
    n_initial_candidates = 12


if __name__ == '__main__':

    BO_type = 2
    config = Configuration_BCI.Configuration_BCI('BCI_Framework', 'BCICIV2b')
    
    sp = spearmint_lite.spearmint_lite(Job_Params, [], config, BO_type)
    params = [687.0, 1.0, 1.5, 3.5]
    subj = '100'
    sp.run_job(params, subj)