📅  最后修改于: 2023-12-03 15:34:15.327000             🧑  作者: Mango
在数学和计算机科学中,Cholesky分解(也称为Cholesky分解法和蔡奇分解)是一个用于矩阵分解的特殊情况,其中输入矩阵是Hermite正定矩阵(自共轭矩阵)或正定实矩阵:也就是说,线性代数中的一个矩阵可以表示为一个下三角矩阵与其共轭转置的乘积。
np.cholesky()
方法用于获取矩阵的Cholesky分解:
numpy.linalg.cholesky(a)
参数说明:
返回值说明:
返回下三角矩阵L,使得L.dot(L.conj().T) = a。 如果a是用于cholesky分解的复数或非对称的,那么这个程序将失败并抛出LinAlgError异常。
import numpy as np
# Creating a numpy array
a = np.array([[9, 3], [3, 6]])
# Calculating Cholesky decomposition of a
l = np.linalg.cholesky(a)
print("Lower-trianglular matrix L:\n", l)
运行结果:
Lower-trianglular matrix L:
[[3. 0.]
[1. 2.]]
在上面的示例中,我们创建了一个矩阵a,并使用np.linalg.cholesky()
方法分解了该矩阵。分解后,我们得到了下三角矩阵L。
注意,在使用np.linalg.cholesky()
方法进行矩阵分解时,输入矩阵必须是Hermite正定矩阵或正定实矩阵。如果输入矩阵是复数或者非对称的,则程序将失败并抛出异常。