我有一个张量和一个相同等级的索引张量。我想将与索引张量中的索引对应的张量值设置为某个标量。我该怎么做?
换句话说,我正在寻找以下 Numpy 操作的 Tensorflow 等效项:
array[indices] = scalar
在我的具体案例中,我们谈论的是一维张量:
mask = tf.zeros_like(some_1D_tensor)
(e.g. mask = [0, 0, 0, 0, 0])
让我们indices
是一个 1D 张量,其中包含我想设置为标量值 1 的mask
索引。所以我想要:
mask[indices] = 1
(e.g. for indices = [1, 3] the output should be mask == [0, 1, 0, 1, 0])
我不知道
它以前是否不存在,或者我只是没有见过它,但一般情况相当于
array[indices] = scalar
是
tensor = tf.scatter_nd_update(tensor, indices, updates)
使用 tf.scatter_nd_update((