用法
get_next(
name=None
)
返回下一個元素。
在圖形模式下,您通常應該調用一次此方法並將其結果用作另一個計算的輸入。然後,一個典型的循環將對該計算的結果調用tf.Session.run
。當 Iterator.get_next()
操作引發 tf.errors.OutOfRangeError
時,循環將終止。以下骨架顯示了在構建訓練循環時如何使用此方法:
dataset = ... # A `tf.data.Dataset` object.
iterator = dataset.make_initializable_iterator()
next_element = iterator.get_next()
# Build a TensorFlow graph that does something with each element.
loss = model_function(next_element)
optimizer = ... # A `tf.compat.v1.train.Optimizer` object.
train_op = optimizer.minimize(loss)
with tf.compat.v1.Session() as sess:
try:
while True:
sess.run(train_op)
except tf.errors.OutOfRangeError:
pass
注意:多次調用Iterator.get_next()
是合法的,例如當您在一個步驟中將不同的元素分發到多個設備時。但是,當用戶在訓練循環的每次迭代中調用 Iterator.get_next()
時,就會出現一個常見的陷阱。 Iterator.get_next()
向圖中添加ops,執行每個op分配資源(包括線程);因此,在訓練循環的每次迭代中調用它都會導致速度減慢並最終耗盡資源。為了防止這種結果,我們會在使用次數超過固定的可疑閾值時記錄警告。
相關用法
- Python tf.compat.v1.data.Iterator.from_structure用法及代碼示例
- Python tf.compat.v1.data.Iterator.from_string_handle用法及代碼示例
- Python tf.compat.v1.data.TFRecordDataset.interleave用法及代碼示例
- Python tf.compat.v1.data.Dataset.snapshot用法及代碼示例
- Python tf.compat.v1.data.experimental.SqlDataset.reduce用法及代碼示例
- Python tf.compat.v1.data.TextLineDataset.from_tensors用法及代碼示例
- Python tf.compat.v1.data.experimental.SqlDataset.as_numpy_iterator用法及代碼示例
- Python tf.compat.v1.data.FixedLengthRecordDataset.skip用法及代碼示例
- Python tf.compat.v1.data.experimental.RandomDataset.bucket_by_sequence_length用法及代碼示例
- Python tf.compat.v1.data.Dataset.random用法及代碼示例
- Python tf.compat.v1.data.experimental.SqlDataset.concatenate用法及代碼示例
- Python tf.compat.v1.data.experimental.SqlDataset.cardinality用法及代碼示例
- Python tf.compat.v1.data.TextLineDataset.filter用法及代碼示例
- Python tf.compat.v1.data.experimental.RandomDataset.skip用法及代碼示例
- Python tf.compat.v1.data.experimental.SqlDataset.padded_batch用法及代碼示例
- Python tf.compat.v1.data.FixedLengthRecordDataset.take用法及代碼示例
- Python tf.compat.v1.data.experimental.RandomDataset.scan用法及代碼示例
- Python tf.compat.v1.data.experimental.SqlDataset.take用法及代碼示例
- Python tf.compat.v1.data.experimental.RandomDataset.padded_batch用法及代碼示例
- Python tf.compat.v1.data.FixedLengthRecordDataset.enumerate用法及代碼示例
注:本文由純淨天空篩選整理自tensorflow.org大神的英文原創作品 tf.compat.v1.data.Iterator.get_next。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。