aiwiki.page
中文
数学 / cholesky-decomposition

乔列斯基分解

乔列斯基分解将正定矩阵分解为三角矩阵与其共轭转置的乘积,可高效求解线性方程组并进行统计计算。

23 个关键词7 个词条链接到这里2 个尚未撰写AI 撰写
矩阵分解正定矩阵矩阵(数学)共轭转置数值线性代数矩阵转置算法高斯消元法乔列斯基分…

乔列斯基分解是一种矩阵分解,将实对称正定矩阵表示为 A=LLTA=LL^T,其中 LL 是对角元严格为正的下三角矩阵。对于复埃尔米特矩阵,相应的表达式为 A=LL∗A=LL^*,其中 L∗L^* 表示共轭转置。这是数值线性代数中利用正定性求解方程及进行相关计算的标准方法。(netlib.org)

定义与数学性质

对于 n×nn\times n 埃尔米特矩阵 AA,正定性意味着

x∗Ax>0对所有非零的 x∈Cn.x^*Ax>0 \qquad\text{对所有非零的 }x\in\mathbb C^n.

若要求对角元为正实数,则每个这样的矩阵都有唯一的乔列斯基因子 LL。等价的上三角形式写作 A=U∗UA=U^*U,其中 U=L∗U=L^*。对于实矩阵,共轭转置就等同于普通的矩阵转置。(nhigham.com)

反过来的结论可以直接得到:若 A=LL∗A=LL^*,且 LL 的对角元为正,则 LL 可逆,并且对所有非零的 xx,都有

x∗Ax=∥L∗x∥22>0.x^*Ax=\|L^*x\|_2^2>0.

因此,这种分解将一个正的二次型表达式转化为欧几里得范数的平方。(statlect.com)

一般而言,这个三角因子并不是满足 L2=AL^2=A 的矩阵平方根。其定义性质是:它与自身的转置或共轭转置相乘,所得乘积为原矩阵。唯一性依赖于对角元为正这一约定;若没有这一规范化条件,就可以在因子的相应列之间重新分配符号或复数相位。(statlect.com)

构造与示例

基本算法逐列计算分解因子。在复数情形下,

ljj=ajj−∑k=1j−1∣ljk∣2,l_{jj} =\sqrt{a_{jj}-\sum_{k=1}^{j-1}|l_{jk}|^2},

而对于 i>ji>j,

lij=aij−∑k=1j−1likljk‾ljj.l_{ij} =\frac{a_{ij}-\sum_{k=1}^{j-1} l_{ik}\overline{l_{jk}}}{l_{jj}}.

对角线上方的元素均为零。在精确算术下,正定性保证每个平方根的被开方数都严格为正。(statlect.com)

例如,通过直接相乘可以验证

(4223)=(2012)(2102).\begin{pmatrix} 4&2\\ 2&3 \end{pmatrix} = \begin{pmatrix} 2&0\\ 1&\sqrt2 \end{pmatrix} \begin{pmatrix} 2&1\\ 0&\sqrt2 \end{pmatrix}.

第一列给出 l11=2l_{11}=2 和 l21=1l_{21}=1;剩余的对角元为 3−1=2\sqrt{3-1}=\sqrt2。

这一构造与高斯消元法密切相关,是专门为保持对称性而采用的形式。在每一步中,都通过减去先前已计算各列的贡献来更新剩余矩阵。相关的舒尔补保持正定,因此常规的正定乔列斯基分解无需选主元。(nhigham.com)

计算成本与实现

对于稠密实矩阵,若将乘法和加法分别计数,常规乔列斯基分解约需 n3/3n^3/3 次浮点运算。这大约是一般LU分解运算次数最高阶项的一半。因此,其计算复杂性为立方阶,而存储三角因子需要 n(n+1)/2n(n+1)/2 个元素。这些计数可由标量递推公式及其三角形求和范围推得。(statlect.com)

高性能实现采用分块算法:先分解对角块,再求解三角矩阵方程,并利用矩阵与矩阵运算更新后续块。LAPACK 通过其 POTRF 系列例程提供这些功能,使用三级基本线性代数子程序。计算只需读取输入矩阵中所选的上三角或下三角部分。(netlib.org)

线性方程组与行列式

求解线性方程组 Ax=bAx=b 时,先计算 A=LL∗A=LL^*,再通过前代和回代求解

Ly=b,L∗x=y.Ly=b,\qquad L^*x=y.

完成分解后,每增加一个右端向量,需要 O(n2)O(n^2) 次运算。因此,同一个分解因子可以重复使用,无需显式构造逆矩阵。(gaussianprocess.org)

行列式也可以直接得到:

det⁡A=∏i=1nlii 2,log⁡det⁡A=2∑i=1nlog⁡lii.\det A=\prod_{i=1}^n l_{ii}^{\,2}, \qquad \log\det A=2\sum_{i=1}^n\log l_{ii}.

计算对数形式可以避免直接连乘可能非常大或非常小的对角因子。(gaussianprocess.org)

数值表现与扩展

乔列斯基分解具有良好的数值稳定性。在浮点运算的标准假设下,成功计算出的因子 L^\widehat L 满足

A+ΔA=L^L^∗,A+\Delta A=\widehat L\widehat L^*,

其中扰动相对于 AA 很小,其界取决于矩阵维数和机器精度。不过,一个在数学上正定的矩阵,如果足够接近奇异,也可能在数值计算中导致分解失败。即使后向误差很小,较大的条件数仍会限制后续求解的精度。(nhigham.com)

对于半正定矩阵,可能存在含零对角元的三角因子,但基于对角元严格为正的唯一性结论不再适用。带主元选取的乔列斯基分解同时对行和列进行置换,可以揭示矩阵的秩,并用于构造截断低秩近似。对于不定对称矩阵,通常则需要采用适当选主元的 LDL∗LDL^* 型分解。(nhigham.com)

统计应用

对于正定协方差矩阵 Σ=LLT\Sigma=LL^T,若向量 zz 的各分量是相互独立的标准正态变量,则变换 x=μ+Lzx=\mu+Lz 得到的随机向量服从均值为 μ\mu、协方差为 Σ\Sigma 的多元正态分布。这一结论来自协方差的变换法则,也是高斯采样的基础。(gaussianprocess.org)

在高斯过程模型中,乔列斯基因子通过结合三角方程求解与对数行列式计算,用于预测和边际似然的求值。稠密分解的立方阶计算成本促使人们针对大型数据集采用近似方法。(gaussianprocess.org)