def latent()

in ebm_sandbox.py [0:0]


def latent(test_dataloader, weights, model, target_vars, sess):
    X = target_vars['X']
    Y_GT = target_vars['Y_GT']
    # hessian = target_vars['hessian']
    # e = target_vars['e']
    v = target_vars['v']
    x_stack = target_vars['x_stack']
    x_refine = target_vars['x_refine']
    es = target_vars['es']
    # e_pos_base = target_vars['e_base']
    # e_pos_hess_modify = target_vars['e_pos_hessian']

    data_corrupt, data, label_gt = iter(test_dataloader).next()
    data = data.numpy()
    x_init = np.tile(data[0:1], (6, 1, 1))
    x_mod, = sess.run([x_stack], {X: data})
    # print("Value of original starting image: ", e_pos)
    # print("Value of energy of hessian: ", e_pos_hess)
    x_mod = x_mod.squeeze()

    n = 6
    x_mod_list = [x_init, x_mod]

    for i in range(n):
        x_mod, evals = sess.run([x_refine, es], {X: x_mod})
        x_mod = x_mod.squeeze()
        x_mod_list.append(x_mod)
        print("Value of energies after evaluation: ", evals)

    x_mod_list = x_mod_list[:]


    series_xmod = np.stack(x_mod_list, axis=1)
    series_header = np.tile(data[0:1, None, :, :], (1, len(x_mod_list), 1, 1))

    series_total = np.concatenate([series_header, series_xmod], axis=0)

    series_total_full = np.ones((*series_total.shape[:-2], 66, 66))

    series_total_full[:, :, 1:-1, 1:-1] = series_total

    series_total = series_total_full

    series_total = series_total.transpose((0, 2, 1, 3)).reshape((-1, len(x_mod_list)*66))
    im_total = rescale_im(series_total)
    imsave("latent_comb.png", im_total)