Esempio n. 1
0
def main(args):
    new_model = args.new_model

    rnn = RNN()

    if not new_model:
        try:
            rnn.set_weights(config.rnn_weight)
        except:
            print("Either set --new_model or ensure {} exists".format(
                config.rnn_weight))
            raise

    rnn_input = []
    rnn_output = []
    for i in range(130):
        # print('Building {}th...'.format(i))
        input = np.load('./rnn_data/rnn_input_' + str(i) + '.npy')
        output = np.load('./rnn_data/rnn_output_' + str(i) + '.npy')
        # sequence pre-processing, for training LSTM the rnn_input must be (samples/episodes, time steps, features)
        input = pad_sequences(input,
                              maxlen=40,
                              dtype='float32',
                              padding='post',
                              truncating='post')
        output = pad_sequences(output,
                               maxlen=40,
                               dtype='float32',
                               padding='post',
                               truncating='post')
        rnn_input.append(input)
        rnn_output.append(output)

    input = rnn_input[0]
    output = rnn_output[0]
    for i in range(len(rnn_input) - 1):
        input = np.concatenate((input, rnn_input[i + 1]), axis=0)
        output = np.concatenate((output, rnn_output[i + 1]), axis=0)
        print(input.shape)
        print(output.shape)

    rnn.train(input, output)
    rnn.plot_loss()
Esempio n. 2
0
import matplotlib.pyplot as plt
import sys

sys.path.append("..")
import config
dir_name = config.dir_name
episode = config.episode
frame = config.frame

np.set_printoptions(precision=4, edgeitems=6, linewidth=100, suppress=True)

vae = VAE()
vae.set_weights(config.vae_weight)

rnn = RNN()
rnn.set_weights(config.rnn_weight)

rnn_input = np.load(dir_name + '/rnn_input_0.npy')
rnn_output = np.load(dir_name + '/rnn_output_0.npy')
rnn_input = pad_sequences(rnn_input,
                          maxlen=30,
                          dtype='float32',
                          padding='pre',
                          truncating='pre')
rnn_output = pad_sequences(rnn_output,
                           maxlen=30,
                           dtype='float32',
                           padding='pre',
                           truncating='pre')

# print(rnn_input.shape)