Строка, определяющая, как обрабатывать конвейеры ввода, зависящие от внешнего состояния. Возможные значения: 'ignore': Внешнее состояние игнорируется без сообщений. 'warn': Внешнее состояние игнорируется с отображением предупреждения. 'fail': Операция завершается с ошибкой при обнаружении внешнего состояния. По умолчанию установлено значение 'fail'.
Возвращаемое значение
SaveableObject для сохранения/восстановления состояния итератора с помощью Saver.
Исключения
ValueError
Если итератор не поддерживает сохранение состояния.
ValueError
Если external_state_policy не является одним из 'warn', 'ignore' или 'fail'.
Например:
with tf.Graph().as_default():
ds = tf.data.Dataset.range(10)
iterator = ds.make_initializable_iterator()
# Build the iterator SaveableObject.
saveable_obj = tf.data.experimental.make_saveable_from_iterator(iterator)
# Add the SaveableObject to the SAVEABLE_OBJECTS collection so
# it can be automatically saved using Saver.
tf.compat.v1.add_to_collection(tf.GraphKeys.SAVEABLE_OBJECTS, saveable_obj)
saver = tf.compat.v1.train.Saver()
while continue_training:
... Perform training ...
if should_save_checkpoint:
saver.save()
Примечание: При восстановлении итератора существующее состояние итератора полностью отбрасывается. Это означает, что любые изменения, которые вы могли внести в граф Dataset, также будут отброшены! Это включает новый граф Dataset, который вы могли построить во время проверки. Поэтому во время выполнения проверки убедитесь, что вы запускаете инициализатор для конвейера ввода проверки после восстановления контрольной точки.
Примечание: Не все итераторы пока поддерживают сохранение состояния. Попытка сохранить состояние недопустимого итератора приведет к ошибке.