예제 #1
0
def showPicture(test_length, path):
    if not os.path.exists(path):
        os.makedirs(path)

    data_gen.init_data(task, test_length, 1, n_input)
    while len(data_gen.train_set[task][test_length])==0:
        test_length += 1
        data_gen.init_data(task, test_length, 1, n_input)
    data_gen.resetCounters()

    with tf.Graph().as_default(),tf.device('/cpu:0'):
        tester = DNGPU(n_hidden, [test_length], n_input, [1], n_output, dropout_keep_prob)
        tester.createTestGraph(test_length)
        saver = tf.train.Saver(tf.trainable_variables())

        with tf.Session() as sess:
            sess.run(tf.initialize_all_variables())
            saver.restore(sess, model_file)
            if not os.path.exists(path): os.makedirs(path)

            batch_xs, batch_ys = genTestData(test_length, 1)
            print batch_xs, batch_ys
            mem = tester.getAllMem(sess, batch_xs, batch_ys)
            mem = np.squeeze(mem, 1)

            width = mem.shape[1]
            height = mem.shape[0]
            for unit in range(n_hidden):
                img=np.zeros((height,width),dtype=np.float32)
                for x in range(width):
                    for y in range(height):
                        img[y,x]=mem[y, x,unit]

                mpimg.imsave(path+"/frame"+str(unit)+".png",img, cmap='gray')
예제 #2
0
# n_output = 6
# n_hidden = 48 # number of maps

model_file = "/tmp/varWeights.ckpt"
image_path = "/tmp/images"
countList = [batchSize for x in data_gen.bins]
np.set_printoptions(linewidth=2000)
# seed = 125459
# tf.set_random_seed(seed)
# random.seed(seed)
# np.random.seed(seed)

#prepare training and test data
max_length = data_gen.bins[-1]
for l in range(1, max_length + 1):
    data_gen.init_data(task, l, data_size, n_input)
data_gen.collectBins()
data_gen.init_data(task, data_gen.forward_max, test_data_size, n_input)


# generates training data
def genTrainingData(forTraining):
    x = []
    y = []
    for i in range(len(data_gen.bins)):
        seq_len = data_gen.bins[i]
        seq_count = countList[i]
        data, labels = data_gen.get_batch(seq_len, seq_count, forTraining,
                                          task)
        x += [data]
        y += [labels]