当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python tf.autograph.experimental.set_loop_options用法及代码示例


指定要传递给封闭的while_loop 的附加参数。

用法

tf.autograph.experimental.set_loop_options(
    parallel_iterations=UNSPECIFIED, swap_memory=UNSPECIFIED,
    maximum_iterations=UNSPECIFIED, shape_invariants=UNSPECIFIED
)

参数

  • parallel_iterations 在任何给定时间允许并行运行的最大迭代次数。请注意,这并不能保证并行执行。
  • swap_memory 是否在 CPU 而不是 GPU 上存储渐变所需的中间值。
  • maximum_iterations 允许限制循环执行的迭代总数。
  • shape_invariants 允许控制传递给 tf.while_loop 的同名参数。与 tf.while_loop 不同,这是一个 (tensor, shape) 对的列表。

这些参数适用于并且仅适用于直接封闭的循环。仅当循环作为 TF while_loop 上演时才有效;否则参数无效。

用法:

@tf.function(autograph=True)
def f():
  n = 0
  for i in tf.range(10):
    tf.autograph.experimental.set_loop_options(maximum_iterations=3)
    n += 1
  return n
@tf.function(autograph=True)
def f():
  v = tf.constant((0,))
  for i in tf.range(3):
    tf.autograph.experimental.set_loop_options(
        shape_invariants=[(v, tf.TensorShape([None]))]
    )
    v = tf.concat((v, [i]), 0)
  return v

另请参阅 tf.while_loop。

相关用法


注:本文由纯净天空筛选整理自tensorflow.org大神的英文原创作品 tf.autograph.experimental.set_loop_options。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。