QR分解、RQ分解与SVD

QR分解、RQ分解与SVD分解整理

 

1.QR分解

QR分解将一个m x m的矩阵A分解为一个正交矩阵Q与一个上三角阵R之积。常常利用Householder变换来进行QR分解的计算。

Householder变换可以将一个向量某一维度之外的其他维度化为0.以一个3 x 3的矩阵A为例。为了便于描述,假定*代表没有变化的元素,+为变换的元素,带有下标的H代表一个Householder变换。

H为一正交矩阵,,令

得到:

2.RQ分解

RQ分解将m x m的矩阵A分解为一个上三角阵R与一个正交矩阵Q之积。通过一定的变换,RQ分解可以由QR分解得到。同样以3 x 3的矩阵A为例。

定义一个矩阵,不难得到。同时,P也是一个正交矩阵。

实际上,将一个矩阵左乘P相当于将矩阵上下颠倒,将一个矩阵右乘P相当于将矩阵左右颠倒。以3x3的矩阵M为例,分别左乘P和右乘P:

 

RQ分解可以按照以下步骤进行计算:

Step1 计算

Step2 进行QR分解,得到

   将Step1中的式子代入Step2中,得到

那么

那么

那么

但是,注意是一个上三角阵,则变为一个下三角阵。此时P矩阵又可以发挥作用了,对一个下三角阵,先左右翻转,再上下翻转就可以得到一个上三角阵。大家可以以3x3的情况为例,尝试推导一下是一个上三角矩阵。

同时,那么

。顺利将A矩阵分解成一个上三角矩阵R与一个正交矩阵Q。

 

3.SVD分解

SVD分解将m x n的矩阵A分解为一个m阶的正交矩阵U、一个非负对角阵Σ和一个n阶的正交矩阵VT。用式子表示:

SVD分解的步骤总结如下:

Step1 计算并进行特征分解,得到特征值和对应的特征向量,按特征值从大到小的顺序将特征向量组合成U矩阵。

Step2 计算并进行特征分解,得到特征值和对应的特征向量,按特征值从大到小的顺序将特征向量组合成矩阵。

Step3 将Step1或Step2中的特征值从大到小排序,并开方,依次填入

计算的例子参考参考中的例子。

 

一些应用:

RQ分解可以用于从相机矩阵P分解出内外方位元素。

SVD可以用来做压缩和信息提取,也可以用来进行最小二乘问题的求解。对于近病态的矩阵,直接求逆的结果极不稳定,这对于我们处理问题是极其不利的,而SVD可以解决这一个问题。

 

 

参考:

利用QR分解做RQ分解:https://math.stackexchange.com/questions/1640695/rq-decomposition

SVD分解的例子https://byjiang.com/2017/11/18/SVD/

 

你可能感兴趣的:(矩阵)