flowers_tf_lite.ipynb - тренируй модель - PullRequest
0 голосов
/ 07 апреля 2020

Я тестировал образец ноутбука на flowers_tf_lite.ipynb , и когда я добираюсь до тренировочной ячейки, он не запускается.

Кажется, он всегда на бесконечности

Поезд модели - Неизвестно

Ответы [ 2 ]

0 голосов
/ 08 апреля 2020

@ Pedro Asseiro На самом деле, итератор генерирует данные динамически. Таким образом, длина итератора набора данных неизвестна, пока вы не выполните итерацию по крайней мере один раз. Вы можете передать аргумент steps_per_epoch в model.fit_generator, как показано ниже. Затем он печатает, как вы ожидаете.

with tf.device("/device:GPU:0"):
  history = model.fit_generator(train_generator, steps_per_epoch=len(train_generator),
                    epochs=epochs, 
                    validation_data=val_generator,validation_steps=len(val_generator))

Редактировать 1:

@ Pedro Asseiro @gokul_uf Я обновляю приведенный выше код на основе ваших комментариев. Вам нужно добавить steps_per_epoch, а также validation_steps. Еще одно изменение, которое я сделал, это запуск model.fit под GPU. Более того, я сделал то же самое с model.fit в разделе тонкой настройки.

with tf.device("/device:GPU:0"):
  history_fine = model.fit_generator(train_generator, steps_per_epoch=len(train_generator),
                         epochs=5,
                         validation_data=val_generator,validation_steps=len(val_generator))

Пожалуйста, проверьте GitHub гист здесь . Спасибо!

Пожалуйста, дайте мне знать, если что-то не работает. Спасибо!

0 голосов
/ 07 апреля 2020

На самом деле он работает, Unknown, который вы видите, потому что fit_generator, похоже, не определяет, сколько пакетов в наборе данных. Я попытался использовать аргумент steps_in_epoch в fit_from_generator, который выбрасывает другие проблемы, связанные с библиотекой.

Обходным решением было бы вручную остановить тренировку, если вы считаете, что производительность достаточно хорошая, и продолжить с остальными. тетради. Вы можете остановить текущее выполнение, нажав кнопку «Стоп» в верхнем левом углу ячейки или в меню времени выполнения.

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