Не могу сделать предсказание по обученной модели
Всем добрый день.
Обучил простейшую нейросеть, но не могу сделать на ней предсказание, вылезает следующая ошибка:
ValueError: Error when checking input: expected sequential_1_input to have 2 dimensions, but got array with shape (1, 32, 32, 3).
А вылезает она на этой строчке:
preds = model.predict(image)
Как я понял, ошибка может быть в архитектуре сети, но как исправить - не понимаю. Только начал разбираться в нейронках.
Архитектура нейросети:
model.add(Dense(6142, activation="sigmoid"))
model.add(Dense(len(lb.classes_), activation="softmax"))
# инициализируем скорость обучения и общее число эпох
INIT_LR = 0.01
EPOCHS = 60```
model.summary() показывает это [1]:
[1]: https://i.stack.imgur.com/hkdWm.png
Ответы (1 шт):
Проблема решена. Нужно было подавать на вход обученной модели двумерный массив, как сказал CrazyElf. Но помимо этого ошибка была в размерах изображений и количестве нейронов на входном слое.
То есть, если размер входного изображения 32*32 и оно содержит 3 цветовых фильтра (RGB), то количество нейронов входного слоя должно быть 32*32*3=3072.
При этом модель должно как обучаться с такими параметрами, так и прдсказывать с теми же параметрами!
Всем спасибо)