Ваша цель должна иметь форму (batch_size, 1)
, но вы передаете массив формы (1, 15662)
. Похоже, что 15662 должен быть размером партии, в этом случае x_train
должен иметь форму (15662, 6)
, а y_train
должен иметь форму (15662, 1)
. В этом случае, однако, не имеет никакого смысла иметь слой MaxPooling1D в качестве первого слоя вашей модели, так как для максимального объединения требуется трехмерный ввод (то есть форма (batch_size, time_steps, features)
). Вы, вероятно, хотите пропустить слой максимального пула (и слой Flatten). Следующий код должен работать:
# x_train: (15662, 6)
# y_train: (15662,)
model = Sequential()
model.add(Dense(5, activation='relu', input_shape=(6,))) # Note: don't specify the batch size in input_shape
model.add(Dense(1, activation='sigmoid'))
model.compile(optimizer='rmsprop', loss='binary_crossentropy', metrics=
['accuracy'])
model.fit(x_train, y_train, batch_size= 32, epochs=1)
Но это, конечно, зависит от того, какие у вас есть данные.