in train.py [0:0]
def test(target_vars, saver, sess, logger, dataloader):
X_NOISE = target_vars['X_NOISE']
X = target_vars['X']
Y = target_vars['Y']
LABEL = target_vars['LABEL']
energy_start = target_vars['energy_start']
x_mod = target_vars['x_mod']
x_mod = target_vars['test_x_mod']
energy_neg = target_vars['energy_neg']
np.random.seed(1)
random.seed(1)
output = [x_mod, energy_start, energy_neg]
dataloader_iterator = iter(dataloader)
data_corrupt, data, label = next(dataloader_iterator)
data_corrupt, data, label = data_corrupt.numpy(), data.numpy(), label.numpy()
orig_im = try_im = data_corrupt
if FLAGS.cclass:
try_im, energy_orig, energy = sess.run(
output, {X_NOISE: orig_im, Y: label[0:1], LABEL: label})
else:
try_im, energy_orig, energy = sess.run(
output, {X_NOISE: orig_im, Y: label[0:1]})
orig_im = rescale_im(orig_im)
try_im = rescale_im(try_im)
actual_im = rescale_im(data)
for i, (im, energy_i, t_im, energy, label_i, actual_im_i) in enumerate(
zip(orig_im, energy_orig, try_im, energy, label, actual_im)):
label_i = np.array(label_i)
shape = im.shape[1:]
new_im = np.zeros((shape[0], shape[1] * 3, *shape[2:]))
size = shape[1]
new_im[:, :size] = im
new_im[:, size:2 * size] = t_im
if FLAGS.cclass:
label_i = np.where(label_i == 1)[0][0]
if FLAGS.dataset == 'cifar10':
log_image(new_im, logger, '{}_{:.4f}_now_{:.4f}_{}'.format(
i, energy_i[0], energy[0], cifar10_map[label_i]), step=i)
else:
log_image(
new_im,
logger,
'{}_{:.4f}_now_{:.4f}_{}'.format(
i,
energy_i[0],
energy[0],
label_i),
step=i)
else:
log_image(
new_im,
logger,
'{}_{:.4f}_now_{:.4f}'.format(
i,
energy_i[0],
energy[0]),
step=i)
test_ims = list(try_im)
real_ims = list(actual_im)
for i in tqdm(range(50000 // FLAGS.batch_size + 1)):
try:
data_corrupt, data, label = dataloader_iterator.next()
except BaseException:
dataloader_iterator = iter(dataloader)
data_corrupt, data, label = dataloader_iterator.next()
data_corrupt, data, label = data_corrupt.numpy(), data.numpy(), label.numpy()
if FLAGS.cclass:
try_im, energy_orig, energy = sess.run(
output, {X_NOISE: data_corrupt, Y: label[0:1], LABEL: label})
else:
try_im, energy_orig, energy = sess.run(
output, {X_NOISE: data_corrupt, Y: label[0:1]})
try_im = rescale_im(try_im)
real_im = rescale_im(data)
test_ims.extend(list(try_im))
real_ims.extend(list(real_im))
score, std = get_inception_score(test_ims)
print("Inception score of {} with std of {}".format(score, std))