UA MATH567 高维统计专题1 稀疏信号及其恢复1 L0-norm minimization
UA MATH567 高维统计专题1 稀疏信号及其恢复1 L0-norm minimization
- L0L^0L0-norm
- L0L_0L0-norm minimization
- Exhaustive Search
- L0L_0L0-norm minimization的性质
- L0L_0L0-norm minimization是NP-hard问题
这个专题我们讨论sparse signal recovery,作为这个专题的开头,我们先简单介绍一下sparse vector的norm;熟悉DSP的同学应该比较清楚,用vector和matrix来表示signal是非常常规的操作,那么sparse signal用sparse vector来表示就非常合理,之所以要从sparse vector的norm开始讨论是因为我们需要去理解一个很长的sparse vector的结构,并以此设计一些更高效的算法。
下图摘自Wright, Ma的高维数据分析图2.6
LpL^pLp-norm是我们高维数据中最常用的范数,
∥x∥p=(∑i=1n∣xi∣p)1/p\left\| x \right\|_p = \left( \sum_{i=1}^n |x_i|^p \right)^{1/p}∥x∥p=(i=1∑n∣xi∣p)1/p
如果p≥1p \ge 1p≥1,则上面的定义是范数;如果0<p<10<p<10<p<1,则上式不满足范数公理化定义中的三角不等式,无法成为范数,如果需要三角不等式,则可以用下面这个定义
∑i=1n∣xi∣p\sum_{i=1}^n |x_i|^pi=1∑n∣xi∣p
但这个定义不满足正齐次性。从上图可以看出,当ppp减小时,LpL^pLp-ball中的vector被shrink得越厉害,对应在sparse signal的设定中,noise就会被shrink掉,而signal得以保留。因此我们总是希望被复原的signal的范数(ppp越小的范数越好)不大于某一个阈值。
L0L^0L0-norm
最小可能的ppp为0,按上面的分析L0L^0L0-norm就是最好用的,直观理解L0L^0L0-norm就是向量中不为0的元素个数
∥x∥0=#{i:xi≠0}\left\| x\right\|_0=\#\{i:x_i \ne 0\}∥x∥0=#{i:xi=0}
但是虽然叫L0L^0L0-norm,但它本身并不是一个范数,因为它不满足正齐次性:
∀c∈R,∥cx∥0=∥x∥0≠c∥x∥0\forall c \in \mathbb{R},\left\| c x \right\|_0 =\left\| x\right\|_0 \ne c\left\| x\right\|_0 ∀c∈R,∥cx∥0=∥x∥0=c∥x∥0
所以尽管它满足三角不等式,它也不是一个范数。
之所以我们称之为范数,并把它归为LpL^pLp-norm这一类,是因为
limp→0∥x∥pp=limp→0∑i=1n∣xi∣p=∑i=1nlimp→0∣xi∣p=∑i=1n1xi≠0=∥x∥0\lim_{p \to 0}\left\| x \right\|_{p}^p =\lim_{p \to 0} \sum_{i=1}^n |x_i|^p= \sum_{i=1}^n\lim_{p \to 0}|x_i|^p=\sum_{i=1}^n 1_{x_i \ne 0}=\left\| x\right\|_0p→0lim∥x∥pp=p→0limi=1∑n∣xi∣p=i=1∑np→0lim∣xi∣p=i=1∑n1xi=0=∥x∥0
L0L_0L0-norm minimization
我们先不考虑随机性,假设yyy是我们对稀疏信号的测量,y=Axoy=Ax_oy=Axo;讨论最简单的问题,即测量方程中的系数AAA已知,我们的目标是从测量中还原出信号xox_oxo,一种可行的操作是在y=Axy=Axy=Ax的解集中找到最稀疏的向量,以此作为sparse signal的估计,用优化表示,我们要求解的问题是:
min∥x∥0s.t.y=Ax\min \ \ \left\| x\right\|_0 \\ s.t. \ \ y = Axmin ∥x∥0s.t. y=Ax
Exhaustive Search
引入xxx的支撑集supp(x)={i:xi≠0}⊂{1,⋯,n}supp(x)=\{i:x_i \ne 0\} \subset \{1,\cdots,n\}supp(x)={i:xi=0}⊂{1,⋯,n},则L0L_0L0-norm minimization的目标是找到y=Axy=Axy=Ax的解集中支撑集最小的解;比较粗放的想法是考虑{1,⋯,n}\{1,\cdots,n\}{1,⋯,n}的所有子集,记为III,对每一个子集III,我们求解
AIxI=yA_Ix_I = yAIxI=y
这里的AIA_IAI表示在AAA中把III对应的那几列选出来形成的子矩阵,把xIx_IxI解出来后填入III的对应位置,其他位置填0,这样形成一个可行解,把所有的这些可行解比较得到的支撑集最小的那个就是L0L_0L0-norm minimization的解:
L0L_0L0-norm minimization的性质
上面的Exhaustive Search有一个非常有趣的理论性质:当∥xo∥0\left\| x_o \right\|_0∥xo∥0不太大时,Exhaustive Search的解一定是xox_oxo。更严谨的叙述需要引入Kruskal rank:记krank(A)krank(A)krank(A)为矩阵AAA的Kruskal rank,任意krank(A)krank(A)krank(A)个AAA的列向量线性无关,但存在krank(A)+1krank(A)+1krank(A)+1个AAA的列向量线性无关。
定理(L0L^0L0 Recovery) 假设y=Axoy=Ax_oy=Axo,并且∥xo∥0≤12krank(A)\left\| x_o \right\|_0 \le \frac{1}{2}krank(A)∥xo∥0≤21krank(A),则xox_oxo是L0L_0L0-norm minimization的唯一解。
评述 这个定理说明当xox_oxo足够sparse的时候(∥xo∥0≤12krank(A)\left\| x_o \right\|_0 \le \frac{1}{2}krank(A)∥xo∥0≤21krank(A)),L0L_0L0-norm minimization可以把xox_oxo准确还原出来。
L0L_0L0-norm minimization失效的情况:不妨假设x^\hat xx^是L0L_0L0-norm minimization的解,如果∃xo∈null(A),∥xo∥0=k\exists x_o \in null(A),\left\| x_o \right\|_0=k∃xo∈null(A),∥xo∥0=k,此时y=Axo=0y=Ax_o=0y=Axo=0,求解L0L_0L0-norm minimization得到的结果一定是x^=0\hat x=0x^=0,这个推理说明AAA的核空间存在非零的稀疏矩阵时,L0L_0L0-norm minimization失效。
避免L0L_0L0-norm minimization失效引入假设:
{δ∈null(A):∥δ∥0≤2k}={0}\{\delta \in null(A):\left\| \delta\right\|_0 \le 2k\}=\{0\}{δ∈null(A):∥δ∥0≤2k}={0}
其中k≥∥xo∥0k \ge \left\| x_o \right\|_0k≥∥xo∥0;简单解释一下这个假设取2k2k2k的原因,因为x^\hat xx^是L0L_0L0-norm minimization的解,所以∥x^∥0≤∥xo∥0≤k\left\| \hat x \right\|_0 \le \left\|x_o \right\|_0 \le k∥x^∥0≤∥xo∥0≤k,用δ\deltaδ表示L0L_0L0-norm minimization的估计误差,即δ=x^−xo\delta=\hat x-x_oδ=x^−xo,用三角不等式
∥δ∥0=∥x^−xo∥0≤∥x^∥0+∥xo∥0≤2k\left\| \delta \right\|_0=\left\| \hat x-x_o \right\|_0 \le \left\| \hat x\right\|_0+\left\|x_o \right\|_0 \le 2k∥δ∥0=∥x^−xo∥0≤∥x^∥0+∥xo∥0≤2k
另外Aδ=A(x−xo)=y−y=0A\delta=A(x-x_o)=y-y=0Aδ=A(x−xo)=y−y=0,所以δ∈null(A)\delta \in null(A)δ∈null(A);了解到这些之后我们可以发现,如果上面的假设成立,那么x^=xo\hat x=x_ox^=xo。
假设与矩阵AAA的联系:上面的假设主要约束的是AAA的核空间,那些核空间没有sparse vector的AAA才是好的AAA,才能得到准确的signal recovery;这个假设可以用AAA的列向量重新叙述,{δ∈null(A):∥δ∥0≤2k}={0}\{\delta \in null(A):\left\| \delta\right\|_0 \le 2k\}=\{0\}{δ∈null(A):∥δ∥0≤2k}={0}成立的条件是AAA的任意2k2k2k个列向量线性无关,用Kruskal rank表示就是
krank(A)≥2k≥2∥xo∥0krank(A) \ge 2k \ge 2 \left\| x_o \right\|_0krank(A)≥2k≥2∥xo∥0
这就是定理的结果。
L0L_0L0-norm minimization是NP-hard问题
用PPP表示多项式时间内可以求解的问题,NPNPNP表示多项式时间内可以验证某个解是否正确的问题;NP可以在多项式时间内化归成NP-complete问题,一个很重要的猜想是P=NPP=NPP=NP(右图);NP-hard不一定能在多项式时间内被验证,是至少与NP-complete一样困难的问题。
定理 L0L^0L0-norm minimization是NP-hard问题。
评述
说明某一个问题是NP-hard问题只需要找到一个已知的NP-hard问题,然后说明这个问题与已知的NP-hard问题等价即可。
Exact 3-set Cover (E3C):S={1,⋯,m}S = \{1,\cdots,m\}S={1,⋯,m},C={U1,⋯,Un}\mathcal{C}=\{U_1,\cdots,U_n\}C={U1,⋯,Un},Uj⊂SU_j \subset SUj⊂S,∣Uj∣=3|U_j|=3∣Uj∣=3,是否存在C′⊂C\mathcal{C'} \subset \mathcal{C}C′⊂C,使得C′\mathcal{C'}C′覆盖SSS,也就是∀i∈S,∃!U∈C′,i∈U\forall i \in S,\exists ! U \in \mathcal{C}',i \in U∀i∈S,∃!U∈C′,i∈U。
E3C是一个公认的NP-hard的问题,我们可以证明L0L^0L0-norm minimization与E3C等价。
证明
假设矩阵A∈{0,1}m×nA \in \{0,1\}^{m \times n}A∈{0,1}m×n,使得Aij=1i∈UjA_{ij}=1_{i \in U_j}Aij=1i∈Uj,取y=1y=1y=1,则Ax=yAx=yAx=y有稀疏解xox_oxo, ∥xo∥0≤m/3\left\| x_o \right\|_0 \le m/3∥xo∥0≤m/3的充要条件是存在Exact 3-set Cover;
⇐\Leftarrow⇐: 假设存在Exact 3-set Cover C′\mathcal{C}'C′,显然∣C′∣=m/3|\mathcal{C}'|=m/3∣C′∣=m/3,定义x=(x1,⋯,n)′,xj=1Uj∈C′x=(x_1,\cdots,n)',x_j=1_{U_j \in \mathcal{C}'}x=(x1,⋯,n)′,xj=1Uj∈C′,则y=Axy=Axy=Ax并且∥x∥0≤m/3\left\| x \right\|_0 \le m/3∥x∥0≤m/3;
⇒\Rightarrow⇒: 假设y=Axo,∥xo∥0≤m/3y=Ax_o,\left\| x_o \right\|_0 \le m/3y=Axo,∥xo∥0≤m/3,定义C′={Uj:xo(j)≠0}\mathcal{C}'=\{U_j:x_o(j) \ne 0\}C′={Uj:xo(j)=0},则C′\mathcal{C'}C′是Exact 3-set Cover。因为∥xo∥0≤m/3\left\| x_o \right\|_0 \le m/3∥xo∥0≤m/3,所以AAA的列向量有333个非零元素,定义I=supp(xo)I=supp(x_o)I=supp(xo),AIA_IAI至多有m/3m/3m/3列,并且至多有mmm个非零元素;又因为AIxoI=yA_Ix_{oI}=yAIxoI=y,所以AIA_IAI的每一行至少有一个非零元。综上,AIA_IAI每一行恰好有一个非零元,所以C′\mathcal{C'}C′是Exact 3-set Cover。
UA MATH567 高维统计专题1 稀疏信号及其恢复1 L0-norm minimization相关推荐
- UA MATH567 高维统计专题1 稀疏信号及其恢复7 LASSO的预测误差与变量选择一致性
UA MATH567 高维统计专题1 稀疏信号及其恢复7 LASSO的预测误差与变量选择一致性 Prediction Error Variable Selection Consistency Pred ...
- UA MATH567 高维统计专题1 稀疏信号及其恢复6 随机设计矩阵下LASSO的估计误差
UA MATH567 高维统计专题1 稀疏信号及其恢复6 随机设计矩阵下LASSO的估计误差 上一讲我们推导了noisy setting下LASSO估计误差的阶O(slogd/n)O(\sqrt{s ...
- UA MATH567 高维统计专题1 稀疏信号及其恢复5 LASSO的估计误差
UA MATH567 高维统计专题1 稀疏信号及其恢复5 LASSO的估计误差 Signal Recovery Noisy Setting LASSO的估计误差 Signal Recovery Noi ...
- UA MATH567 高维统计专题1 稀疏信号及其恢复4 Basis Pursuit的算法 Projected Gradient Descent
UA MATH567 高维统计专题1 稀疏信号及其恢复4 Basis Pursuit的算法 Projected Gradient Descent 前三讲完成了对sparse signal recove ...
- UA MATH567 高维统计专题1 稀疏信号及其恢复3 Coherence与RIP简介
UA MATH567 高维统计专题1 稀疏信号及其恢复3 Coherence与RIP简介 Pairwise inc oherence Mutual Coherence RIP 前两讲介绍了L0-min ...
- UA MATH567 高维统计专题1 稀疏信号及其恢复2 用L1-norm作为L0-norm的convex relexation
UA MATH567 高维统计专题1 稀疏信号及其恢复2 用L1-norm作为L0-norm的convex relexation L1L_1L1-norm minimization L1L_1L1 ...
- UA MATH567 高维统计 专题0 为什么需要高维统计理论?——理解稀疏向量与hard-threshold
UA MATH567 高维统计 专题0 为什么需要高维统计理论?--理解稀疏向量与hard-threshold 稀疏向量的soft-threshold与hard-threshold近似 引入hard- ...
- UA MATH567 高维统计 专题0 为什么需要高维统计理论?——高维统计理论的常用假设
UA MATH567 高维统计 专题0 为什么需要高维统计理论?--高维统计理论的常用假设 延续前三讲对线性判别分析的讨论,在高维时,根据中心极限定理 n(Xˉ−μ)→dN(0,Id)\sqrt{n} ...
- UA MATH567 高维统计专题3 含L1-norm的凸优化6 Stochastic Gradient Descent简介
UA MATH567 高维统计专题3 含L1-norm的凸优化6 Stochastic Gradient Descent简介 Stochastic Gradient Descent的思想 Varian ...
最新文章
- mysql定制rpm包_mysql运维管理-企业rpm包的定制
- mysql bin的过期时间_Mysql设置binlog过期时间并自动删除
- 【蓝桥杯】算法提高 7-2求arccos值
- leetcode-21-合并两个有序链表
- Celery 之异步任务、定时任务、周期任务
- 在使用代理的服务器上“curl: (6) Could not resolve host:“问题的解决方案
- numpy reshape
- python左闭右开_漫话:为什么程序员喜欢使用0 ≤ i 10这种左闭右开的形式写for循环?...
- JS 事件冒泡整理 浏览器的事件流
- jquery中使用ajax的php实例
- sap 双计量单位_SAP系统里批次双计量单位的实现
- 如何关闭iPhone浏览器自动将数字识别为电话号码
- jsp简介及工作原理
- MT6129射频处理器,MT6129芯片原理资料介绍
- 百度推广建立推广计划和推广单元技巧
- 计算机专业买什么商务本好,单位购买什么笔记本的比较多?各位能不能说来听听?华硕笔记本电脑哪个系列性价好,商务办公用?...
- (转)ISV英文全称是Independent Software Vendors ,意为“独立软件开发商”
- 维基百科中文创始人_维基百科的创始人正在建立一个社区运营的新闻网站
- nvm安装node成功,npm安装失败问题
- oZone3D FurMark(甜甜圈furmark显卡压力测试软件)绿色单文件版V1.9.2 | 电脑烤机测试软件
热门文章
- Java运行时动态加载类之ClassLoader方法带参数
- Python--高阶学习笔记
- 计算机组成原理1--原码、反码、补码、移码之间的关系
- Java 技术篇 - ServerSocket接收http的url请求中包含中文的处理方法,URLDecode与URLEncode,url解码与编码
- Python 爬虫篇-爬取web页面所有可用的链接实战演示,展示网页里所有可跳转的链接地址
- Python 技术篇-使用pygame库展示界面添加图片不显示问题解决办法
- 关闭Visual Studio中的自动代码分析
- windows下批量修改文件(或文件夹)权限或所有者
- 【HDU2582 关于 gcd( C[n][1],C[n][2],C[n][3],........C[n][n-1) 】
- kettle预览点两下才出数_孩子过生日选“阴历”还是“阳历”?有3点讲究,需斟酌再决定...