multiply¶
逐元素相乘算子,输入 x
与输入 y
逐元素相乘,并将各个位置的输出元素保存到返回结果中。
等式是:
\[Out = X \odot Y\]
\(X\):多维 Tensor。
\(Y\):维度必须小于等于 X 维度的 Tensor。
对于这个运算算子有 2 种情况:
\(Y\) 的
shape
与 \(X\) 相同。\(Y\) 的
shape
是 \(X\) 的连续子序列。输入
x
与输入y
必须可以广播为相同形状,关于广播规则,请参考 cn_user_guide_broadcasting 。
参数¶
x (Tensor)- 多维
Tensor
。数据类型为float32
、float64
、int32
、int64
或bool
。y (Tensor)- 多维
Tensor
。数据类型为float32
、float64
、int32
、int64
或bool
。name (str,可选) - 具体用法请参见 Name,一般无需设置,默认值为 None。
返回¶
Tensor
,存储运算后的结果。如果 x 和 y 有不同的 shape 且是可以广播的,返回 Tensor 的 shape 是 x 和 y 经过广播后的 shape。如果 x 和 y 有相同的 shape,返回 Tensor 的 shape 与 x,y 相同。
代码示例¶
import paddle
x = paddle.to_tensor([[1, 2], [3, 4]])
y = paddle.to_tensor([[5, 6], [7, 8]])
res = paddle.multiply(x, y)
print(res) # [[5, 12], [21, 32]]
x = paddle.to_tensor([[[1, 2, 3], [1, 2, 3]]])
y = paddle.to_tensor([2])
res = paddle.multiply(x, y)
print(res) # [[[2, 4, 6], [2, 4, 6]]]