tf.py_func(
func,
inp,
Tout,
stateful=True,
name=None
)
封装一个python函数并将其用作TensorFlow op。给定一个python函数func,它以numpy数组作为参数并返回numpy数组作为输出,将这个函数包装为张量流图中的一个操作。下面的代码片段构造了一个简单的TensorFlow图,它调用np.sinh() NumPy函数作为图中的操作:
def my_func(x):
# x will be a numpy array with the contents of the placeholder below
return np.sinh(x)
input = tf.placeholder(tf.float32)
y = tf.py_func(my_func, [input], tf.float32)
注意:tf.py_func()操作有以下已知的限制:
参数:
stateful
: (布尔)。如果为真,则应该认为该函数是有状态的。如果一个函数是无状态的,当给定相同的输入时,它将返回相同的输出,并且没有可观察到的副作用。诸如公共子表达式消除之类的优化只在无状态操作上执行。返回值:
原链接: https://tensorflow.google.cn/versions/r1.10/api_docs/python/tf/py_func?hl=en