У меня проблемы с запуском SimpleRNN. Я пытаюсь создать классификатор изображений RNN, используя Keras, используя tenorflow. Я читаю изображения, используя метод Keras ImageDataGenerator FlowFromDirectory, чтобы я мог контролировать размер пакета через него и передавать свой тренировочный набор в качестве значения x в методе fit. Я считаю, что моя проблема связана с параметром input_shape слоя SimpleRNN. Я понимаю, что это должно быть (размер пакета, временные шаги, входное измерение), но я не могу понять, почему массив, который дается слою (32, 813, 701, 3). Ниже приведен мой текущий код.
train_datagen = ImageDataGenerator(rescale = 1./255,
shear_range = 0.2,
zoom_range = 0.2,
horizontal_flip=True)
test_datagen = ImageDataGenerator(rescale=1./255)
training_set = train_datagen.flow_from_directory('../main_set2/train_set',
target_size=(813, 701),
batch_size=32,
class_mode='binary')
test_set = test_datagen.flow_from_directory('../main_set2/test_set',
target_size=(813, 701),
batch_size=32,
class_mode='binary')
timesteps = 20
model = Sequential()
model.add(SimpleRNN(units=32,
activation='tanh',
use_bias=True,
kernel_initializer='orthogonal',
recurrent_initializer='orthogonal',
input_shape=(timesteps, 1)
))
model.add(Dense(units=32, activation='relu'))
model.add(Dense(1, activation="relu"))
model.compile(optimizer='adam', loss='binary_crossentropy', metrics=['accuracy'])
model.fit(training_set,
epochs=50,
verbose=2,
validation_data=test_set,
steps_per_epoch=50,
validation_steps=20)
Я хотел бы понять, что ожидает input_shape и что я делаю неправильно. Спасибо за вашу помощь