コード例 #1
0
ファイル: train.py プロジェクト: chinatian/glow
    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))
コード例 #2
0
    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))
コード例 #3
0
ファイル: train.py プロジェクト: hologerry/pix2pix-flow
    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))
コード例 #4
0
 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)
コード例 #5
0
ファイル: train.py プロジェクト: vsingh-group/dual-glow
    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))
コード例 #6
0
ファイル: train.py プロジェクト: stjordanis/emerging
    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))
コード例 #7
0
                    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))