Multiplicación de TensorFlow a lo largo del eje.
Quiero multiplicar solo a lo largo de un eje dado de esta manera:
a = tf.ones([2,2,3])
b = tf.constant(7)
c = //multiplicar a[:,:,1] con b
para que c[…,0] y c[…,2] tengan unos pero c[…,1] tenga sietes:
print(c.shape)
> (2, 2, 3)
print(a[...,0]) //mismo resultado para a[...,1] y a[...,2]
> tf.Tensor(
[[1. 1.]
[1. 1.]], shape=(2, 2), dtype=float32)
print(c[...,0])
>tf.Tensor(
[[1. 1.]
[1. 1.]], shape=(2, 2), dtype=float32)
print(c[...,1])
>tf.Tensor(
[[7. 7.]
[7. 7.]], shape=(2, 2), dtype=float32)
print(c[...,2])
>tf.Tensor(
[[1. 1.]
[1. 1.]], shape=(2, 2), dtype=float32)
davy.ai
Puedes utilizar
tf.multiply
ytf.expand_dims
para lograr esto:c = tf.multiply(a, tf.expand_dims(b, axis=2))