mindspore.ops.inner
- mindspore.ops.inner(input, other)[源代码]
计算两个1D Tensor的点积。
对于1D Tensor(没有复数共轭的情况),返回两个向量的点积。
对于更高的维度,返回最后一个轴上的和积。
说明
如果 input 或 other 之一是标量,那么
mindspore.ops.inner()
相当于mindspore.ops.mul()
。- 参数:
input (Tensor) - 第一个输入的Tensor。
other (Tensor) - 第二个输入的Tensor。
- 返回:
Tensor,内积的结果。
- 异常:
ValueError - 如果 input 和 other 都不是标量,且两者的最后一维不相同。
- 支持平台:
Ascend
GPU
CPU
样例:
>>> import mindspore as ms >>> from mindspore import Tensor, ops >>> from mindspore import dtype as mstype >>> # case1: 2 1D tensors >>> input = ms.Tensor([1, 2, 3], mstype.float32) >>> y = ms.Tensor([4, 5, 6], mstype.float32) >>> output = ops.inner(input, y) >>> print(output) 32 >>> # case2: Tensor scalar and tensor >>> input = ms.Tensor([[[1, 2, 3], [3, 2, 1]], [[4, 5, 6], [4, 5, 6]]], mstype.float32) >>> y = ms.Tensor(2, mstype.float32) >>> output = ops.inner(input, y) >>> print(output) [[[ 2. 4. 6.] [ 6. 4. 2.]] [[ 8. 10. 12.] [ 8. 10. 12.]]] >>> # case3: Two tensors >>> input = ms.Tensor([[[1, 2, 3], [3, 2, 1]], [[4, 5, 6], [4, 5, 6]]], mstype.float32) >>> y = ms.Tensor([[2, 3, 4], [4, 3, 2]], mstype.float32) >>> output = ops.inner(input, y) >>> print(output) [[[20. 16.] [16. 20.]] [[47. 43.] [47. 43.]]]