def draw_samples(epoch): if hvd.rank() != 0: return rows = 10 if hps.image_size <= 64 else 4 cols = rows n_batch = rows*cols y = np.asarray([_y % hps.n_y for _y in ( list(range(cols)) * rows)], dtype='int32') # temperatures = [0., .25, .5, .626, .75, .875, 1.] #previously temperatures = [0., .25, .5, .6, .7, .8, .9, 1.] x_samples = [] x_samples.append(sample_batch(y, [.0]*n_batch)) x_samples.append(sample_batch(y, [.25]*n_batch)) x_samples.append(sample_batch(y, [.5]*n_batch)) x_samples.append(sample_batch(y, [.6]*n_batch)) x_samples.append(sample_batch(y, [.7]*n_batch)) x_samples.append(sample_batch(y, [.8]*n_batch)) x_samples.append(sample_batch(y, [.9] * n_batch)) x_samples.append(sample_batch(y, [1.]*n_batch)) # previously: 0, .25, .5, .625, .75, .875, 1. for i in range(len(x_samples)): x_sample = np.reshape( x_samples[i], (n_batch, hps.image_size, hps.image_size, 3)) graphics.save_raster(x_sample, logdir + 'epoch_{}_sample_{}.png'.format(epoch, i))
def draw_samples(epoch): if hvd.rank() != 0: return rows = 10 if hps.image_size <= 64 else 4 cols = rows n_batch = rows * cols y = np.asarray([_y % hps.n_y for _y in (list(range(cols)) * rows)], dtype='int32') # temperatures = [0., .25, .5, .626, .75, .875, 1.] #previously temperatures = [0., .25, .5, .6, .7, .8, .9, 1.] x_samples = [] x_samples.append(sample_batch(y, [.0] * n_batch)) x_samples.append(sample_batch(y, [.25] * n_batch)) x_samples.append(sample_batch(y, [.5] * n_batch)) x_samples.append(sample_batch(y, [.6] * n_batch)) x_samples.append(sample_batch(y, [.7] * n_batch)) x_samples.append(sample_batch(y, [.8] * n_batch)) x_samples.append(sample_batch(y, [.9] * n_batch)) x_samples.append(sample_batch(y, [1.] * n_batch)) # previously: 0, .25, .5, .625, .75, .875, 1. for i in range(len(x_samples)): x_sample = np.reshape(x_samples[i], (n_batch, hps.image_size, hps.image_size, 3)) graphics.save_raster( x_sample, logdir + 'epoch_{}_sample_{}.png'.format(epoch, i))
def draw_samples(epoch): if hvd.rank() != 0: return rows = 10 if hps.image_size <= 64 else 4 cols = rows n_batch = rows*cols y = np.asarray([_y % hps.n_y for _y in ( list(range(cols)) * rows)], dtype='int32') # temperatures = [0., .25, .5, .626, .75, .875, 1.] #previously temperatures = [0., .25, .5, .6, .7, .8, .9, 1.] x_samples = {'A': [], 'B': []} for model_name in ['A', 'B']: for t in temperatures: xs_A, xs_B = sample_batch(y, [t]*n_batch, model) x_samples['A'].append(xs_A) x_samples['B'].append(xs_B) # previously: 0, .25, .5, .625, .75, .875, 1. for i in range(len(x_samples[model_name])): x_sample = np.reshape( x_samples[model_name][i], (n_batch, hps.image_size, hps.image_size, 3)) graphics.save_raster(x_sample, logdir + '{}_epoch_{}_sample_{}.png'.format(model_name, epoch, i))
def draw_samples(epoch): x_samples = [] # eps = np.random.normal(size=[total_batch] + hps.top_shape) for i, t in enumerate(temperatures): x_sample = sample_batch(t * eps) x_sample = np.reshape(x_sample, (total_batch, model.height, model.width, model.channels)) fname = 'epoch_{}_sample_{}.png'.format(epoch, i) graphics.save_raster(x_sample, os.path.join(path, fname)) x_samples.append(x_sample) return np.concatenate(x_samples, axis=0)
def draw_samples(epoch): if hvd.rank() != 0: return rows = hps.n_visual_row cols = rows n_batch = rows*cols y = np.asarray([_y % hps.n_y for _y in ( list(range(cols)) * rows)], dtype='int32') val_x_m = np.load(hps.sample_dir + 'm.npy') val_x_p = np.load(hps.sample_dir + 'p.npy') val_y = np.load(hps.sample_dir + 'label_' + hps.att + '.npy') # if hps.ycond: # y = np.load(hps.sample_dir + 'label_' + str(hps.att_id) +'.npy') # y = y[:n_batch] x_m = val_x_m[:n_batch] x_p = val_x_p[:n_batch] y = val_y[:n_batch] # temperatures = [0., .25, .5, .626, .75, .875, 1.] #previously temperatures = [0., .25, .5, .6, .7, .8, .9, 1.] x_samples = [] x_samples.append(sample_batch(x_m, x_p, y, [.0]*n_batch)) x_samples.append(sample_batch(x_m, x_p, y, [.25]*n_batch)) x_samples.append(sample_batch(x_m, x_p, y, [.5]*n_batch)) x_samples.append(sample_batch(x_m, x_p, y, [.6]*n_batch)) x_samples.append(sample_batch(x_m, x_p, y, [.7]*n_batch)) x_samples.append(sample_batch(x_m, x_p, y, [.8]*n_batch)) x_samples.append(sample_batch(x_m, x_p, y, [.9] * n_batch)) x_samples.append(sample_batch(x_m, x_p, y, [1.]*n_batch)) # previously: 0, .25, .5, .625, .75, .875, 1. for i in range(len(x_samples)): x_sample = np.reshape( x_samples[i], [n_batch] + hps.output_size) ############## save nii file ############# for j in range(x_sample.shape[0]): nii = nib.Nifti1Image(x_sample[j,:,:,:], np.eye(4)) nib.save(nii, logdir + 'epoch_{}_sub_{}_sample_{}.nii'.format(epoch, j, i)) ########################################## x_sample = x_sample[:,:,:,24] graphics.save_raster(x_sample, logdir + 'epoch_{}_sample_{}.png'.format(epoch, i))
def draw_samples(epoch): if hvd.rank() != 0: return rows = 10 if hps.image_size <= 64 else 4 cols = rows n_batch = rows*cols y = np.asarray([_y % hps.n_y for _y in ( list(range(cols)) * rows)], dtype='int32') # temperatures = [0., .25, .5, .626, .75, .875, 1.] #previously temperatures = [0., .25, .5, .6, .7, .8, .9, 1.] times = [time.time()] x_samples = [] x_samples.append(sample_batch(y, [.0]*n_batch)) times += [time.time()] x_samples.append(sample_batch(y, [.25]*n_batch)) times += [time.time()] x_samples.append(sample_batch(y, [.5]*n_batch)) times += [time.time()] x_samples.append(sample_batch(y, [.6]*n_batch)) times += [time.time()] x_samples.append(sample_batch(y, [.7]*n_batch)) times += [time.time()] x_samples.append(sample_batch(y, [.8]*n_batch)) times += [time.time()] x_samples.append(sample_batch(y, [.9] * n_batch)) times += [time.time()] x_samples.append(sample_batch(y, [1.]*n_batch)) times += [time.time()] times = [a - b for a, b in zip(times[1:], times[:-1])] print('Sample times: {} mean: {} std: {}'.format( times, np.mean(times), np.std(times, ddof=1))) # previously: 0, .25, .5, .625, .75, .875, 1. for i in range(len(x_samples)): x_sample = np.reshape( x_samples[i], (n_batch, hps.image_size, hps.image_size, hps.channels)) graphics.save_raster(x_sample, logdir + 'epoch_{}_sample_{}.png'.format(epoch, i))
testx[td * args.batch_size:(td + 1) * args.batch_size]) l = sess.run(bits_per_dim_test, feed_dict) test_loss_gen += l test_loss_gen /= nr_batches_test_per_gpu test_bpd.append(test_loss_gen) # log print( "Iteration %d, time = %ds, train bits_per_dim = %.4f, test bits_per_dim = %.4f" % (epoch, time.time() - begin, train_loss_gen, test_loss_gen)) sys.stdout.flush() if epoch % args.save_interval == 0: # generate samples from the model sample_x = sample_from_model(sess) #img_tile = plotting.img_tile(sample_x, aspect_ratio=1.0, border_color=1.0, stretch=True) #img = plotting.plot_img(img_tile, title='CIFAR10 samples') #plotting.plt.savefig(args.save_dir + '/cifar10_sample' + str(epoch) + '.png') #plotting.plt.close('all') import graphics graphics.save_raster( sample_x, args.save_dir + '/cifar10_sample' + str(epoch) + '.png') # save params saver.save(sess, args.save_dir + '/params_' + args.data_set + '.ckpt') np.savez(args.save_dir + '/test_bpd_' + args.data_set + '.npz', test_bpd=np.array(test_bpd))