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/
【QR分解、RQ分解与SVD】