當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python tf.data.experimental.make_saveable_from_iterator用法及代碼示例


返回一個 SaveableObject 用於使用 Saver 保存/恢複迭代器狀態。 (已棄用)

用法

tf.data.experimental.make_saveable_from_iterator(
    iterator, external_state_policy=None
)

參數

  • iterator 迭代器。
  • external_state_policy 一個字符串,用於標識如何處理依賴於外部狀態的輸入管道。可能的值為'ignore':外部狀態被靜默忽略。 'warn':外部狀態被忽略,記錄警告。 'fail':遇到外部狀態操作失敗。默認情況下,我們將其設置為'fail'。

返回

  • 用於使用 Saver 保存/恢複迭代器狀態的 SaveableObject。

拋出

  • ValueError 如果迭代器不支持檢查點。
  • ValueError 如果 external_state_policy 不是 'warn'、'ignore' 或 'fail' 之一。

警告:此函數已棄用。它將在未來的版本中刪除。更新說明:make_saveable_from_iterator 旨在與 tf.compat.v1.Saver 一起在 TF1 中使用。在 TF2 中,請改用tf.train.Checkpoint

例如:

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()

注意:恢複迭代器時,現有的迭代器狀態將被完全丟棄。這意味著您對數據集圖所做的任何更改也將被丟棄!這包括您在驗證期間可能構建的新數據集圖。因此,在運行驗證時,請確保在恢複檢查點後運行驗證輸入管道的初始化程序。

注意:並非所有迭代器都支持檢查點。嘗試保存不受支持的迭代器的狀態將引發錯誤。

相關用法


注:本文由純淨天空篩選整理自tensorflow.org大神的英文原創作品 tf.data.experimental.make_saveable_from_iterator。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。