tensorflow map_fn是否支持多个张量?

A D*_*Das 10 python tensorflow

tf.map_fn是否支持python的本机映射函数支持多个张量(下面提供的示例)?

a = [1,2,3,4]
b = [17,12,11,10]
print(map(lambda x,y:x+y, a,b)) # ==> [18, 14, 14, 14]
Run Code Online (Sandbox Code Playgroud)

A D*_*Das 13

就像今天一样,我看到map_fn被增强为采用两个张量,因为文档说 - "elems:一个张量或(可能是嵌套的)张量序列,每个张量都将沿着它们的第一维解压缩.结果切片将应用于fn." 这个例子(虽然以numpy形式给出)也表明它可以采用两个张量.我在这里复制它.

elems = (np.array([1, 2, 3]), np.array([-1, 1, -1]))
alternate = map_fn(lambda x: x[0] * x[1], elems, dtype=tf.int64)
# alternate == [-1, 2, -3]
Run Code Online (Sandbox Code Playgroud)

资源:


Sun*_*Kim 1

源代码显示该函数仅需要一个 elems 张量:

def map_fn(fn, elems, dtype=None, parallel_iterations=10, back_prop=True,
       swap_memory=False, name=None):
Run Code Online (Sandbox Code Playgroud)

我没有看到任何 * 和 ** 参数。