浅谈压缩感知(十六):感知矩阵之RIP
在压缩感知中,总是看到"矩阵满足RIP"之类的字眼,没错,这是一个压缩感知绕不开的术语,有限等距性质(Restricted Isometry Property, RIP)。
注意:RIP性质针对的同样是感知矩阵而非测量矩阵。
0、相关概念与符号

1、RIP定义
中文版:

英文版:

概括:
(RIP)矩阵满足2K阶RIP保证了能够把任意一个K稀疏信号θK映射为唯一的y,也就是说要想通过压缩观测y恢复K稀疏信号θK,必须保证传感矩阵满足2K阶RIP,满足2K阶RIP的矩阵任意2K列线性无关。
边界解释:
上述定义中不等式边界关于1对称,其实这只是表示的方便而已,实际中可以考虑任意边界值。

2、RIP理解
理解1:能量说
向量的2范数的平方就是信号的能量,换成常见的公式:

RIP不等式:
这里的
实际上是
,即输出信号的能量,
即输入信号的能量(稀疏变换x=Ψθ为正交变换,而正交变换保持能量不变,即信号理论中的Parseval定理)。
解释1:

解释2:
RIP其实可以看成刻画一个矩阵和标准正交阵的相似程度。其对于向量做变换后的 L2 能量(范数平方)相较于原向量的能量的变化不超过RIP。RIP对于Stability 的分析非常有效。RIP 是由Candes 和Tao 提出来的,可以看他们的提出这个概念的文章: Decoding by LinearProgramming。
其实取极限当δ=0时(RIP要求0<δ<1),RIP的不等式实际上表示的是观测所得向量y的能量等于信号x的能量,在线性代数中所讲的正交变换也具有这种性质,也称为等距变换(把信号将为二维或三维时2范数的平方可形象的理解为到原点的距离),当然这里的变换因为传感矩阵A不可能是正交矩阵(不是方阵),但当极限δ=0时也能保持能量相等(也可以称为等距吧),而RIP要求0<δ<1,所以不可能等距,所以就称为有限等距性质吧。
理解2:唯一映射说
在前一篇介绍spark常数的时候,已经提到了唯一映射说这一点,可以了解一下:http://www.cnblogs.com/AndyJee/p/5083726.html
RIP性质(有限等距性质)保证了感知矩阵不会把两个不同的K稀疏信号映射到同一个集合中(保证原空间到稀疏空间的一一映射关系),要求从感知矩阵中抽取的每2K个列向量构成的矩阵是非奇异的。

当δ2s<1时可以保证零范数问题有唯一的稀疏解,而当δ2s<sqrt(2)-1时则可以保证零范数和1范数等价(零范数求解为NP-hard问题,在此前提下将其转化为1范数求最优化问题,这时是个凸优化问题)
3、RIP补充
上面我们谈到的都是感知矩阵
,而实际中我们常常使用的是测量矩阵
,那么怎么样才能让测量矩阵满足RIP要求呢?
前面解释中的能量说提到"RIP其实可以看成刻画一个矩阵和标准正交阵的相似程度",如
。
那么对于测量矩阵而言,需要满足的性质就是尽量保证其基向量与稀疏表示的基不相关,这个对于RIP来说比较通俗的理解,在实际中,有些矩阵如高斯随机矩阵、二值随机矩阵、局部傅里叶矩阵、局部哈达玛矩阵等都能够以很大的概率满足RIP。

关于矩阵中任意2K列都不相关的解释:
如果矩阵有2K列线性相关,则对于某一个2K稀疏的信号必然会有Aθ2K=0,又因为一个2K稀疏的信号可以写成两个K稀疏的信号相减(把2K稀疏信号的2K个非零项分成两部分,每部分分别包含K个非零项,其余部分填零长度与原2K稀疏信号保持不变,即得到了两个K稀疏信号,其中的一个K稀疏信号中的K个非零项乘负一,另一部分减这一部分必然等于2K稀疏信号),因此有A(θK1-θK2)=0,即AθK1=AθK2,也就是说对于两个不同的K稀疏信号θK1和θK2,压缩观测后得到了同一个y,即不能保证唯一映射,所以矩阵不能有2K列线性相关,否则将不能保证唯一映射。
4、参考文章
http://blog.csdn.net/jbb0523/article/details/44565647
浅谈压缩感知(十六):感知矩阵之RIP的更多相关文章
- Qt浅谈之二十六图片滑动效果
一.简介 博客中发现有作者写的仿360的代码,觉得其中图片滑动的效果很有意思,特提取其中的代码.并加上类似mac的画面移动的动画效果. 二.详解 1.代码一:界面滑动(QWidget) (1)slid ...
- 浅谈压缩感知(二十四):压缩感知重构算法之子空间追踪(SP)
主要内容: SP的算法流程 SP的MATLAB实现 一维信号的实验与结果 测量数M与重构成功概率关系的实验与结果 SP与CoSaMP的性能比较 一.SP的算法流程 压缩采样匹配追踪(CoSaMP)与子 ...
- 浅谈压缩感知(二十):OMP与压缩感知
主要内容: OMP在稀疏分解与压缩感知中的异同 压缩感知通过OMP重构信号的唯一性 一.OMP在稀疏分解与压缩感知中的异同 .稀疏分解要解决的问题是在冗余字典(超完备字典)A中选出k列,用这k列的线性 ...
- 浅谈压缩感知(二十一):压缩感知重构算法之正交匹配追踪(OMP)
主要内容: OMP的算法流程 OMP的MATLAB实现 一维信号的实验与结果 测量数M与重构成功概率关系的实验与结果 稀疏度K与重构成功概率关系的实验与结果 一.OMP的算法流程 二.OMP的MATL ...
- 【原创】浅谈指针(十二)关于static(上)
0.前言 这个系列基本上是一月一更到两月一更 今天写一篇关于static的,内含大量干货,做好准备 1.基础知识的回顾 1.1.内存的种类 一般来说,我们之前已经讲过的变量(或者说是内存)可以大体分为 ...
- 浅谈压缩感知(二十六):压缩感知重构算法之分段弱正交匹配追踪(SWOMP)
主要内容: SWOMP的算法流程 SWOMP的MATLAB实现 一维信号的实验与结果 门限参数a.测量数M与重构成功概率关系的实验与结果 SWOMP与StOMP性能比较 一.SWOMP的算法流程 分段 ...
- 浅谈压缩感知(十五):感知矩阵之spark常数
在压缩感知中,有一些用来评价感知矩阵(非测量矩阵)的指标,如常见的RIP等,除了RIP之外,spark常数也能够用来衡量能否成为合适的感知矩阵. 0.相关概念与符号 1.零空间条件NULL Space ...
- 浅谈压缩感知(十四):傅里叶矩阵与小波变换矩阵的MATLAB实现
主要内容: 傅里叶矩阵及其MATLAB实现 小波变换矩阵及其MATLAB实现 傅里叶矩阵及其MATLAB实现 傅里叶矩阵的定义:(来源: http://mathworld.wolfram.com/F ...
- 浅谈压缩感知(二十八):压缩感知重构算法之广义正交匹配追踪(gOMP)
主要内容: gOMP的算法流程 gOMP的MATLAB实现 一维信号的实验与结果 稀疏度K与重构成功概率关系的实验与结果 一.gOMP的算法流程 广义正交匹配追踪(Generalized OMP, g ...
随机推荐
- Snmp学习总结(四)——WinServer2003安装和配置SNMP
一.安装SNMP 今天讲解一下在WinServer2003安装和配置SNMP,具体操作步骤如下: 找到[控制面板]→[添加或删除程序]
- C++学习笔记23,类内函数重载
该博文仅用于交流学习.请慎用于不论什么商业用途,本博主保留对该博文的一切权利. 博主博客:http://blog.csdn.net/qq844352155 转载请注明出处: 在一个类内,最常见的就是构 ...
- Java---16---多线程---死锁
死锁: 概念: 所谓死锁: 是指两个或两个以上的进程在执行过程中,因争夺资源而造成的一种互相等待的现象,若无外力作用.它们都将无法推进下去.此时称系统处于死锁状态或系统产生了死锁,这些永远在互相等待的 ...
- C#编程(十九)----------部分类
部分类 C#中使用关键字partial把类,结构或结构放在多个文件中.一般情况下,一个类全部驻留在单个文件中.但有时候,多个开发人员需要访问同一个类,或者某种类型的代码生成器生成了一个类的某部分,所以 ...
- Java 下载文件
public @ResponseBody void exportExcel(HttpServletRequest request, HttpServletResponse response, Khxx ...
- Caused by: redis.clients.jedis.exceptions.JedisConnectionException: java.net.SocketTimeoutException: connect timed out
问题: java连接不上redis. 异常信息: Caused by: redis.clients.jedis.exceptions.JedisConnectionException: java.ne ...
- Tomcat 报 The valid characters are defined in RFC 7230 and RFC 3986
问题 24-Mar-2017 23:43:21.300 INFO [http-apr-8001-exec-77] org.apache.coyote.http11.AbstractHttp11Proc ...
- 在websocket中怎么样注入service类
最近项目中用到了websocket,遇到很多问题,其中一个是@ServerEndpoint修饰的类无法注入其他的bean,注入的对象都是null,在网上找了好多资料,无意中发现一个朋友的答案给了思路. ...
- c# action<> func<> 这2个委托怎么用和理解
其实很好理解的呢!~首先你需要明白,他们是委托的简写形式. 一.[action<>]指定那些只有输入参数,没有返回值的委托 1.1定义一个委托: 比如,我们原来写委托: public de ...
- js混淆代码还原-js反混淆:利用js进行赋值实现
js混淆代码还原-js反混淆:利用js进行赋值实现 [不想用工具的直接看方法二] 本文地址:http://www.cnblogs.com/vnii/archive/2011/12/14/22875 ...