浅谈压缩感知(十六):感知矩阵之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 ...
随机推荐
- C:\Windows\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\root\文件不断增长,如何处理?
很久没有写博了.最近半年除了忙活布置新家和过年期间走亲访友之外,都是在公司处理一些项目中的杂事:连家里买的很多书都停下来没看了,感觉这段时间在事业和学习上一直都是忙忙碌碌,却又碌碌无为. 吐槽完,说正 ...
- 一个例子来看C#泛型是如何登场的
有这样一个有关汽车的类. public class Car { public int ID { get; set; } public string Make { get; set; } } 现在,在客 ...
- C#把数组中的某个元素取出来放到第一个位置
如何取出数组中符合某种条件的元素,然后放在数组最前面,即索引为0的位置? 思路大致如下:→找到符合条件的数组元素,把之赋值给一个临时变量temp,并记下该数组元素的索引位置,假设是index→在源数组 ...
- RichEdit控件 SDK 参考手册
RichEdit控件 SDK 参考手册 摘要: 本文对Rich Edit控件底层消息机制进行了讲解,以期读者对Windows平台下的Rich Edit控件有一个更深入的认识,同时对于使用Win32 S ...
- 对json数据key进行替换
原文:https://blog.csdn.net/qq_39750658/article/details/83411897 import java.util.HashMap; import java. ...
- SpringBoot 中使用 @Value 为 static 变量赋值
原文:https://www.jianshu.com/p/ea477fc9abf7 例如: public class Utils { @Value("${test.host}") ...
- url提交参数类
url提交参数类 type /// <summary> /// 准备url /// </summary> TynUrl = class private FUrl, FComma ...
- Linux内核:分析coredump文件 - 内核代码崩溃
转自:http://blog.csdn.net/guowenyan001/article/details/12975221 一.分析Core文件 1.1 找到core文件目录,启动mycrash:my ...
- 修复android下webView控件的总结
游戏中有一个收集玩家问题反馈的网页,很早之前就有同事反映说android在游戏无法上传附件,在浏览器中是可以正常使用的.最近能腾出手来的时候,就仔细看了一下这个问题,发现很里藏着不少问题,这里一一记录 ...
- 用GridLayout实现计算器的布局
GridLayout是一个表格视图,我们一般定义它的列数和行数来设置好这个控件. 下面的布局文件先定义了一个TextView和一个Button,设置他们的属性为横跨4列.这样就可以独自占据一行了.然后 ...