Я создал модель LSTM в тензорных потоках, которая принимает различные погодные параметры в качестве входных данных и выводит прогноз для температуры.
Ниже приведен код, использованный для создания моей модели.
input1 = tf.keras.layers.Input(shape=(36,3))
lstm1 = tf.keras.layers.LSTM(16,return_sequences=True)(input1)
lstm2 = tf.keras.layers.LSTM(8,activation='relu')(lstm1)
input2 = tf.keras.layers.Input(shape=(12,3))
lstm3 = tf.keras.layers.LSTM(16,return_sequences=True)(input2)
lstm4 = tf.keras.layers.LSTM(8,activation='relu')(lstm3)
concat = tf.keras.layers.Concatenate()([lstm2, lstm4])
lstm5 = tf.keras.layers.Dense(8,activation='relu')(concat)
output = tf.keras.layers.Dense(FUTURE)(lstm5)
full_model = tf.keras.Model(inputs=[input1,input2], outputs=[output])
full_model.compile(optimizer=tf.keras.optimizers.RMSprop(clipvalue=1.0), loss='mae')
And the model summary is as follows:
__________________________________________________________________________________________________
Layer (type) Output Shape Param # Connected to
==================================================================================================
input_1 (InputLayer) [(None, 36, 3)] 0
__________________________________________________________________________________________________
input_2 (InputLayer) [(None, 12, 3)] 0
__________________________________________________________________________________________________
lstm (LSTM) (None, 36, 16) 1280 input_1[0][0]
__________________________________________________________________________________________________
lstm_2 (LSTM) (None, 12, 16) 1280 input_2[0][0]
__________________________________________________________________________________________________
lstm_1 (LSTM) (None, 8) 800 lstm[0][0]
__________________________________________________________________________________________________
lstm_3 (LSTM) (None, 8) 800 lstm_2[0][0]
__________________________________________________________________________________________________
concatenate (Concatenate) (None, 16) 0 lstm_1[0][0]
lstm_3[0][0]
__________________________________________________________________________________________________
dense (Dense) (None, 8) 136 concatenate[0][0]
__________________________________________________________________________________________________
dense_1 (Dense) (None, 12) 108 dense[0][0]
==================================================================================================
Total params: 4,404
Trainable params: 4,404
Non-trainable params: 0
__________________________________________________________________________________________________
Теперь я хочу изменить вывод модели так, чтобы она предсказывала как температуру, так и скорость ветра, но мне пока не повезло.
Я изменил свои y_data, чтобы включить и температуру, и скорость ветра, поэтому форма вывода должна быть (Нет, 12,2).
Как вывести трехмерные данные из модели LSTM? До сих пор я пробовал слои Reshape и Flatten, но мне это не помогло.