让我用numpy中的例子介绍问题:
arr - some numpy array
a, b - constants
arr[arr < a] = b
现在,我想实现相同的功能,但在Tensorflow中,arr
将是一个张量。运行前不知道张量值。
正如您所看到的,答案将澄清为张量内的特定位置分配值,以及对张量进行调节并检索满足条件的指数。
答案 0 :(得分:1)
如@ xdurch0所述,tf.where()
有适当的条件和广播应该可以解决问题:
b_broadcast = tf.ones(tf.shape(arr), dtype=arr.dtype) * b
arr = tf.where(tf.less(arr, a), b_broadcast, arr)