Я работаю с набором данных различных форм массива (например, 499902x16, 328942x16, 289301x16)
Я тренирую его на следующей модели:
model.add(LSTM((64),input_shape(None,16), return_sequences=True))
model.add(LSTM((64),return_sequences=False))
model.add(Dense(64))
model.add(Activation('relu'))
model.add(Dropout(0.5))
model.add(Dense(1))
model.add(Activation('sigmoid'))
model.compile(loss='binary_crossentropy', optimizer='adam', metrics['accuracy'])
model=build_model()
model.fit(X_train, y_train, batch_size=batch_size, epochs=epochs, shuffle=False)`
Но я получаю следующую ошибку:
Error when checking input: expected lstm_1_input to have 3 dimensions, but got array with shape (321, 1)
Предполагается, что форма моих тренировочных данных (321, Нет, 16), но когда я их отображаю, получаю X_train.shape (321,)
Кроме того, я не могу обнулить последовательности, так как я использовал одно горячее кодирование для генерации массивов.
Что я могу сделать в этом случае?
Спасибо!