【问题标题】:Advanced indexing in TensorflowTensorflow 中的高级索引
【发布时间】:2017-01-15 18:21:08
【问题描述】:

我有两个形状的张量

voxels :: (4, 64, 64, 64) indices :: (4096, 3)

这里voxelsdtype float32,而indices063 之间的整数。 我想索引体素,创建张量张量output

output :: 4, 4096

使得以下约束成立

output[i,j] = voxels[i, indices[j,0], indices[j,1]. indices[j,2]]

如何在张量流中做到这一点?

有人谈论更高级的切片here,但不清楚那里的建议是否适用,或者渐变是否已实施。

作为参考,如果上面的张量是 numpy 数组,下面的代码就是我想要的:

output = voxels[:, indices[:,0],indices[:,1],indices[:,2]]

【问题讨论】:

标签: numpy multidimensional-array indexing tensorflow slice


【解决方案1】:

gather_nd 确实是一种可能性,但尚未实现渐变。但是,也可以使用涉及gather 的技巧,通过展平张量并重新计算适当的索引。

【讨论】:

    【解决方案2】:

    我相信gather_nd 可以满足您的要求,但我认为渐变尚未实现。

    【讨论】:

      猜你喜欢
      • 2019-03-08
      • 2017-03-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-12-21
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多