假设我有一个像一样的二维基调
r = tf.constant([[0],[1]])
和类似的二维张量
v = tf.constant([[1, 3, 4, 7, 8, 2],[5, 3, 5, 4, 7, 2]])
我希望能够通过乘以特定列的r来更新v?例如,如果从第2列(基于零(,则得到的张量将是[[1,3,5,0,0,0],[5,3,5,4,7,2]
我提出的任何解决方案都会导致以下错误
v[:, 2:] *= r[:, None]
TypeError: 'tensorflow.python.framework.ops.EagerTensor' object does not support item assignment
您必须执行两个步骤:
res = v[:, 2:] * r
res = tf.concat((v[:, :2], res), axis=-1)