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)