Epipolar a personal journal

Cholesky 分解(二)

Cholesky 有很多用途,其中之一是求解形如 $LL^T x = Ax = b$ 的线性方程。各类最小二乘算法中,经常会涉及到求解这类问题。

现实中,矩阵 $A$ 通常会根据问题性质具有不同的结构。这些结构有一个共同的特点,就是维度很高的同时,非零元个数很少。也就是说 $A$ 经常是稀疏矩阵。

对于稀疏矩阵的计算,我们可以采用更加高效的算法,这些算法的最原始思路便是跳过所有零元。对于 Cholesky 分解,情况也毫不例外。但是经验告诉我们:不同的稀疏模式, Cholesky 分解后的结果很有可能在稀疏性上有很大的差别。有的稀疏矩阵在分解后会得到稠密的下三角阵。这种现象被称为 fill-in 。

我们举两个例子来说明这个问题:

上面的例子里,$A$ 和 $B$ 具有相同个数的非零元,但在经过 Cholesky 分解后,一个得到的是稠密的下三角矩阵,另一个则保持了与原始矩阵相同的稀疏特性。