Моя проблема здесь в том, что я хочу сделать количество входных каналов в python равным размеру фильтров
Я уже пытался изменить форму, но это дает мне ту же ошибку .. и, поскольку я новичок в Python, я не мог понять, как исправить мою ошибку
Моя модель предназначена для комбинирования cnn со слоем lstm, и у меня есть 2892 тренировочных изображения и 1896 тестовых изображений с общим количеством изображений 4788 каждое с размером 128 * 128
вот код того, что я пробовал
cnn_model = Sequential()
cnn_model.add(Conv2D(32, (3, 3), activation='relu', input_shape=(128,128,3)))
cnn_model.add(MaxPooling2D(pool_size=(2, 2)))
cnn_model.add(Conv2D(32, (3, 3), activation='relu'))
cnn_model.add(MaxPooling2D(pool_size=(2, 2)))
cnn_model.add(Conv2D(64, (3, 3), activation='relu'))
cnn_model.add(MaxPooling2D(pool_size=(2, 2)))
cnn_model.add(Conv2D(128, (3, 3), activation='relu'))
cnn_model.add(MaxPooling2D(pool_size=(2, 2)))
cnn_model.add(Flatten())
model = Sequential()
model.add(TimeDistributed(cnn_model, input_shape=(1,128, 128,3)))
model.add(LSTM(16, return_sequences=True, dropout=0.5))
model.add(Dense(1, activation='softmax'))
model.compile(optimizer='adadelta', loss='categorical_crossentropy', metrics=['accuracy'])
X_data = np.array(X_data)
X_datatest = np.array(X_datatest)
X_data= X_data.astype('float32') / 255.
X_datatest = X_datatest.astype('float32') / 255.
hist=model.fit(X_data, X_data,epochs=15,batch_size=128,verbose = 2,validation_data=(X_datatest, X_datatest))
при попытке использовать предыдущий код появилась следующая ошибка
Traceback (последний вызов был последним): File
«C: \ Users \ bdyssm \ Desktop \ Master \ LSTMCNN2.py», строка 219, в
Файл hist = model.fit (X_data, X_data, epochs = 15, batch_size = 128, verbose = 2, validation_data = (X_datatest, X_datatest))
"C: \ Users \ bdyssm \ AppData \ Local \ Programs \ Python \ Python35 \ Lib \ сайт-пакеты \ keras \ двигатель \ training.py",
линия 952, в форме
batch_size = batch_size) Файл "C: \ Users \ bdyssm \ AppData \ Local \ Programs \ Python \ Python35 \ lib \ site-packages \ keras \ engine \ training.py",
строка 751, в _standardize_user_data
exception_prefix = 'input') Файл "C: \ Users \ bdyssm \ AppData \ Local \ Programs \ Python \ Python35 \ lib \ site-packages \ keras \ engine \ training_utils.py",
строка 128, в standardize_input_data
'with shape' + str (data_shape)) ValueError: Ошибка при проверке ввода: ожидалось, что time_distributed_1_input будет иметь 5 измерений, но получено
массив с формой (2892, 28, 28, 3)
Это сводка модели

Это сводка cnn_model
