torch.baddbmm#
- torch.baddbmm(input, batch1, batch2, out_dtype=None, *, beta=1, alpha=1, out=None) Tensor#
Performs a batch matrix-matrix product of matrices in
batch1andbatch2.inputis added to the final result.batch1andbatch2must be 3-D tensors each containing the same number of matrices.If
batch1is a tensor,batch2is a tensor, theninputmust be broadcastable with a tensor andoutwill be a tensor. Bothalphaandbetamean the same as the scaling factors used intorch.addbmm().If
betais 0, then the content ofinputwill be ignored, and nan and inf in it will not be propagated.For inputs of type FloatTensor or DoubleTensor, arguments
betaandalphamust be real numbers, otherwise they should be integers.This operator supports TensorFloat32.
On certain ROCm devices, when using float16 inputs this module will use different precision for backward.
- Parameters
input (Tensor) – the tensor to be added
batch1 (Tensor) – the first batch of matrices to be multiplied
batch2 (Tensor) – the second batch of matrices to be multiplied
out_dtype (dtype, optional) – the dtype of the output tensor, Supported only on CUDA and for torch.float32 given torch.float16/torch.bfloat16 input dtypes
- Keyword Arguments
beta (Number, optional) – multiplier for
input()alpha (Number, optional) – multiplier for ()
out (Tensor, optional) – the output tensor.
Example:
>>> M = torch.randn(10, 3, 5) >>> batch1 = torch.randn(10, 3, 4) >>> batch2 = torch.randn(10, 4, 5) >>> torch.baddbmm(M, batch1, batch2).size() torch.Size([10, 3, 5])