J'ai vérifié toutes les solutions, mais je suis toujours confronté à la même erreur. La forme de mes images d’entraînement est (26721, 32, 32, 1), ce qui, à mon avis, correspond à 4 dimensions, mais je ne sais pas pourquoi une erreur montre qu’il s’agit de 5 dimensions.
model = Sequential()
model.add(Convolution2D(16, 5, 5, border_mode='same',
input_shape= input_shape ))
Donc, voici comment je définis model.fit_generator
model.fit_generator(train_dataset, train_labels, nb_Epoch=epochs, verbose=1,validation_data=(valid_dataset, valid_labels), nb_val_samples=valid_dataset.shape[0],callbacks=model_callbacks)
Quelqu'un peut-il m'aider s'il vous plaît avec cela?
Le problème est input_shape
.
Il ne devrait contenir que 3 dimensions. Et en interne, keras ajoutera la dimension batch, ce qui en fera 4.
Puisque vous avez probablement utilisé input_shape
avec 4 dimensions (lot inclus), keras ajoute la 5ème.
Vous devriez utiliser input_shape=(32,32,1)
.
Le problème est avec input_shape
. Essayez d’ajouter une dimension/un canal supplémentaire pour que keras sache que vous travaillez sur une image en niveaux de gris, c’est-à-dire -> 1
input_shape= (56,56,1)
. Si vous utilisez un modèle d'apprentissage en profondeur normal, cela ne posera pas de problème, mais c'est le cas pour Convnet.