mindspore.ops.kron

查看源文件
mindspore.ops.kron(input, other)[源代码]

计算 inputother 的Kronecker积。

如果 input 的shape为 \((r0, r1, ... , rN)\)other 的shape为 \((s0, s1, ... , sN)\) ,则计算结果的shape为 \((r0 * s0, r1 * s1, ... , rN * sN)\)

\[(input ⊗ y)_{k_{0},k_{1},...k_{n}} = input_{i_{0},i_{1},...i_{n}} * other_{j_{0},j_{1},...j_{n}},\]

其中,对于所有的 0 ≤ tn,都有 \(k_{t} = i_{t} * b_{t} + j_{t}\)

说明

支持实数和复数类型的输入。

参数:
  • input (Tensor) - 输入tensor。

  • other (Tensor) - 输入tensor 。

返回:

Tensor

支持平台:

Ascend GPU CPU

样例:

>>> import mindspore
>>> input = mindspore.tensor([[0., 1., 2.], [3., 4., 5.]])
>>> other = mindspore.tensor([[-1., -2., -3.], [-4., -6., -8.]])
>>> output = mindspore.ops.kron(input, other)
>>> print(output)
[[  0.   0.   0.  -1.  -2.  -3.  -2.  -4.  -6.]
 [  0.   0.   0.  -4.  -6.  -8.  -8. -12. -16.]
 [ -3.  -6.  -9.  -4.  -8. -12.  -5. -10. -15.]
 [-12. -18. -24. -16. -24. -32. -20. -30. -40.]]