Перетасовка тренировочных данных перед разделением с помощью Keras DataGenerator - PullRequest
0 голосов
/ 09 марта 2019

Моя модель явно явно перегружена, и я везде вижу, что мне следует попробовать перетасовать свои данные, прежде чем разбивать их.Я использую: enter image description here

, чтобы выполнить обработку и разделение данных прямо сейчас, и узнал, что shuffle = True на самом деле не выполняет то, что я думал (или, возможно, что-нибудь).Итак, мой вопрос: как мне загрузить и разделить эти данные?У меня есть файлы изображений в папке поезда, а затем у меня есть файл .csv с именем файла в одном столбце и меткой в ​​другом столбце.Это моя первая попытка любого машинного обучения, поэтому извините, если это глупый вопрос.

1 Ответ

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

Если я правильно понимаю ваш код, вы загружаете dataframe=df в качестве ввода для вашего набора обучения / проверки и dataframe=test_df для вашего набора тестов.shuffle=True будет перетасовывать загруженные сэмплы в пределах указанного кадра данных.

Таким образом, если вы загружаете из разных источников, вы тасуете после разделения.

Чтобы перемешать перед разделением, вам нужно либо

  • перемешайте изображения между каталогами перед загрузкой или

  • загрузите его с ImageDataGenerator (shuffle = True), разделите его с помощью операций с массивами и вручную установите y_col и batch_size для вашего набора тестов или

  • полностью удалите различные каталоги для ваших файлов, загрузите ваш .csv как Pandas DataFrame, перемешайте и разбейте строки , а затем используйте эти частичные кадры данных в качестве входных для ваших ImageDataGenerators

Лично я бы выбрал последний вариант.

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