Сообщение об ошибке при проверке цели при попытке тренироваться с моделью VGG16 - PullRequest
0 голосов
/ 23 марта 2019

Я начинающий переводить обучение, В этом проекте я стремился использовать VGG16 и добавить еще несколько слоев для классификации между 2 классами: class0 и class1

У меня есть фрейм данных с именем train, столбец id содержит имена файлов, в то время как label содержит класс этого изображения

Изображения и подготовлены с помощью ImageDataGenerator () и flow.from_dataframe

Подводя итог, последний мой слой был Плотный (2, активация = 'softmax')

Входное изображение в VGG16 имеет форму (32,32,3)

Однако, это сохраняет ошибку:

ValueError: Ошибка при проверке целевого объекта: ожидалось, что плотность_2 имеет 2 измерения, но получен массив с формой (1, 32, 32, 3)

Краткое описание моей модели:

Здесь была моей записной книжкой для тренировок.

что не так с моим кодированием здесь?

1 Ответ

0 голосов
/ 23 марта 2019

Ошибка означает, что выходные данные вашей сети имеют два измерения (как показано в сводке, форма вывода равна (None, 2)), но ваша метка имеет форму (1, 32, 32, 3).

При создании данных проверки вы устанавливаете class_mode="input".Это означает, что ваши метки также будут изображениями той же формы, что и ваши входные данные (см. Документ https://keras.io/preprocessing/image/#flow_from_dataframe) вместо двухмерных классификационных меток. Это проблема. Используйте class_mode="categorical", как вы использовали для обучающих данных.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...