desc = 'all' selection = 'linear' method = 'svr' config = { "inpath": "/Users/dedan/projects/master/results/param_search/all_gloms_svrlin_all", "data_path": os.path.join(os.path.dirname(__file__), '..', '..', 'data'), "format": "png", } outpath = os.path.join(config['inpath'], 'plots') door2id = json.load(open(os.path.join(config['data_path'], 'door2id.json'))) path_to_csv = os.path.join(config['data_path'], 'response_matrix.csv') cas_numbers, all_glomeruli, rm = rdl.load_response_matrix(path_to_csv, door2id) # variables for results plt.close('all') search_res, max_overview, sc, _ = rdl.read_paramsearch_results(config['inpath']) glomeruli = search_res[desc][selection].keys() # sort glomeruli according to performance maxes = [np.max(search_res[desc][selection][glom][method]) for glom in glomeruli] picks = [search_res[desc][selection][glom][method][-1, 1] for glom in glomeruli] max_idx = np.argsort(maxes) glomeruli = [glomeruli[i] for i in max_idx] fig = plt.figure(figsize=(3, 20)) for i_glom, glom in enumerate(glomeruli): mat = search_res[desc][selection][glom][method] glom_idx = all_glomeruli.index(glom) tmp_rm, tmp_cas_numbers = rdl.get_avail_targets_for_glom(rm, cas_numbers, glom_idx) ax = plt.subplot2grid((len(glomeruli), 2), (i_glom, 1)) if len(tmp_rm) > 50 and scoreatpercentile(tmp_rm, 75) > 0.2:
import os import json import pylab as plt import numpy as np from master.libs import plot_lib as plib from master.libs import read_data_lib as rdl from master.libs import utils reload(plib) reload(rdl) config = json.load(open(sys.argv[1])) methods = ['svr', 'svr_ens', 'forest'] # variables for results plt.close('all') search_res1, max_overview1, sc1 = rdl.read_paramsearch_results(config['inpath1'], methods) search_res2, max_overview2, sc2 = rdl.read_paramsearch_results(config['inpath2'], methods) data = {} for i_meth, method in enumerate(max_overview1): for i_sel, selection in enumerate(max_overview1[method]): name = "{}_{}".format(method, selection) data1 = max_overview1[method][selection]['max'] sort_x1 = np.argsort(np.mean(data1, axis=0)) sort_y1 = np.argsort(np.mean(data1, axis=1)) data1 = data1[sort_y1[::-1], :] data1 = np.mean(data1[:, sort_x1[::-1]], axis=1) data2 = max_overview2[method][selection]['max'] sort_x2 = np.argsort(np.mean(data2, axis=0))
import numpy as np import pylab as plt reload(run_lib) plt.close('all') descriptor = 'all' method = 'svr' selection = 'linear' inpath = '/Users/dedan/projects/master/results/final_plots/svr_overview' outpath = os.path.join(inpath, 'plots') data_path = os.path.join(os.path.dirname(__file__), '..', 'data') glom = sys.argv[1] # get the best parameters from the search result print 'reading results' search_res, max_overview, sc, k_best_dict = rdl.read_paramsearch_results(inpath) config = rdl.get_best_params(max_overview, sc, k_best_dict, descriptor, glom, method, selection) # overwrite optimal (param search results) parameters for m in config['methods'].keys(): if not m == method: del config['methods'][m] config['methods'][method]['C'] = 1.0 del config['methods'][method]['regularization'] config['feature_selection']['k_best'] = k_best_dict[descriptor][-1] # load features print 'preparing features..' features = run_lib.prepare_features(config) data, targets, molids = run_lib.load_data_targets(config, features)
params = {'axes.labelsize': 6, 'font.size': 6, 'legend.fontsize': 7, 'xtick.labelsize':6, 'ytick.labelsize': 6} plt.rcParams.update(params) config = json.load(open(sys.argv[1])) outpath = os.path.join(config['inpath'], 'plots') if not os.path.exists(outpath): os.mkdir(outpath) # variables for results plt.close('all') search_res, max_overview, sc, _ = rdl.read_paramsearch_results(config['inpath'], p_selection=config.get('selection', {})) if config['plot_param_space']: for desc in search_res: fig = plt.figure() plib.plot_search_matrix(fig, search_res[desc], config['fselection'], config['method'], config.get('glomeruli', [])) fig.savefig(os.path.join(outpath, config['method'] + '_' + desc + '.' + config['format'])) # descriptor method performance plots fig = plt.figure(figsize=(3.35, 2)) ptype = config['descriptor_plot_type'] plib.new_descriptor_performance_plot(fig, max_overview, config['fselection'], config['method'], config.get('glomeruli', []), ptype)