转载自:http://blog.csdn.net/jbb0523/article/details/45100351
文献[1]中给出了施密特(Schimidt)正交化的过程:
上面的的[x,y]表示向量内积,[x,y]=xTy=yTx=[x,y]。施密特正交化公式中的br实际上可写为:
分子之所以可以这么变化是由于[x,y]实际上为一个数,因此[x,y]x=x[x,y]= xxTy。
上一篇《稀疏表示与匹配追踪》中详细的解释了匹配追踪(Matching Pursuit,MP)的流程,在最后给出了正交匹配追踪(Orthogonal Matching Pursuit,OMP)的流程,并指出OMP与MP的不同根本在于残差更新过程:OMP减去的Pem是在所有被选择过的原子组成的矩阵φt所张成空间上的正交投影,而MP减去的Pem是在本次被选择的原子φp所张成空间上的正交投影。正交投影及正交投影变换矩阵的概念可以参见《压缩感知中的数学知识:投影矩阵(projectionmatrix)》。
首先给出一个结论:
设OMP共从冗余字典中选择了r个原子,分别是a1,a2,……,ar,根据正交匹配追踪的流程可以知道待分解信号x最后剩余的残差eromp为 (式1)
该残差也可以表示为
(式2)
其中矩阵A为选择的r个原子组成的矩阵,e(r-1)omp为选择(r-1)个原子时的残差。
将选择的r个原子a1,a2,……,ar进行施密特正交化:
则残差eromp还可以写为
(式3)
(式1)一般出现在稀疏分解算法中,(式2)一般出现在重构算法中,(式3)是自己琢磨出来的(受到沙威的文档中提到的施密特正交化的启发,但沙威只限于向量情况下,详情可参见[3],此处相当于一个推广)。
而实际上(式1)、(式2)和(式3)三种正交匹配追踪算法的残差计算方法是等价的,纯数学证明比较复杂,这里给一个MATLAB程序,可以验证三者的等价性:
程序最后一行的输出结果为零,说明三个残差是相等的。
这里可以看出OMP与Schimidt正交化的关系:
OMP分解过程,实际上是将所选原子依次进行Schimidt正交化,然后将待分解信号减去在正交化后的原子上各自的分量即可得残差。其实(式3)求残差的过程也是在进行施密特正交化。
有个关键问题还是要说的,分解后在所选择各原子上的系数是多少呢?答案其实也很简单,各个系数是(ATA)-1ATx,即最小二乘解,这个解是一个列向量,每一个元素分别是组成矩阵A的各原子的线性组合系数,这个在下一篇《正交匹配追踪(OMP)在稀疏分解与压缩感知重构中的异同》也会明确再次说明。
同理,若设MP共从冗余字典中选择了r个原子,分别是a1,a2,……,ar,根据匹配追踪的流程可以知道待分解信号x每次迭代后剩余的残差ermp为
比较式(3)的第2个等号表示的eromp与此处的ermp也可以体会出OMP与MP的区别吧。
【参考文献】
【1】同济大学数学系. 线性代数(第五版)[M].高等教育出版社,2007:114.
【2】Joel A. Tropp and AnnaC. Gilbert . Signal Recovery From Random Measurements Via Orthogonal MatchingPursuit[J]. IEEE Transactions on Information Theory, VOL. 53, NO. 12, DECEMBER2007.
【3】沙威. “压缩传感”引论.http://www.eee.hku.hk/~wsha/Freecode/Files/Compressive_Sensing.pdf