Как остановить итератор набора данных TensorFlow во время обучения? - PullRequest
0 голосов
/ 20 декабря 2018

Я использую tf.data.Dataset в качестве моего чистого ввода.Обычно я использовал это, как показано ниже:

dataset = get_dataset_pipeline(mode='train')
iter = dataset.make_initializable_iterator()
element = iter.get_next()

Во время обучения, я установил dataset.repeat(1), и каждый раз, когда я использовал это dataset, я буду выполнять sess.run(iter.initializer) и training мою сеть, как указано ниже.:

for epoch in range(4):
    sess.run(iter.initializer)
    try:
        while True:
            train_step += 1
            input = sess.run(elemeent)
            # some train step here           
    except tf.errors.OutOfRangeError:
        pass
    finally:
        pass

Вопрос в том, как я могу прекратить тренировки раньше, чем наступит tf.errors.OutOfRangeError? .Я имею в виду, что я не только хочу выпрыгнуть из поезда, но и хочу, чтобы iter действительно отключил или удалил системную память из моей шахты.Может ли кто-нибудь понять мою точку зрения и дать мне совет?Большое спасибо ~~~

...