def normalize(x): return np.hstack((x[:, 0][:, None], (x[:, 1:] - X_mean) / (X_std))) X = np.array([normalize(x).astype(theano.config.floatX) for x in X]) y = np.array([x[1:] for x in X]) X = np.array([x[:-1] for x in X]) train_end = int(.8 * len(X)) random_state = np.random.RandomState(1999) minibatch_size = 20 n_hid = 300 rnn_dim = 1200 train_itr = list_iterator([X, y], minibatch_size, axis=1, make_mask=True, stop_index=train_end) X_mb, X_mb_mask, y_mb, y_mb_mask = next(train_itr) train_itr.reset() datasets_list = [X_mb, X_mb_mask, y_mb, y_mb_mask] names_list = ["X", "X_mask", "y", "y_mask"] graph = OrderedDict() X_sym, X_mask_sym, y_sym, y_mask_sym = add_datasets_to_graph( datasets_list, names_list, graph) l1 = relu_layer([X_sym], graph, 'l1', proj_dim=n_hid, random_state=random_state) h = lstm_recurrent_layer([l1], X_mask_sym, rnn_dim, graph, 'l1_rec', random_state=random_state) l2 = relu_layer([h], graph, 'l2', proj_dim=n_hid, random_state=random_state)
X_std = np.sqrt(X_sqr - X_mean ** 2) def normalize(x): return np.hstack((x[:, 0][:, None], (x[:, 1:] - X_mean) / (X_std))) def unnormalize(x): return np.hstack((x[:, 0][:, None], (x[:, 1:] * X_std) + X_mean)) X = np.array([normalize(x).astype(theano.config.floatX) for x in X]) y = np.array([x[1:] for x in X]) X = np.array([x[:-1] for x in X]) minibatch_size = 20 # Size must match size in training, same for above preproc train_itr = list_iterator([X, y], minibatch_size, axis=1, make_mask=True, stop_index=1000) X_mb, X_mb_mask, y_mb, y_mb_mask = next(train_itr) running_mb = X_mb[:1] * 0 running_mask = X_mb_mask[:1] * 0 def gen_sample(rval, random_state, idx=-1): # binary # coeffs # mus # log_sigmas # corr binary, coeffs, mus, sigmas, corr = rval binary = binary[idx, :, 0] coeffs = coeffs[idx, :, :]
def normalize(x): return np.hstack((x[:, 0][:, None], (x[:, 1:] - X_mean) / (X_std))) def unnormalize(x): return np.hstack((x[:, 0][:, None], (x[:, 1:] * X_std) + X_mean)) X = np.array([normalize(x).astype(theano.config.floatX) for x in X]) y = np.array([x[1:] for x in X]) X = np.array([x[:-1] for x in X]) minibatch_size = 20 # Size must match size in training, same for above preproc train_itr = list_iterator([X, y], minibatch_size, axis=1, make_mask=True, stop_index=1000) X_mb, X_mb_mask, y_mb, y_mb_mask = next(train_itr) running_mb = X_mb[:1] * 0 running_mask = X_mb_mask[:1] * 0 def gen_sample(rval, random_state, idx=-1): # binary # coeffs # mus # log_sigmas # corr binary, coeffs, mus, sigmas, corr = rval