mindspore.ops.addmv
- mindspore.ops.addmv(input, mat, vec, *, beta=1, alpha=1)[source]
Multiplies matrix mat and vector vec. The vector input is added to the final result.
If mat is a \((N, M)\) tensor, vec is a 1-D tensor of size \(M\), then input must be broadcastable with a 1-D tensor of size \(N\).In this case out will be 1-D tensor of size \(N\).
The optional values beta and alpha are the matrix-vector product between mat and vec and the scale factor for the added Tensor input respectively. If beta is 0, then input will be ignored.
\[output = β input + α (mat @ vec)\]- Parameters
- Keyword Arguments
- Returns
Tensor, the shape of the output tensor is \((N,)\), has the same dtype as input.
- Raises
TypeError – If mat, vec, input is not a Tensor.
TypeError – If inputs mat, ‘vec’ are not the same dtype.
ValueError – If mat is not a 2-D Tensor.
ValueError – If vec is not a 1-D Tensor.
- Supported Platforms:
Ascend
GPU
CPU
Examples
>>> import numpy as np >>> from mindspore import Tensor, ops >>> input = Tensor(np.array([2., 3.]).astype(np.float32)) >>> mat = Tensor(np.array([[2., 5., 3.], [4., 2., 2.]]).astype(np.float32)) >>> vec = Tensor(np.array([3., 2., 4.]).astype(np.float32)) >>> output = ops.addmv(input, mat, vec) >>> print(output) [30. 27.]