mindspore.mint.addmm

查看源文件
mindspore.mint.addmm(input, mat1, mat2, *, beta=1, alpha=1)[源代码]

对输入的两个二维矩阵mat1与mat2相乘,并将结果与input相加。 计算公式定义如下:

\[output = \beta input + \alpha (mat1 @ mat2)\]

警告

这是一个实验性API,后续可能修改或删除。

参数:
  • input (Tensor) - 待增加的Tensor,其形状必须可广播与mat1 @ mat2一致。

  • mat1 (Tensor) - 第一个待乘矩阵,必须为2-D的Tensor,类型与 input 一致。

  • mat2 (Tensor) - 第二个待乘矩阵,必须为2-D的Tensor,类型与 input 一致。

关键字参数:
  • beta (Union[float, int], 可选) - 输入的乘数。默认值: 1

  • alpha (Union[float, int],可选) - mat1 @ mat2的系数,默认值: 1

返回:

Tensor,其数据类型与 input 相同, 其shape和mat1 @ mat2相同。

异常:
  • TypeError - inputmat1mat2 的类型不是Tensor。

  • TypeError - inputmat1mat2 数据类型不一致。

  • ValueError - mat1mat2 的不是二维Tensor。

支持平台:

Ascend

样例:

>>> import numpy as np
>>> from mindspore import Tensor, mint
>>> input = Tensor(np.ones([3, 3]).astype(np.float32))
>>> mat1 = Tensor(np.ones([3, 4]).astype(np.float32))
>>> mat2 = Tensor(np.ones([4, 3]).astype(np.float32))
>>> output =  mint.addmm(input, mat1, mat2)
>>> print(output)
[[5. 5. 5.]
 [5. 5. 5.]
 [5. 5. 5.]]