예제 #1
0
V_mvn1 = wrap_V_class_with_input_data(class_constructor=V_mvn,
                                      input_data=input_data)
V_mvn2 = wrap_V_class_with_input_data(class_constructor=V_mvn,
                                      input_data=input_data)
v_fun_list = [V_mvn1, V_mvn2]
target_fun = fun_extract_median_ess
####################################################################################################################################
num_chains_per_sampler = 4
np_store_gnuts = [None] * num_repeats
np_diagnostics_gnuts = [None] * num_repeats
for i in range(num_repeats):
    experiment_setting_gnuts = experiment_setting_dict(
        chain_length=500,
        num_chains_per_sampler=num_chains_per_sampler,
        warm_up=300,
        tune_l=300,
        allow_restart=True,
        max_num_restarts=5,
        num_cpu_per_sampler=4)

    input_dict_gnuts = {
        "v_fun": v_fun_list,
        "epsilon": ["dual"],
        "second_order": [False],
        "cov": ["adapt"],
        "metric_name": ["diag_e"],
        "dynamic": [True],
        "windowed": [False],
        "criterion": ["gnuts"],
        "max_tree_depth": [8]
    }
예제 #2
0
num_grid_divides = 2
ep_list = list(numpy.linspace(1e-2, 0.1, num_grid_divides))
evolve_t_list = list(numpy.linspace(0.15, 5.0, num_grid_divides))

v_fun_list = []
input_dict = {
    "v_fun": v_fun_list,
    "epsilon": ep_list,
    "second_order": [False],
    "evolve_t": evolve_t_list,
    "metric_name": ["unit_e"],
    "dynamic": [False],
    "windowed": [False],
    "criterion": [None]
}

experiment_setting = experiment_setting_dict(chain_length=10000,
                                             num_repeat=20,
                                             num_chains_per_sampler=4,
                                             warm_up=1000,
                                             tune_l=0,
                                             save_name="temp_experiment.pkl")

input_object = tuneinput_class(input_dict)
experiment_instance = experiment(input_object=input_object,
                                 experiment_setting=experiment_setting,
                                 fun_per_sampler=function)

experiment.run()
예제 #3
0
num_grid_divides = 5

ep_bounds = (1e-2,0.1)

L_bounds = (5,1000)

converted_t_bounds = (min(L_bounds)*min(ep_bounds),max(L_bounds)*max(ep_bounds))

ep_list = list(numpy.linspace(ep_bounds[0],ep_bounds[1],num_grid_divides))
evolve_L_list = list(numpy.linspace(L_bounds[0],L_bounds[1],num_grid_divides))
evolve_t_list = list(numpy.linspace(converted_t_bounds[0],converted_t_bounds[1],num_grid_divides))

#print(converted_t_bounds)

#####################################################################################################################################
experiment_setting_ep_L = experiment_setting_dict(chain_length=10000,num_chains_per_sampler=4,warm_up=1000,
                                             tune_l=0,allow_restart=True,max_num_restarts=5)

input_dict_ep_L = {"v_fun":v_fun_list,"epsilon":ep_list,"second_order":[False],
              "evolve_t":evolve_t_list,"metric_name":["unit_e"],"dynamic":[False],"windowed":[False],"criterion":[None]}

input_object_ep_L = tuneinput_class(input_dict_ep_L)
experiment_instance_ep_L = experiment(input_object=input_object_ep_L,experiment_setting=experiment_setting_ep_L,fun_per_sampler=function)

experiment_instance_ep_L.run()

result_grid_ep_L= experiment_instance_ep_L.experiment_result_grid_obj

##########################################################################################################################################
experiment_setting_ep_t = experiment_setting_dict(chain_length=10000,num_chains_per_sampler=4,warm_up=1000,
                                             tune_l=0,allow_restart=True,max_num_restarts=5)
예제 #4
0
from abstract.mcmc_sampler import mcmc_sampler, mcmc_sampler_settings_dict
from adapt_util.tune_param_classes.tune_param_setting_util import *
from experiments.experiment_obj import tuneinput_class
from experiments.experiment_obj import experiment,experiment_setting_dict

from experiments.correctdist_experiments.prototype import check_mean_var

num_per_model = 20
mcmc_meta = mcmc_sampler_settings_dict(mcmc_id=0,samples_per_chain=500,num_chains=1,num_cpu=1,thin=1,tune_l_per_chain=0,
                                   warmup_per_chain=100,is_float=False,isstore_to_disk=False)

input_dict = {"v_fun":[V_funnel_cp],"epsilon":[0.1],"alpha":[1e6,1e2],"second_order":[True],
              "evolve_L":[10],"metric_name":["softabs"],"dynamic":[False],"windowed":[False],"criterion":[None]}

input_dict2 = {"v_fun":[V_funnel_ncp],"epsilon":[0.1],"second_order":[False],
              "evolve_L":[10],"metric_name":["unit_e"],"dynamic":[False],"windowed":[False],"criterion":[None]}

input_obj  = tuneinput_class(input_dict)

input_obj2 = tuneinput_class(input_dict2)

experiment_setting_dict = experiment_setting_dict(chain_length=10000,num_repeat=num_per_model)
experiment_obj = experiment(input_object=input_obj,experiment_setting=experiment_setting_dict)

experiment_obj.run()

experiment_obj2 = experiment(input_object=input_obj2,experiment_setting=experiment_setting_dict)

experiment_obj2.run()