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


Python tf.data.experimental.enable_debug_mode用法及代码示例


为 tf.data 启用调试模式。

用法

tf.data.experimental.enable_debug_mode()

抛出

  • ValueError 从图形模式调用时。

pdb 模块的示例用法:

import tensorflow as tf
import pdb

tf.data.experimental.enable_debug_mode()

def func(x):
  # Python 3.7 and older requires `pdb.Pdb(nosigint=True).set_trace()`
  pdb.set_trace()
  x = x + 1
  return x

dataset = tf.data.Dataset.from_tensor_slices([1, 2, 3])
dataset = dataset.map(func)

for item in dataset:
  print(item)

调试模式的效果是two-fold:

1) 任何会在输入管道执行中引入异步、并行或非确定性的转换都将被迫同步、顺序和确定性地执行。

2) 任何传递给 tf.data 转换的用户定义函数,例如 map 都将被包装在 tf.py_function 中,以便它们的主体作为 Python 函数执行 "eagerly",而不是跟踪的 TensorFlow 图,这是默认的行为。请注意,即使启用了调试模式,仍会跟踪用户定义的函数以推断其输出的形状和类型;因此,任何print 语句或断点都将在输入管道实际执行之前的跟踪期间触发一次。

注意:由于调试模式设置会影响 tf.data 输入管道的构建,因此应在任何 tf.data 定义之前启用它。

相关用法


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