ValueError: Размеры должны быть равны ... при создании многоступенчатой ​​многомерной модели lstm - PullRequest
0 голосов
/ 24 апреля 2020

Я пытался предсказать 5 последовательных меток из предыдущих 25 функций, передаваемых партиями через модель LSTM. То, что я делал иначе, чем то, что я нашел в inte rnet, было то, что мне приходилось делать предсказания всех входных параметров, поэтому у меня было 3 функции и 3 метки.

Входные параметры- enter image description here

Здесь представлены элементы поезда и теста, а также формы меток, которые были переданы в LSTM -

X_train.shape, y_train.shape, X_test.shape, y_test.shape = ( (1441, 25, 3), (1441, 5, 3), (601, 25, 3), (601, 5, 3) )

Вот очень простая модель -

model = Sequential()
model.add(LSTM(units=100, activation='relu', input_shape=X_train[0].shape))
model.add(Dense(y_train.shape[1]))
model.compile(loss='mean_squared_error', optimizer='adam')

Сводка модели -

model summary

early_stop = EarlyStopping(monitor='val_loss', patience=1)
model.fit(X_train, y_train, epochs=50, validation_data=(X_test,y_test), 
          verbose=1,callbacks=[early_stop])

При запуске дает следующая ошибка -

ValueError: Dimensions must be equal, but are 5 and 3 for 'loss/dense_loss/SquaredDifference' (op: 'SquaredDifference') with input shapes: [?,5], [?,5,3].

Высоко ценю вашу помощь, заранее спасибо :)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...