将学习到什么

CS 分解是分划的酉矩阵在分划的酉等价之下的标准型. 它的证明涉及奇异值分解、QR 分解以及一个简单习题.

 


一个直观的习题

设 \(\Gamma, L \in M_p\). 假设 \(\Gamma = \mathrm{diag}(\gamma_1,\cdots, \gamma_p)\), 其中 \(0 \leqslant \gamma_1 \leqslant \cdots \leqslant \gamma_p \leqslant 1\), \(L=[\ell_{ij}]\) 是下三角的, 则
\begin{align}
\begin{bmatrix} \Gamma & L & 0\end{bmatrix}=\begin{bmatrix} \gamma_1 & &&& \ell_{11} & & & 0 & 0 & & & 0 \\
& \gamma_2 &&& \ell_{21} & \ell_{22} & & & & \ddots & & \\
& & \ddots & & \vdots & \vdots & \ddots & & & & \ddots & \\
& & & \gamma_p & \ell_{p1} & \ell_{p2} & \cdots & \ell_{pp} & 0 & & & 0 \end{bmatrix} \in M_{p,2p+k}
\end{align}
如果 \([\Gamma \quad L \quad 0]\) 的行是标准正交的,我们断定 \(L\) 是对角的, \(L=\mathrm{diag}(\lambda_1,\cdots , \lambda_p)\), 且 \(\lvert \lambda_j \rvert ^2 = 1-\gamma_j^2,\,\,j=1,\cdots,p\). 即
\begin{align}
\begin{bmatrix} \Gamma & L & 0\end{bmatrix}=\begin{bmatrix} \gamma_1 & &&& \lambda_1 & & & & 0 & & & 0 \\
& \gamma_2 &&& & \lambda_2 & & & & \ddots & & \\
& & \ddots & & & & \ddots & & & & \ddots & \\
& & & \gamma_p & & & & \lambda_p & 0 & & & 0 \end{bmatrix}
\end{align}

对行着手去做,证明很直观.
 

CS 分解定理

  定理(CS 分解): 设 \(p,q\) 与 \(n\) 是给定的整数,其中 \(1<p \leqslant q < n\) 且 \(p+q =n\). 设 \(U= \begin{bmatrix} U_{11} & U_{12} \\ U_{21} & U_{22} \end{bmatrix} \in M_n\) 是酉矩阵,其中 \(U_{11} \in M_p\) 且 \(U_{22} \in M_q\). 则存在酉矩阵 \(V_1,W_1 \in M_p\) 以及 \(V_2, W_2 \in M_q\), 使得
\begin{align}
\begin{bmatrix} V_1 & 0 \\ 0 & W_1 \end{bmatrix} \begin{bmatrix} U_{11} & U_{12} \\ U_{21} & U_{22} \end{bmatrix} \begin{bmatrix} V_2 & 0 \\ 0 & W_2 \end{bmatrix} = \begin{bmatrix} C & S & 0 \\ -S & C & 0 \\ 0 & 0& I_{q-p} \end{bmatrix}
\end{align}
其中 \(C = \mathrm{diag} (\sigma_1,\cdots, \sigma_p)\), \(\sigma_1 \geqslant \cdots \geqslant \sigma_p\) 是 \(U_{11}\) 的按照非增次序排列的奇异值,而 \(S= \mathrm{diag} \left( (1-\sigma_1^2)^{1/2},\cdots, (1-\sigma_1^p)^{1/2} \right)\)
 
  证明: 基本思路是做出一系列的酉等价,它们一步一步将 \(U\) 化简为具有所需要的形式的分块矩阵. 第一步是利用奇异值分解:记 \(U_{11}=V \Sigma W=(VK_p)(K_p\Sigma K_p)(K_pW)=\tilde{V} \Gamma \tilde{W}\), 其中 \(V,W \in M_p\) 是酉矩阵,\(K_p\) 是 \(p\times p\) 反序矩阵. \(\tilde{V}=VK_p\), \(\tilde{W}=K_pW\), \(\Sigma = \mathrm{diag}(\sigma_1, \cdots, \sigma_p)\), 其中 \(\sigma_1 \geqslant \cdots \geqslant \sigma_p\), 且 \(\Gamma = K_p\Sigma K_p = \mathrm{diag}(\sigma_p, \cdots, \sigma_1)\). 计算
\begin{align}
\begin{bmatrix} \tilde{V}^* & 0 \\ 0 & I_q \end{bmatrix} \begin{bmatrix} U_{11} & U_{12} \\ U_{21} & U_{22} \end{bmatrix} \begin{bmatrix} \tilde{W}^* & 0 \\ 0 & I_q \end{bmatrix} = \begin{bmatrix} \Gamma & \hat{V}^*U_{12} \\ U_{21}\tilde{W}^* & U_{22} \end{bmatrix}
\end{align}
这个矩阵是酉矩阵(它是三个酉矩阵的乘积),所以每一列的 Euclid 范数均为 1 ,这就意味着 \(\sigma_1 = \gamma_p \leqslant 1\). 现在利用 QR 分解以及它的变形来记 \(\tilde{V}^*U_{12}=[L \quad 0] \tilde{Q}\) 以及 \(U_{21}\tilde{W}^* = Q \begin{bmatrix} R \\ 0 \end{bmatrix}\), 其中 \(\tilde{Q},Q \in M_q\) 是酉矩阵, \(L=[\ell_{ij}] \in M_p\) 是下三角矩阵,而 \(R=[r_{ij}] \in M_p\) 是上三角矩阵. 计算
\begin{align}
\begin{bmatrix} I_p & 0 \\ 0 & Q^* \end{bmatrix} \begin{bmatrix} \Gamma & \hat{V}^*U_{12} \\ U_{21}\tilde{W}^* & U_{22} \end{bmatrix} \begin{bmatrix} I_p & 0 \\ 0 &\tilde{Q}^* \end{bmatrix} = \begin{bmatrix} \Gamma &\begin{bmatrix} L & 0 \end{bmatrix} \\ \begin{bmatrix} R \\ 0 \end{bmatrix} & Q^*U_{22}\tilde{Q}^* \end{bmatrix}
\end{align}
上一习题中和论证方法表明:\(L\) 与 \(R\) 两者都是对角的,且对每个 \(i=1,\cdots,p\) 有 \(\lvert r_{ii} \rvert = \lvert \ell_{ii} \rvert = \sqrt{1-\gamma_i^2}\). 设 \(M=\mathrm{diag}(\sqrt{1-\gamma_1^2},\cdots, \sqrt{1-\gamma_p^2})\), 并令 \(t=\max \{ i:\gamma_i <1 \}\). 则存在对角酉矩阵 \(D_1,D_2 \in M_p\) 使得 \(D_1R=-M\) 以及 \(LD_2=M\), 所以通过 \(I_p \oplus D_1 \oplus I_{n-2p}\) 在左边作成的酉相合与通过 \(I_p \oplus D_2 \oplus I_{n-2p}\) 在右边作成的酉相合产生出一个形如
\begin{align}
\begin{bmatrix} \Gamma &\begin{bmatrix} M & 0 \end{bmatrix} \\ \begin{bmatrix} -M \\ 0 \end{bmatrix} & Z \end{bmatrix} = \begin{bmatrix} \Gamma_1 & 0 & M_1 & 0 & 0 \\ 0 & I_{p-t} & 0 & 0_{p-t} & 0 \\ -M_1 & 0 & Z_{11} & Z_{12} & Z_{13} \\ 0 & 0_{p-t} & Z_{21} & Z_{22} & Z_{23} \\ 0 & 0& Z_{31} & Z_{32} & Z_{33} \end{bmatrix}
\end{align}
的酉矩阵,其中有分划的酉矩阵 \(\Gamma = \Gamma_1 \oplus I_{p-t}\) 以及 \(M=M_1 \oplus 0_{p-t}\), 所以 \(M_1\) 是非奇异的. 第一行和第三分块列的正交性(以及 \(M_1\) 的非奇异性)就蕴含 \(Z_{11}=\Gamma_1\), 因此要求每一行和每一列都是单位向量就确保了 \(Z_{12}\), \(Z_{13}\), \(Z_{21}\) 以及 \(Z_{31}\) 全都是零分块. 从而我们有
\begin{align}
\begin{bmatrix} \Gamma_1 & 0 & M_1 & 0 & 0 \\ 0 & I_{p-t} & 0 & 0_{p-t} & 0 \\ -M_1 & 0 & Z_{11} & 0& 0 \\ 0 & 0_{p-t} & 0 & Z_{22} & Z_{23} \\ 0 & 0& 0 & Z_{32} & Z_{33} \end{bmatrix}
\end{align}
其右下角分块 \(\tilde{Z}= \begin{bmatrix} Z_{22} & Z_{23} \\ Z_{32} & Z_{33} \end{bmatrix} \in M_{q-t}\) 是酉矩阵的一个直和项,故而它是酉矩阵,于是对某个酉矩阵 \(\hat{V},\hat{W} \in M_{q-1}\) 有 \(\tilde{Z}=\hat{V}I_{q-t}\hat{W}\). 通过 \(I_{p+t} \oplus \hat{V}^*\) 在左边作出的酉等价以及通过 \(I_{p+t} \oplus \hat{W}^*\) 在右边作出的酉等价产生出分块矩阵
\begin{align}
\begin{bmatrix} \Gamma_1 & 0 & M_1 & 0 & 0 \\ 0 & I_{p-t} & 0 & 0_{p-t} & 0 \\ -M_1 & 0 & Z_{11} & 0& 0 \\ 0 & 0_{p-t} & 0 & I_{p-t} & 0 \\ 0 & 0& 0 & 0 & I_{q-p} \end{bmatrix}
\end{align}
最后通过 \(K_p \oplus K_p \oplus I_{q-p}\) 作出的酉相似产生出一个酉矩阵,它具有所要求的构造.

 

理解 CS 分解定理

CS 分解是与 \(I_p \oplus I_q\) 共形地加以分划且阶为 \(n=p+q\) (为方便起见,设 \(p \leqslant q\), 但这不是本质的要求)的所有酉矩阵 \(U= \begin{bmatrix} U_{11} & U_{12} \\ U_{21} & U_{22} \end{bmatrix} \in M_n\) 组成的集合的一种参数化的描述. 这些参数是四个更小的任意的酉矩阵 \(V_1,W_1 \in M_p\) 以及 \(V_2, W_2 \in M_q\),以及任意 \(p\) 个实数 \(\sigma_1,\cdots, \sigma_p\), \(1 \geqslant \sigma_1 \geqslant \cdots \geqslant \sigma_p \geqslant 0\). 这四个分块的参数化是
\begin{align}
U_{11} &= V_1 C W_1 , \quad &U_{12} &=V_1 \begin{bmatrix} S & 0 \end{bmatrix} W_2 \\
U_{21} &= V_2 \begin{bmatrix} -S \\ 0 \end{bmatrix} W_1 &U_{22} &= V_2 \begin{bmatrix} C & 0 \\ 0 & I_{q-p} \end{bmatrix} W_2
\end{align}
其中 \(C=\mathrm{diag}(\sigma_1, \cdots, \sigma_p)\), 而 \(S= \mathrm{diag} \left( (1-\sigma_1^2)^{1/2},\cdots, (1-\sigma_1^p)^{1/2} \right)\). CS 分解是一种用途广泛的工具,特别是在与子空间之间的距离以及角度有关的问题中.

 


应该知道什么

  • CS 分解是分划的酉矩阵在分划的酉等价之下的标准型

CS 分解的更多相关文章

  1. Asp.Net MVC<九>:OWIN,关于StartUp.cs

    https://msdn.microsoft.com/zh-cn/magazine/dn451439.aspx(Katana 项目入门) 一不小心写了个WEB服务器 快刀斩乱麻之 Katana OWI ...

  2. 分解成3NF的保持函数依赖的分解算法:

    转换成3NF的保持函数依赖的分解算法: ρ={R1<U1,F1>,R2<U2,F2>,...,Rk<Uk,Fk>}是关系模式R<U,F>的一个分解,U= ...

  3. 矩阵分解(rank decomposition)文章代码汇总

    矩阵分解(rank decomposition)文章代码汇总 矩阵分解(rank decomposition) 本文收集了现有矩阵分解的几乎所有算法和应用,原文链接:https://sites.goo ...

  4. Unity3D游戏开发从零单排(五) - 导入CS模型到Unity3D

    游戏动画基础 Animation组件 Animation组件是对于老的动画系统来说的. 老的动画形同相应的动画就是clip,每一个运动都是一段单独的动画,使用Play()或CrossFade(),直接 ...

  5. SVD分解技术详解

    版权声明: 本文由LeftNotEasy发布于http://leftnoteasy.cnblogs.com, 本文可以被全部的转载或者部分使用,但请注明出处,如果有问题,请联系wheeleast@gm ...

  6. ASP.NET Core 菜鸟之路:从Startup.cs说起

    1.前言 本文主要是以Visual Studio 2017 默认的 WebApi 模板作为基架,基于Asp .Net Core 1.0,本文面向的是初学者,如果你有 ASP.NET Core 相关实践 ...

  7. unity3D:游戏分解之曲线

    一提到曲线,很多新手就头疼了,包括我.查了很多资料,终于有个大概的了解.想深入了解曲线原理的,推荐一个链接http://www.cnblogs.com/jay-dong/archive/2012/09 ...

  8. 稀疏分解中的MP与OMP算法

    MP:matching pursuit匹配追踪 OMP:正交匹配追踪 主要介绍MP与OMP算法的思想与流程,解释为什么需要引入正交? !!今天发现一个重大问题,是在读了博主的正交匹配追踪(OMP)在稀 ...

  9. CS(计算机科学)知识体

    附 录 A                   CS( 计算机科学)知识体 计算教程 2001 报告的这篇附录定义了计算机科学本科教学计划中可能讲授的知识领域.该分类方案的依据及其历史.结构和应用的其 ...

随机推荐

  1. vue的踩坑路

    ------>axios模拟get json一直拿不到文件,先把data放到根目录,再去dev-server.js(就是npm执行的那个文件)里面设置静态资源访问路径app.use('/data ...

  2. 牛客 - 17968 - xor序列 - 线性基

    https://ac.nowcoder.com/acm/problem/17968 下面是错误的做法,因为题目要求必须使用x,而y在check的时候不一定用到等价于x的线性基来构成. 正确的做法是直接 ...

  3. 地理位置(navigation.geolocation)与本地存储(seessionStorage、localStorage)

    一.地理位置( geolocation ): navigator.geolocation对象: 1.单次请求: //navigator.geolocation.getCurrentPosition( ...

  4. mongodb 由于计算机死机造成的无法启动故障

    一次计算机死机,重启后,mongodb无法启动,log显示: exception in initAndListen: 12596 old lock file, terminating Sun Mar ...

  5. TyvjP1863 [Poetize I]黑魔法师之门(2014-8-27)

    P1863 [Poetize I]黑魔法师之门 时间: 1000ms / 空间: 131072KiB / Java类名: Main 背景 经过了16个工作日的紧张忙碌,未来的人类终于收集到了足够的能源 ...

  6. 洛谷P4869 albus就是要第一个出场(线性基)

    传送门 不知道线性基是什么东西的可以看看蒟蒻的总结 线性基居然有这性质我还不知道orz 假设$n$个数的线性基中有$k$个数,那么显然共有$2^k$个不同的异或和,而其中每一个异或和的出现次数都是$2 ...

  7. PJzhang:最基本的正则表达式实例

    猫宁!!! 参考链接: https://www.cnblogs.com/fozero/p/7868687.html http://tool.oschina.net/regex/# http://too ...

  8. 51Nod 1873 初中的算术

    大神的字符串快速幂 #include <iostream> #include <string> #include <algorithm> #include < ...

  9. hashlib 实现加密

    实现代码 import hashlib # hashlib是一个python用于给数据加密的包,内有很多加密方式,包括md5,sha1, sha224, sha256, sha384, sha512等 ...

  10. Zynq7000开发系列-4(新:Xilinx交叉编译环境搭建)

    一.前言  本来上一篇文章已经讲了Xilinx交叉编译环境的搭建,但是我在后续的使用中发现:使用2011年版本的交叉编译链编译OpenCV 3.1.0时出现错误: 网络搜索一番,查明是交叉编译链的问题 ...