tf.py_func()
Given a python function func, which takes numpy arrays as its arguments and returns numpy arrays as its outputs, wrap this function as an operation in a TensorFlow graph.
tf.py_func()
的作用是将以numpy.arrary作为参数,并返回numpy.arrary的python函数包装成TensorFlow计算图中的op。
import numpy as np
import tensorflow as tf
def func(a, b):
return a+b, a-b
a = tf.placeholder(tf.float32,[2,2],'a')
b = tf.placeholder(tf.float32,[2,2],'b')
res1, res2 = tf.py_func(func,[a,b],[tf.float32,tf.float32])
with tf.Session() as sess:
res1_,res2_ = sess.run([res1,res2], feed_dict={a:[[1,2],[3,4]],b:[[5,6],[7,8]]})
print(res1_)
print(res2_)
输出:
[[ 6. 8.]
[10. 12.]]
[[-4. -4.]
[-4. -4.]]