torch.addmm
torch.addmm(input, mat1, mat2, *, beta=1, alpha=1, out=None) -> Tensor
Performs a matrix multiplication of the matrices "mat1" and "mat2".
   The matrix "input" is added to the final result.
If "mat1" is a (n \times m) tensor, "mat2" is a (m \times p)
   tensor, then "input" must be broadcastable with a (n \times p)
   tensor and "out" will be a (n \times p) tensor.
"alpha" and "beta" are scaling factors on matrix-vector product
   between "mat1" and "mat2" and the added matrix "input"
   respectively.
  \text{out} = \beta\ \text{input} + \alpha\ (\text{mat1}_i
  \mathbin{@} \text{mat2}_i)

If "beta" is 0, then "input" will be ignored, and nan and inf
   in it will not be propagated.
For inputs of type FloatTensor or DoubleTensor, arguments
   "beta" and "alpha" must be real numbers, otherwise they should be
   integers.
This operation has support for arguments with sparse layouts. If