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] 的陣列,包含條件數。

範例

良conditioned 矩陣

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

Ill-conditioned 矩陣

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