mindspore.mint.baddbmm

View Source On Gitee
mindspore.mint.baddbmm(input, batch1, batch2, *, beta=1, alpha=1)[source]

The result is the sum of the input and a batch matrix-matrix product of matrices in batch1 and batch2. The formula is defined as follows:

\[\text{out}_{i} = \beta \text{input}_{i} + \alpha (\text{batch1}_{i} \mathbin{@} \text{batch2}_{i})\]
Parameters
  • input (Tensor) – The input Tensor. When batch1 is a \((C, W, T)\) Tensor and batch2 is a \((C, T, H)\) Tensor, input must be broadcastable with \((C, W, H)\) Tensor.

  • batch1 (Tensor) – \(batch1\) in the above formula. Must be 3-D Tensor, dtype is same as input.

  • batch2 (Tensor) – \(batch2\) in the above formula. Must be 3-D Tensor, dtype is same as input.

Keyword Arguments
  • beta (Union[float, int], optional) – multiplier for input. Default: 1 .

  • alpha (Union[float, int], optional) – multiplier for \(batch1 @ batch2\). Default: 1 .

Returns

Tensor, has the same dtype as input, shape will be \((C, W, H)\).

Raises
  • TypeError – If the type of input, batch1, batch2 is not Tensor.

  • TypeError – If the types of input, batch1, batch2 are different.

  • ValueError – If batch1 and batch2 are not 3-D tensors.

Supported Platforms:

Ascend

Examples

>>> import numpy as np
>>> from mindspore import Tensor, mint
>>> input = Tensor(np.ones([1, 3, 3]).astype(np.float32))
>>> batch1 = Tensor(np.ones([1, 3, 4]).astype(np.float32))
>>> batch2 = Tensor(np.ones([1, 4, 3]).astype(np.float32))
>>> output = mint.baddbmm(input, batch1, batch2)
>>> print(output)
[[[5. 5. 5.]
  [5. 5. 5.]
  [5. 5. 5.]]]