【发布时间】:2019-04-13 19:50:01
【问题描述】:
我有一个带有概率的张量。这是一个形状为 (?, 30) 的动态张量,我选择这 30 个值中概率最大的索引为:
best_probability = tf.argmax(probability, axis = 1)
现在张量 best_probability 的维度是 (?,)。现在我想从另一个称为数据的张量中选择具有这些索引的值,该张量具有维度 (?, 30, 1024, 3)。基本上使用 best_probability 张量从 30 个值中选择一个具有最佳概率的值。
最终输出的尺寸应为 (?, 1024, 3)。
PS:- 我尝试了gather_nd,但它需要索引 best_probability 张量,例如 [[0, 9], [1, 10], [2, 15], [3, 25]]。为此,我编写了以下 sn-p。
selected_data = tf.stack(tf.range(probability.shape[0]),
tf.argmax(probability, axis = 1))
这不起作用,因为我正在处理动态张量。有没有办法解决这个问题。
【问题讨论】:
标签: tensorflow slice