jax.scipy.linalg.cho_factor#
- jax.scipy.linalg.cho_factor(a, lower=False, overwrite_a=False, check_finite=True)[源代码][源代码]#
基于Cholesky分解的线性求解的因式分解
JAX 实现
scipy.linalg.cho_factor()。此函数返回一个适合与jax.scipy.linalg.cho_solve()一起使用的结果。对于直接的 Cholesky 分解,请优先使用jax.scipy.linalg.cholesky()。- 参数:
- 返回:
c是一个形状为(..., N, N)的数组,表示输入的下三角或上三角 Cholesky 分解;lower是一个布尔值,指定这是下三角还是上三角分解。- 返回类型:
(c, lower)
示例
一个小型的实对称正定矩阵:
>>> x = jnp.array([[2., 1.], ... [1., 2.]])
通过
cho_factor()计算 Cholesky 分解,并使用它通过cho_solve()求解线性方程。>>> b = jnp.array([3., 4.]) >>> cfac = jax.scipy.linalg.cho_factor(x) >>> y = jax.scipy.linalg.cho_solve(cfac, b) >>> y Array([0.6666666, 1.6666666], dtype=float32)
检查结果是否一致:
>>> jnp.allclose(x @ y, b) Array(True, dtype=bool)