当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python numpy linalg.tensorinv用法及代码示例


本文简要介绍 python 语言中 numpy.linalg.tensorinv 的用法。

用法:

linalg.tensorinv(a, ind=2)

计算 N 维数组的‘inverse’。

结果是倒数a相对于tensordot操作tensordot(a, b, ind), 我。即,高达浮点精度,tensordot(tensorinv(a), a, ind)是用于tensordot 运算的“identity” 张量。

参数

a array_like

张量到‘invert’。它的形状必须是‘square’,即。例如,prod(a.shape[:ind]) == prod(a.shape[ind:])

ind 整数,可选

反和中涉及的第一个索引的数量。必须为正整数,默认为 2。

返回

b ndarray

a的张量点逆,形状a.shape[ind:] + a.shape[:ind].

抛出

LinAlgError

如果 a 是单数或不是‘square’(在上述意义上)。

例子

>>> a = np.eye(4*6)
>>> a.shape = (4, 6, 8, 3)
>>> ainv = np.linalg.tensorinv(a, ind=2)
>>> ainv.shape
(8, 3, 4, 6)
>>> b = np.random.randn(4, 6)
>>> np.allclose(np.tensordot(ainv, b), np.linalg.tensorsolve(a, b))
True
>>> a = np.eye(4*6)
>>> a.shape = (24, 8, 3)
>>> ainv = np.linalg.tensorinv(a, ind=1)
>>> ainv.shape
(8, 3, 24)
>>> b = np.random.randn(24)
>>> np.allclose(np.tensordot(ainv, b, 1), np.linalg.tensorsolve(a, b))
True

相关用法


注:本文由纯净天空筛选整理自numpy.org大神的英文原创作品 numpy.linalg.tensorinv。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。