Пример #1
0
        '/home/samuel/Documents/projects/seq posterior approx w nf/seq posterior approx w nf dev/lotka_volterra'
    )

sys.path.append('./')

print(os.getcwd())

id_job = str(seed) + '_' + str(seed_data)

# Load all utility functions for all methods
import LotkaVolterra
import functions as func

# Set model and generate data

x_o, model, theta_true = func.set_up_model()
m_s_of_prior, s_s_of_prior = func.load_summary_stats_mean_and_std()


# set up simulator
def simulator(theta):
    s_of_theta = model.model_sim(theta)

    return func.normalize_summary_stats(s_of_theta, m_s_of_prior, s_s_of_prior)


s_x_o = LotkaVolterra.calc_summary_stats(
    x_o.reshape(1, x_o.shape[0], x_o.shape[1]))
s_x_o = func.normalize_summary_stats(s_x_o, m_s_of_prior, s_s_of_prior)

# %%
Пример #2
0
id_job = str(dim) + '_' + str(seed) + '_' + str(seed_data)

if hp_tuning > 0:
    id_job = id_job + "_" + str(hp_tuning)

import functions as func

print(hp_tuning)
print(func.sample_hp("snl", hp_tuning))
print(torch.rand(1))
print(func.sample_hp("snl", hp_tuning)[0].item())
print(torch.rand(1))

prior = BoxUniform(low=-2 * torch.ones(2), high=2 * torch.ones(2))

x_o, model = func.set_up_model(prior)


def simulator(theta):

    return torch.from_numpy(
        model.gen_single(theta)).to(dtype=torch.float32).reshape(1, 2)


# check simulator and prior
simulator, prior = prepare_for_sbi(simulator, model.prior)


# function that builds the network
def build_custom_like_net(batch_theta, batch_x):
    flow_lik, flow_post = func.set_up_networks(seed)
Пример #3
0
    id_job = id_job + "_" + str(lambda_val)

import LotkaVolterra
import functions as func  # Set model and generate data

if lunarc == 1:
    sys.path.append('/home/samwiq/snpla/seq-posterior-approx-w-nf-dev/algorithms')
    import snpla as snpla
else:
    sys.path.append(
        '/home/samuel/Documents/projects/seq posterior approx w nf/seq posterior approx w nf dev/algorithms')
    import snpla as snpla

# Set model and generate data

x_o, model, theta_true = func.set_up_model(method="snpla")
m_s_of_prior, s_s_of_prior = func.load_summary_stats_mean_and_std()

s_x_o = LotkaVolterra.calc_summary_stats(x_o.reshape(1, x_o.shape[0], x_o.shape[1]))
s_x_o = func.normalize_summary_stats(s_x_o, m_s_of_prior, s_s_of_prior)


# set up simulator
def simulator(theta):
    s_of_theta = model.model_sim(theta, True)

    return func.normalize_summary_stats(s_of_theta, m_s_of_prior, s_s_of_prior)


hyper_params = [0.001, 0.001, 0.9, 0.9]  # lr_like, lr_post, gamma_post, gamma