Ejemplo n.º 1
0
                                 count_type='rate',
                                 anat_region='ADn')
    counts, tmp_angles = session_rates.get_spike_matrix(state)
    sel_counts = counts[:desired_nSamples]
    proj = run_dim_red(sel_counts, params=dim_red_params, method=method)
    embed = {state: proj, 'meas_angles': tmp_angles[:desired_nSamples]}
    embed_fname = 'not_saved'
else:
    # Put in your directory here
    load_dir = gen_params['results_dir'] + '2019_03_22_dim_red/'
    file_pattern = '%s_%s_kern_%dms_sigma_%dms_binsep_%s_embed_%s_%ddims_%dneighbors_*.p' % (
        session, area, sigma * 1000, dt_kernel * 1000, state, method, fit_dim,
        n_neighbors)
    # file_pattern = '%s_%s_kern_%dms_sigma_%dms_binsep_%s_embed_%s_multi_dim_%dneighbors_*.p'%(
    #     session, area, sigma * 1000, dt_kernel * 1000, state, method, n_neighbors)
    embed, embed_fname = gff.load_file_from_pattern(load_dir + file_pattern)

curr_mani = embed[state]
nPoints = len(curr_mani)
nTrain = np.round(train_frac * nPoints).astype(int)

# Use measured angles to set origin and direction of coordinate increase
ref_angles = embed['meas_angles']

fit_params = {
    'dalpha': 0.005,
    'knot_order': knot_order,
    'penalty_type': penalty_type,
    'nKnots': nKnots
}
session = 'Mouse28-140313'
area = 'ADn'
state = 'Wake'
dt_kernel = 0.1
sigma = 0.1 # Kernel width

method = 'iso'
n_neighbors = 5
embed_dim = 3
train_frac = 0.8

# Load the dimensionality reduced data
dd = gen_params['results_dir'] + '2019_03_22_dim_red/'
file_pattern = '%s_%s_kern_%dms_sigma_%dms_binsep_%s_embed_%s_%ddims_%dneighbors_*.p'%(
    session, area, sigma * 1000, dt_kernel * 1000, state, method, embed_dim, n_neighbors)
embed, embed_fname = gff.load_file_from_pattern(dd+file_pattern)

curr_mani = embed[state]
nPoints = len(curr_mani)

# Load the fits
fit_source = 'single_interactive'
if fit_source == 'multiple':
    # This version from multiple automated fits
    dd = gen_params['results_dir'] + '2019_03_22_curve_fits/'
    file_pattern = '%s_%s_dim%d_trainfrac%.2f_decode_errors_sd*.p'%(
        session, state, embed_dim, train_frac)
    fit_data, fit_fname = gff.load_file_from_pattern(dd + file_pattern)
    # Select fit
    k = ('Mouse28-140313', 3, 15, 'wt_per_len', 'mult_len', 0.8)
    # Or do k = fit_data['fit_results'].keys()[0] or just pick one