在Tensorflow中,有没有一种方法可以使用scatter_nd置换成批的张量,而无需堆叠张量?

时间:2020-10-28 09:03:38

标签: python tensorflow keras neural-network tensor

例如,假设我的输入张量的尺寸为Unzip

我还有一个形状为(bs, nv, dims)的索引张量

我想发生的是输入中的元素按索引中的给定顺序排列。

因此,如果输入张量为(bs, nv),即[[[1,1], [2,2], [3,3], [4,4]]]bs=1nv=4dims=2

我希望输出为indices = [[2,1,3,0]]

请注意,如果[[[4,4], [2,2], [1,1], [3,3]]]始终为1,则使用bs很容易做到。

我真正感兴趣的是何时tf.scatter_nd(..)

注意:这是用collect不能实现的,因为如果使用collect,它将为您提供bs > 1,这对上下文是不正确的。

当前解决方案: 我现在拥有的解决方案是:

[[[3,3], [2,2], [4,4], [1,1]]]

我认为这很慢,因为它涉及地图。

0 个答案:

没有答案