Я обучил NN в Керасе с LSTM, поэтому я использовал 3D-тензоры. Теперь я хочу прогнозировать с помощью набора данных, и мне нужно вставить 3D-тензор в мою NN.
(В моем случае я использовал features = 2
и lookback = 2
, поэтому элементы ввода в LSTM: (batch_size, lookback, features)
)
Итак, представьте себе этот пример:
a = np.array([[1, 2],
[3, 4]])
Мне нужно сделать a_2 = np.reshape(1, 2, 2)
, чтобы иметь возможность вставить его в LSTM.
Но если у меня есть больший набор тестовых данных, как, например,
b = np.array([[1, 2],
[3, 4],
[5, 6],
[7, 8],
[9, 10]])
Мне нужно преобразовать его в трехмерный массив этого типа:
b_2 = np.array([[[1, 2],
[3, 4]],
[[3, 4],
[5, 6]],
[[5, 6],
[7, 8]],
[[7, 8],
[9, 10]]])
, поэтому в этом случае у меня есть прогнозы для каждого lookback
с новой точкой. Я думаю, что это можно сделать с помощью сложного решения, использующего множество вложенных циклов for
, но мне интересно, есть ли еще способ pythoni c. Thx.