multiply

paddle.multiply ( x, y, name\=None ) [源代码]

该OP是逐元素相乘算子,输入 x 与输入 y 逐元素相乘,并将各个位置的输出元素保存到返回结果中。

等式是:

multiply - 图1

  • multiply - 图2

    :多维Tensor。

  • multiply - 图3

    :维度必须小于等于X维度的Tensor。

对于这个运算算子有2种情况:

  1. multiply - 图4

    shape 与 XX 相同。

  2. YY 的 shape 是 XX 的连续子序列。

  3. 输入 x 与输入 y 必须可以广播为相同形状, 关于广播规则,请参考 广播 (broadcasting)

参数

  • x (Tensor)- 多维 Tensor 。数据类型为 float32float64int32int64

  • y (Tensor)- 多维 Tensor 。数据类型为 float32float64int32int64

  • name (string,可选)- 输出的名字。默认值为None。该参数供开发人员打印调试信息时使用,具体用法请参见 Name

返回

Tensor,存储运算后的结果。如果x和y有不同的shape且是可以广播的,返回Tensor的shape是x和y经过广播后的shape。如果x和y有相同的shape,返回Tensor的shape与x,y相同。

代码示例

  1. import paddle
  2. x = paddle.to_tensor([[1, 2], [3, 4]])
  3. y = paddle.to_tensor([[5, 6], [7, 8]])
  4. res = paddle.multiply(x, y)
  5. print(res) # [[5, 12], [21, 32]]
  6. x = paddle.to_tensor([[[1, 2, 3], [1, 2, 3]]])
  7. y = paddle.to_tensor([2])
  8. res = paddle.multiply(x, y)
  9. print(res) # [[2, 4, 6], [2, 4, 6]]]