예제 #1
0
def test_xz_KF_CL(kf_decoder, dim_red_dict, enc_fname, wts, input_type, extra_suff='', session_length=90.,task='co', dec_method=''):

    kw_dict =dict(n_neurons=kf_decoder.n_units, encoder_name=enc_fname,
        fa_dict=dim_red_dict, input_type=input_type, assist_level=(0., 0.), decoder=kf_decoder, wts=wts)

    if task == 'co':    
        task2 = sim_fa_decoding.main_xz_CL(session_length, task_kwargs=kw_dict)
    elif task == 'obs':
        task2 = sim_fa_decoding.main_xz_CL_obstacles(session_length, task_kwargs=kw_dict)

    try:
        save_dict = dict(fit_qr=dim_red_dict['fit_qr'])
    except:
        save_dict = {}

    encoder_index = enc_fname[-5]

    pnm_test = sim_fa_decoding.save_stuff(task2, suffix=input_type+task+'_'+extra_suff+'_encoder_'+encoder_index+'_'+dec_method, 
        save_dict=save_dict)

    print 'done with ', input_type, ', saved to: ', pnm_test

    #run hdf metrics file: 
    get_sim_tuning.all_hdf_mets(pnm_test[:-4]+'.hdf', input_type)

    return pnm_test
예제 #2
0
def vfb(wts, encoder_fname=None, task_name='co', session_length=180.):
    if encoder_fname is None:
        enc_kw_dict = dict(wt_sources=wts)
    else:
        enc_kw_dict = dict(wt_sources=wts, encoder_fname=encoder_fname)

    kw_dict['SimFAEnc_kwargs'] = enc_kw_dict

    #sim_fa_decoding -- from bmi3d repo: 
    #kw_dict['fb'] =  None#'OFC'

    if np.logical_or(task_name == 'co', task_name is None):
        task = sim_fa_decoding.main_xz(session_length, task_kwargs=kw_dict)
        task_name = 'co'
    elif task_name == 'obs':
        task = sim_fa_decoding.main_xz_obs(session_length, task_kwargs=kw_dict)
    s_ = wts_2_str(wts)

    encoder_index = encoder_fname[-5]
    
    pnm_train = sim_fa_decoding.save_stuff(task, suffix='vfb_'+task_name+s_+'_encoder_'+encoder_index)
    print 'done w/ vfb'
    return pnm_train