压缩感知中的数学知识:投影矩阵(projection matrix)

压缩感知中的数学知识:投影矩阵(projection matrix)题目:压缩感知中的数学知识:投影矩阵(projectionmatrix)========================背景========================

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

题目:压缩感知中的数学知识:投影矩阵(projection matrix)

========================背景========================

关注于投影矩阵主要是看以下两个文献注意到的:

【1】杨海蓉,张成,丁大为,韦穗. 压缩传感理论与重构算法[J]. 电子学报,2011,39(1):142-148.

【2】Rachel Zhang. “压缩感知”之“Helloworld”[EB/OL] .http://blog.csdn.net/abcjennifer/article/details/7775284 .

文献1写的还是很不错的,综述了很多压缩感知重构算法,且都是以表格的形式给出,总结的很好,以后写论文也要向这个方向挺近,但是这篇论文需要有一定基础的人才能才明白,因为我感觉总是突然冒出一个符号来(比如第1步的Λ0代表什么没说,Λ0等于的那个符号后来才知道是空矩阵的意思,当然这并不影响这篇论文的价值,推荐!),当然这可能是由于我的数学功底太差。下面是OMP重构算法:

压缩感知中的数学知识:投影矩阵(projection matrix)

要完全看懂文献1需要反复去读,要随着对压缩感知的理解越来越深反复去看,慢慢地才能消化的,看论文时也没懂什么,只是感觉写的不错,后来看文献2时发现代码里的重构算法是OMP,为了读懂代码于是又回来看文献1,前面三步都能明白,但第四步无论如何也理解不了:“张成空间”?正交投影?呃,实在是不懂……

当然文献2我从另一个角度弄明白了,就是广义逆,这个在前面的已发过博客了,有兴趣可以看Rachel_Zhang的“压缩感知”之“HelloWorld”解读

但这里的张成空间和正交投影是什么呢?为此我开始翻书,最后锁定查看矩阵分析类的书,先期是看书是:

(美)合恩(Horn,R.A.) 等著,杨奇 译.矩阵分析[M]. 机械工业出版社,2005.

这本书的第2页就说了张成空间的概念,但没看懂,而且后面想要看广义逆时发现居然没讲,一气之下就换了本书,这次的书是:

史荣昌,魏丰 编著.矩阵分析(第3版)[M]. 北京理工大学出版社,2010.

这本书写的自认为比较经典,现在仍然在拜读当中……

从史荣昌的矩阵分析里面我知道了张成空间又称为生成子空间,这在书的第13页1.3节线性子空间中讲到,似乎这的确是一个很简单的概念,一笔带过:

压缩感知中的数学知识:投影矩阵(projection matrix)

现在我的理解是:所谓生成子空间实际上就是由向量α1,α2,。。。,αs这些向量确定的平面(如果是两个向量的话就是一个普通的平面,如果是三个向量就是一个立体空间吧),当然这组向量很多时候并不是标准正交基,因此有很多时候并不能用它们的线性组成去表示任一个与它们同维的向量,所以才有今天要说的投影矩阵。

正交投影的概念本身其实并不复杂,在史荣昌的矩阵分析第3版中,第106页起的3.4节幂等矩阵、正交投影中就系统地讲解了正交投影的概念。但我看了N多遍也没理解到底是什么意思,其实是不理解正交投影和文献1中OMP重建算法第4步中说的正交投影有什么关系?因为按照文献2中的代码去理解,文献1中所谓的张成空间的正交投影该为:

压缩感知中的数学知识:投影矩阵(projection matrix)

在网上搜索正交投影,投到最接近的答案是百度知道里的一篇内容:什么是投影矩阵,这个对我的启发很重要,转载如下:

【问】什么是投影矩阵

关于投影矩阵,正交投影 及 超定线性方程组的 关系。谢谢了

【答】多给一点分吧!敲了半个小时,不过也整理了一下

压缩感知中的数学知识:投影矩阵(projection matrix)

看了之后其实本人也没看懂,可能主要是自己的数学不好,线性代数和矩阵理论都快忘光了。反正文献2的代码也看明白了,后来就想放弃所谓的“正交投影”这一知识点。

直到昨天看一篇论文时:(Joel A. Tropp,etc. RANDOM FILTERS FOR COMPRESSIVE SAMPLING AND RECONSTRUCTION[A]. Proc ICCASSP 2006[C]. Toulouse,France,2006.)

压缩感知中的数学知识:投影矩阵(projection matrix)

这里在步骤B时又出现了Pt,这里称之为 the orthogonal projector onto the span of the t columns,对于里面的orthogonal projector我在有道里查了一下解释为正交投影,但在有道的网络释义一项里解释为“正交射影算子”,这开始让我怀疑Pt的名字究竟应该是什么,于是又看了前面百度知道的内容,认识到问题是“什么是投影矩阵”,于是我开始在网上搜索“投影矩阵”,在百度知道里搜到了怎么计算投影矩阵呀?,如下:

压缩感知中的数学知识:投影矩阵(projection matrix)

这里的P就是我们要的结果一致了:P=A*(A^TA)^{-1}A^T,因此在文献1里提到的正交投影实际上应该是投影矩阵(正交投影和投影矩阵应该不是一个概念吧,至少我个人认为不是一个东东),绕了一大圈终于开始走向正轨了……

在搜索投影矩阵时搜到了一篇博客:投影矩阵与最小二乘(一),作者一共写了三篇,写的很不错,从作者第一篇中开头提到“Strang教授”,搜索一下此人可以搜到麻省理工的开放课程线性代数,在暴风影音里可以搜到,这个公开课共35讲,其中第16讲是投影矩阵和最小二乘,估计投影矩阵与最小二乘(一)就是基于这一讲内容的吧,今天我也看过了,讲得挺不错的,计划后续将35讲都看一下,学习压缩感知,线性代数的基础是必备的,35讲在国内也就是个2学分的课而已,坚持一下就可以了。

下面开始讲什么是投影矩阵,主要基于投影矩阵与最小二乘(一)和公开课16讲,所以思路和投影矩阵与最小二乘(一)也差不多了。

========================正文========================

公开课第16讲中提到,如果有三个点(1,1),(2,2),(3,2),希望有一条线y=C+Dt来逼近这些点,由这三个点实际上可以得到三个方程:

C+D*1=1

C+D*2=2

C+D*3=2

这个方程可以写成矩阵的形式:

压缩感知中的数学知识:投影矩阵(projection matrix)

这个方程组由于矩阵A的秩R(A)=2(秩等于列的个数,即矩阵A的列是线性无关的),小于增广矩阵的秩R(A,b)=3,因此方程组无解,即不存在一条直线穿过这三个点(1,1),(2,2),(3,2)。

所以我们就用最小二乘法拟合一条直线使这三个点到直线的距离的平方和最小。怎么求拟合曲线的C和D呢?

压缩感知中的数学知识:投影矩阵(projection matrix)

这个过程是从数学上来推导的,从几何意义上如何来理解这个问题呢?

首先对于矩阵A来讲共有两个列向量,A=[a1,a2],两个向量会确定一个平面(个人理解就此平面就是由A的列向量生成的子空间),而对于b来说也是一个向量,求C和D的过程实际上就是用向量a1和a2的线性组合来表示向量b的过程,即:

压缩感知中的数学知识:投影矩阵(projection matrix)

但实际上,向量b并不在向量a1和a2确定的平面上,即不能用向量a1和a2的线性组合来表示向量b,这时可以用向量a1和a2表示一个向量p,使向量p最接近于向量b,或者说使||b-p||2最小,即前面说的用最小二乘法拟合一条直线使这三个点到直线的距离的平方和最小。从几何上我们知道这个向量p就是向量b在由a1和a2所确定的平面上的正交投影。如何由向量b得到向量p呢?即如何得到向量b的正交投影p呢?我们可以通过一个矩阵变换来实现:

压缩感知中的数学知识:投影矩阵(projection matrix)

因此,正交投影和投影矩阵是不一样子的,正交投影p是向量b在平面(由矩阵A的列向量a1和a2确定)上正交投影,而投影矩阵是从向量b变换到其正交投影p过程中的变换矩阵P:

压缩感知中的数学知识:投影矩阵(projection matrix)

这里可以用一幅空间里的图来表示:

压缩感知中的数学知识:投影矩阵(projection matrix)

========================结语========================

至此,投影矩阵说完了,有新的感悟再继续写吧……

===================补充(2014.11.26)=================

百度了一下“压缩感知  投影矩阵”,发现会搜到好多论文,突然意识到他们论文里提到的“投影矩矩”不是我这里在数学上所说的“投影矩阵”:

y=Φx,其中x为信号,y为观测值,Φ即为他们所说的投影矩阵,一般还称为观测矩阵

x=Ψθ,其中Ψ为稀疏矩阵或稀疏基

从这个问题里也反应了叫法不一样的不利之处。

我们这里经过投影矩阵P的变换,由向量b得到向量p,由于p是b的正交投影,所以这个矩阵P应该称为正交投影矩阵吧,感觉再写长一点更好:正交投影变换矩阵,这样就混淆不了概念了。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/185786.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • SM2 (含SM3、SM4)国密算法工具QT版,彻底搞懂sm2算法的使用

    SM2 (含SM3、SM4)国密算法工具QT版,彻底搞懂sm2算法的使用网上有很多网友问算法sm2怎么使用?什么是压缩公钥和非压缩公钥,长度有多长?xB和yB这参数是什么?怎么使用sm2做加解密?如何签名和验签?有没有工具来验证下?这里分享个自己使用QT造的一个小工具,用来对sm2算法做个加解密和签名,验签的验证。p,a,b,Gx,Gy,n为椭圆曲线参数,目前sm2使用的是以下的值的参数,以后会不会变不知道。这些参数当然也可以改,作为测试或者打造自己的一套加解密算法。使用素数域256位椭圆曲线曲线方程:y^2=x^3+ax+b曲线.

  • R语言作图:坐标轴设置

      要绘制一张赏心悦目的统计图表,坐标轴的设置至关重要。在R语言底层作图中,对坐标轴的调整主要通过调整plot函数、axis函数和title函数的一系列参数完成。plot(x,y,…)axis(side,at=NULL,labels=TRUE,tick=TRUE,line=NA,pos=NA,outer=FALSE,font=NA,…

  • vimrc配置_vim环境配置

    vimrc配置_vim环境配置博文背景写代码没vim难受,装个vim它对于快捷键的设置并不能和visualstudio一样很方便地设置将所有快捷键映射到vim插件,所以记录配置后的文件非常有必要。具体操作切换vim插件状态的快捷键设置:文件路径:C:\Users\Administrator\AppData\Roaming\JetBrains\WebStormXXX\options\vim_settings.xml文件内容:<application><componentname=”VimEdito

  • 静态vlan的配置方式_实例方法与静态方法的区别

    静态vlan的配置方式_实例方法与静态方法的区别文章目录1VLAN的概念及优势2VLAN的种类2.1VLAN的范围2.2静态VLAN和动态VLAN3静态VLAN的配置4Trunk介绍与配置5实例1VLAN的概念及优势物理分隔。将网络从物理上划分为若干个小网络,然后使用能隔离广播的路由设备将不同的网络连接起来实现通信。逻辑分隔。将网络从逻辑上划分为若干个小的虚拟网络,即VLAN(VirtualLocalAreaNetwork,虚拟局域网)。VLAN工作在OSI参考模型的数据链路层,一个VLAN就是一个交换网络,其中的所有用户都

  • pycharm全局搜索ctrl+shift+f(win10快捷键冲突)

    pycharm全局搜索ctrl+shift+f(win10快捷键冲突)pycharm全局搜索ctrl+shift+f按了后没有任何效果,是因为跟win10的输入法冲突,只需要设置中添加ctrl+shift+g

  • win10企业版永久激活方法「建议收藏」

    win10企业版永久激活方法「建议收藏」win10企业版永久激活方法?win10企业版是针对企业用户推出的版本,随着win10系统的不断完善,现在越来越多的人选择升级win10,升级完系统就需要激活它。那么今天就为大家分享一下怎么永久激活w

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号