压缩感知重构算法——FPC

压缩感知重构算法——FPC

前言

所谓FPC即Fixed Point Continuation,其中涉及到两个部分,即Fixed Point和Continuation。不动点迭代算法和连续算法。下面针对这两个方面对FPC算法的原理进行阐述。

Fixed Point

首先,FPC算法是2007年Elaine T. Hale等人提出的一种解决压缩感知中L1范数最小化问题的重构算法。属于凸优化算法的一种。其解决问题的数学模型如下:
在这里插入图片描述
目标即求minφ(x)的解x*。而我们知道,求一个函数的最优解,即求其导数的零解,即T(x)=∂φ(x)=0的解x*。
求函数T(x)=0,可以使用不动点迭代的方法,即将T(x)=0变成x=g(x)的形式,进行迭代求解。根据这个思想,我们再来看原始的目标函数φ(x),通常φ(x)可以分解为两个凸函数的相加,即φ(x)=φ12。那么我们对应的算子T也可以转换为两个单调算子的和,即T=T1+T2。之后我们开始进行不动点迭代的转换,即求T的零解
在转换过程中我们假设参数τ>0,且T2是一个单值函数,且(I+τT1)可逆。
在这里插入图片描述
可推出φ(x)最小解的迭代式:在这里插入图片描述
对于解决的凸优化问题,即T1=▽||x||1,T2= μ▽||Ax-b||22/2。同时要求(I+τT1)是收缩的。
之后针对凸优化问题的解,原论文中给出命题:在这里插入图片描述
其中g(x)=▽f(x)=▽μ||Ax-b||22/2。
上式(15)其中包含两个步骤,一个是梯度下降步,一个是阈值收缩步。
在这里插入图片描述
最终可表示为迭代式在这里插入图片描述
其中v=τ/μ.
以上便是FPC的FP不动点迭代部分,

Continuation

而对于连续算法,又名同伦法。其目的是用于选择合适的μ值。
同伦法的思想即为了解决一个问题f(x),可以构造一个新的问题H(x,s)=sf(x)+(1-s)g(x)。其中当s=1时,H(x,1)=f(x),即原问题;当s=0时,H(x,0)=g(x)。其中g(x)一般可设置为一个已知解的问题,如f(x)-f(x*),解为x*。然后s从0到1缓慢变换,得到一个路径,这个H(x,s)即连接f(x)到g(x)的路径。然后将其融入到其他算法中,进行迭代,往往会比给定一个具体的初值的效果要更好。
有关同伦法具体解释可参考这篇博客同伦法(Homotopy Method)

FPC

而FPC算法即在不动点迭代中加入同伦法的思想,不以直接设定的初值μ来进行迭代计算,而是生成一个μ的序列,然后在这个序列中缓慢变化选择,进行迭代。下面给出FPC算法的实现步骤:
在这里插入图片描述

参考

【1】FPC论文
【2】同伦法

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值