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