jax.numpy.linalg.cond

目录

jax.numpy.linalg.cond#

jax.numpy.linalg.cond(x, p=None)[源代码][源代码]#

计算矩阵的条件数。

JAX 实现的 numpy.linalg.cond()

条件数定义为 norm(x, p) * norm(inv(x), p)。对于 ``p = 2``(默认值),条件数是最大奇异值与最小奇异值的比率。

参数:
  • x (ArrayLike) – 形状为 (..., M, N) 的数组,用于计算条件数。

  • p – 要使用的范数的顺序。可以是 {None, 1, -1, 2, -2, inf, -inf, 'fro'} 之一;参见 jax.numpy.linalg.norm() 了解这些的含义。默认值是 p = None,这等同于 p = 2。如果不在 {None, 2, -2} 中,则 x 必须是方阵,即 M = N

返回:

形状为 x.shape[:-2] 的数组,包含条件数。

示例

良态矩阵:

>>> x = jnp.array([[1, 2],
...                [2, 1]])
>>> jnp.linalg.cond(x)
Array(3., dtype=float32)

病态矩阵:

>>> x = jnp.array([[1, 2],
...                [0, 0]])
>>> jnp.linalg.cond(x)
Array(inf, dtype=float32)