引言

分解的思想其實並不古老, 而且大家都熟悉的,把複雜的分而治之,然後再組合起來。

分解有什麼好處?

類比的看, 我們知道整數的分解可以利用乘法也可以利用加法。譬如我們玩過的遊戲24點, 就是利用加法進行分解和整合。 這種分解很重要的是計算上的便利性!

而質數(素數)因子分解, 又是另外一種方式的分解。 而這種分解,重要的是對數本身理解上的便利性。 而理解上的便利, 又帶來了計算上的便利。

那麼,類比到矩陣, 也有加法和乘法的兩種分解。

矩陣的加法分解

三種經典分解

最經典的是雅克比Jacobi方法, 將一個矩陣分為對角陣和非對角陣的部分。

類似的也有高斯-賽德爾Gauss–Seidel方法,分解成上三角和下三角陣之後。

更進一步, 我們可以有逐次超松馳迭代法Successive Over Relaxation (SOR), 更進一步分解成三部分, 對角陣和上下三角形。 同時增加權重調整分解後的比例。

這樣的分解, 利用內在的等式應有的平衡性和不動點收斂理論, 可以快速迭代。

如何理解這種分解?

首先對x的拆分到等式左右兩邊之後, 可以看成是找到y=x和另外一個函數的交點,再根據不動點收斂理論(參考 收斂率概述 (Overview of Rates of Convergence)), 就可以進行迭代求解了。 下面可以看一下不動點理論告訴我們,並不是任何分解都能收斂的!

所以, 在雅克比方法裡面, 要求譜半徑小於1:

對於譜半徑 和 矩陣範數直接的關係聯繫起來去理解。

然後,可以通過不動點理論, 要求曲線的斜率絕對值不大於1, 這樣直觀去理解可收斂性。

小結:

這裡通過簡單類比, 分析了矩陣分解的加法的策略。 下次, 我們分析矩陣分解乘法的策略,常見的有LU, LDL, QR, SVD分解。 那麼這些分解, 類比的來說為什麼容易計算的同時, 還可以方便對矩陣的認識呢?

參考:

en.wikipedia.org/wiki/M

推薦閱讀:

相關文章