Advertisement
Guest User

Untitled

a guest
Feb 21st, 2019
91
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.64 KB | None | 0 0
  1. def load_data_old(df_, seq_len):
  2. data_raw = df_.values
  3. data = []
  4. for index in range(len(data_raw) - seq_len):
  5. data.append(data_raw[index: index + seq_len])
  6.  
  7. data = np.array(data);
  8. valid_set_size = int(np.round(valid_set_size_percentage/100*data.shape[0]));
  9. test_set_size = int(np.round(test_set_size_percentage/100*data.shape[0]));
  10. train_set_size = data.shape[0] - (valid_set_size + test_set_size);
  11.  
  12. x_train = data[:train_set_size,:-1,:-1]
  13. y_train = data[:train_set_size,-1,-1:]
  14.  
  15. x_valid = data[train_set_size:train_set_size+valid_set_size,:-1,:-1]
  16. y_valid = data[train_set_size:train_set_size+valid_set_size,-1,-1:]
  17.  
  18. x_test = data[train_set_size+valid_set_size:,:-1,:-1]
  19. y_test = data[train_set_size+valid_set_size:,-1,-1:]
  20. return[x_train, y_train, x_valid, y_valid, x_test, y_test]
  21.  
  22. x_train, y_train, x_valid, y_valid, x_test, y_test = load_data(df,seq_len)
  23. X = tf.placeholder(tf.float32, [None, n_steps, n_inputs],name="input")
  24. y = tf.placeholder(tf.float32, [None, n_outputs],name="output")
  25. n_inputs = x_train.shape[2]
  26. n_outputs = y_train.shape[1]
  27. layers = [tf.contrib.rnn.LSTMCell(num_units=n_neurons,activation=tf.nn.leaky_relu, use_peepholes = True,name="layer"+str(layer))
  28. for layer in range(n_layers)]
  29. multi_layer_cell = tf.contrib.rnn.MultiRNNCell(layers)
  30. rnn_outputs, states = tf.nn.dynamic_rnn(multi_layer_cell, X, dtype=tf.float32)
  31. stacked_rnn_outputs = tf.reshape(rnn_outputs, [-1, n_neurons])
  32. stacked_outputs = tf.layers.dense(stacked_rnn_outputs, n_outputs)
  33. outputs = tf.reshape(stacked_outputs, [-1, n_steps, n_outputs])
  34. outputs = tf.identity(outputs[:,n_steps-1,:], name="prediction")
  35. loss = tf.reduce_mean(tf.square(outputs - y)) # loss function = mean squared error
  36. optimizer = tf.train.AdamOptimizer(learning_rate=learning_rate)
  37. training_op = optimizer.minimize(loss)
  38.  
  39. input1,input2,input3,input4,input5,input6,input7,input8,output
  40. 1,2,3,4,5,6,7,8,1
  41. 2,3,4,5,6,7,8,9,0
  42. 3,4,5,6,7,8,9,10,-1
  43. 4,5,6,7,8,9,10,11,-1
  44. 5,6,7,8,9,10,11,12,1
  45. 6,7,8,9,10,11,12,13,0
  46. 7,8,9,10,11,12,13,14,1
  47.  
  48. [array([[ 1, 2, 3, 4, 5, 6, 7, 8, 1],
  49. [ 2, 3, 4, 5, 6, 7, 8, 9, 0],
  50. [ 3, 4, 5, 6, 7, 8, 9, 10, -1]], dtype=int64), array([[ 2, 3, 4, 5, 6, 7, 8, 9, 0],
  51. [ 3, 4, 5, 6, 7, 8, 9, 10, -1],
  52. [ 4, 5, 6, 7, 8, 9, 10, 11, -1]], dtype=int64), array([[ 3, 4, 5, 6, 7, 8, 9, 10, -1],
  53. [ 4, 5, 6, 7, 8, 9, 10, 11, -1],
  54. [ 5, 6, 7, 8, 9, 10, 11, 12, 1]], dtype=int64), array([[ 4, 5, 6, 7, 8, 9, 10, 11, -1],
  55. [ 5, 6, 7, 8, 9, 10, 11, 12, 1],
  56. [ 6, 7, 8, 9, 10, 11, 12, 13, 0]], dtype=int64)]
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement