Я использую 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
действительно отключил или удалил системную память из моей шахты.Может ли кто-нибудь понять мою точку зрения и дать мне совет?Большое спасибо ~~~