IST:Iterative Shrinkage/Thresholding和Iterative Soft Thresholding

IST:Iterative Shrinkage/Thresholding和Iterative Soft Thresholding本篇是对压缩感知重构算法之迭代软阈值(IST)的延续,可能需要以下基础:软阈值(SoftThresholding)函数和硬阈值(HardThresholding)函数。前面我们在讨论迭代软阈值算法时提到,一般文献中出现的IST或ISTA简称中的“S”并非指的是“soft”,而是“shrinkage”,即“IterativeShrinkage/ThresholdingAlgorithm”,那么IterativeSoftThresholding和IterativeShrinkage/

大家好,又见面了,我是你们的朋友全栈君。

题目:IST:Iterative Shrinkage/Thresholding和Iterative Soft Thresholding

        本篇是对压缩感知重构算法之迭代软阈值(IST)的延续,可能需要以下基础:软阈值(Soft Thresholding)函数硬阈值(Hard Thresholding)函数

        前面我们在讨论迭代软阈值算法时提到,一般文献中出现的IST或ISTA简称中的“S”并非指的是“soft”,而是“shrinkage”,即“Iterative Shrinkage/ThresholdingAlgorithm”,那么Iterative Soft Thresholding和Iterative Shrinkage/Thresholding究竟有什么区别呢?是不是同一个算法的不同称呼呢?由于找不出一篇具体的、权威的IST算法起源文献,本篇就通过多篇文献中与IST有关的蛛丝马迹尝试去探索一下这个问题的真相……

        首先给出本文对此问题的结论:

        Iterative Soft Thresholding是Iterative Shrinkage/Thresholding的一种特殊情况,即每次迭代(iteration)时正好是求软阈值(soft thresholding)函数时的特殊情况。

        另外,你要认为它们是一样的也可以,这就是一个狭义和广义的问题。

        接一来,我们来看一看文献中有关IST的内容:

【1】Daubechies I, Defrise M, Mol C D.An iterative thresholding algorithm for linear inverse problems with asparsity constraint[J]. Communications on Pure & Applied Mathematics,2004, 57(11):1413–1457.

        本篇文献经常被引为IST的提出文献之一,但该文献中并没有明确出现IST的简称。

        首先看文中的一处描述:这里Iterative、Shrinkage、Thresholding三个单词都出现了,虽然没有连在一起:

IST:Iterative Shrinkage/Thresholding和Iterative Soft Thresholding

        然后在Theorem3.1中出现了“shrinkage operator”,这是一个很关键的词,因为我们在上篇中曾谈到之所以将算法称为Iterative Soft Thresholding是因为每一次迭代执行Soft Thresholding函数:

IST:Iterative Shrinkage/Thresholding和Iterative Soft Thresholding

        这个“shrinkage operator”的定义为式(17),如下:

IST:Iterative Shrinkage/Thresholding和Iterative Soft Thresholding

IST:Iterative Shrinkage/Thresholding和Iterative Soft Thresholding

式(17)的定义又引用到了式(14)和式(16):

IST:Iterative Shrinkage/Thresholding和Iterative Soft Thresholding

注意:式(14)中的(Fw,p)-1表示求反函数。当p=1时,可得式(16):

IST:Iterative Shrinkage/Thresholding和Iterative Soft Thresholding

文中提到的式(10)定义如下:

IST:Iterative Shrinkage/Thresholding和Iterative Soft Thresholding

注意:式(16)即为我们熟悉的Soft Thresholding函数。

        因此,我们得出一个结论,“Soft Thresholding”是“shrinkage operator”当p=1时的一种特殊情况。

        排除同名的可能性,本文献的第一作者Ingrid Daubechies即为著名的db系列小波基(Daubechies小波)提出者,也是《小波十讲》的作者。

【2】Elad M.Why Simple ShrinkageIs Still Relevant for Redundant Representations?[J]. IEEE Transactions onInformation Theory, 2006, 52(12):5559-5569.

        我们接着来看“Shrinkage”:

IST:Iterative Shrinkage/Thresholding和Iterative Soft Thresholding

        这里提到的式(7)和式(6)分别是:

IST:Iterative Shrinkage/Thresholding和Iterative Soft Thresholding

IST:Iterative Shrinkage/Thresholding和Iterative Soft Thresholding

        而这里提到的Fig.2如图所示:

IST:Iterative Shrinkage/Thresholding和Iterative Soft Thresholding

        图名里提到的LUT是指lookup table (LUT) function。注意:图中的左上图为Soft Thresholding函数,而右上图为Hard Thresholding函数。

        因此,我们得出一个结论:Soft Thresholding和Hard Thresholding是“Shrinkage”的一种特殊情况,分别是当式(6)中的ρ(z)=|z|(1范数)和ρ(z)=|z|0(0范数)。

【3】Elad M.A wide-angle view atiterated shrinkage algorithms[J]. Proceedings of SPIE – The InternationalSociety for Optical Engineering, 2007, 6701(6701):26–29.

        我们接着来看“Shrinkage”:

IST:Iterative Shrinkage/Thresholding和Iterative Soft Thresholding

注意这里提到的经典的Donoho-Johnston shrinkage method是由参考文献[18]提出,这里的参考文献[13][18]是如下两篇文献:

IST:Iterative Shrinkage/Thresholding和Iterative Soft Thresholding

IST:Iterative Shrinkage/Thresholding和Iterative Soft Thresholding

        还记得这两篇文献么?Soft Thresholding和Hard Thresholding是由[18]提出的。

        接下来,有一段非常明确的有关“Shrinkage”的描述

IST:Iterative Shrinkage/Thresholding和Iterative Soft Thresholding

        注意后面加了波浪下划线的话:得到的“Shrinkage”函数是一条将输入x0映射为输出xopt的曲线,这个函数将原点附近范围的值映射为0,出了这个范围的值被“shrinked”,因此有了这个operator的名字。

        值得注意的是,当p=1,求解方程(12)将得到soft thresholding函数。

【4】Bioucas-DiasJ M, Figueiredo M A T.A new TwIST: two-stepiterative shrinkage/thresholding algorithms for image restoration[J]. IEEETransactions on Image processing, 2007, 16(12): 2992-3004.

        这篇文献对IST的阐述更为清晰。首先看这篇文献要解决的问题(1):

IST:Iterative Shrinkage/Thresholding和Iterative Soft Thresholding

        然后看一段综述,这里明确提到Iterative Shrinkage/Thresholding(IST):

IST:Iterative Shrinkage/Thresholding和Iterative Soft Thresholding

IST:Iterative Shrinkage/Thresholding和Iterative Soft Thresholding

        注意这里多次提到IST多次被“independently”提出。文中接下来又提到了“shrinkage”函数:

IST:Iterative Shrinkage/Thresholding和Iterative Soft Thresholding

        文中提到的denoising operator式(3)如下所示:

IST:Iterative Shrinkage/Thresholding和Iterative Soft Thresholding

        也就是说这里讨论的shrinkage function即为denoising operator式(3)的解。当p=1时,denoising operator(3)由式(8)给出:

IST:Iterative Shrinkage/Thresholding和Iterative Soft Thresholding

        可以看出,式(8)就是soft thresholding函数,也就是说soft thresholding函数是shrinkage function当p=1时的一种特殊形式。

        文中明确给出了IST算法:

IST:Iterative Shrinkage/Thresholding和Iterative Soft Thresholding

        而原始的IST算法是当β=1时的特殊情况。从式(13)可以看出,Iterative Soft Thresholding 是Iterative Shrinkage/Thresholding的一种特殊情况。

【5】Bredies K,Lorenz D.Iterative soft-thresholdingconverges linearly[R]. Zentrum für Technomathematik, 2007.(Available at: http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.245.1143&rep=rep1&type=pdf)

        直接讨论Iterative Soft Thresholding的文献较少,本文献即直接讨论了Iterative Soft Thresholding的收敛情况。文中提到Iterative Soft Thresholding是为了解决式(1.1):

IST:Iterative Shrinkage/Thresholding和Iterative Soft Thresholding

        这个式(1.1)并不太熟悉,原因在于正则项|uk|(即1范数)前面的系数为随k的变化是变化的,其实这个并不影响什么,将式(1.1)按soft thresholding推导过程中面对的优化问题拆开,即可知这个影响的只是每次求软阈值时门限不一样而已。

        从文中以下描述可以看出,本篇文献即为Iterative Soft Thresholding算法:

IST:Iterative Shrinkage/Thresholding和Iterative Soft Thresholding

        另外,文中提到了Iterative Soft Thresholding算法的其它名字如thresholded Landweber。

【6】Beck A, Teboulle M.A FastIterative Shrinkage-Thresholding Algorithm for Linear Inverse Problems[J].Siam Journal on Imaging Sciences, 2009, 2(1):183-202.

        本篇文献实际上是把Iterative Soft Thresholding和Iterative Shrinkage/Thresholding认为是同一种算法:

IST:Iterative Shrinkage/Thresholding和Iterative Soft Thresholding

        另外,文中也提到了Iterative Shrinkage/Thresholding的一些其它名字:

IST:Iterative Shrinkage/Thresholding和Iterative Soft Thresholding

【7】Wright S J,Nowak R D, Figueiredo M A T.Sparsereconstruction by separable approximation[J]. IEEE Transactions on SignalProcessing, 2009, 57(7): 2479-2493.

        本篇文献中提到了更多Iterative Shrinkage/Thresholding的一些别名,虽然这些别名并不常见:

IST:Iterative Shrinkage/Thresholding和Iterative Soft Thresholding

【8】Nowak R D, Wright S J.Gradientprojection for sparse reconstruction: Application to compressed sensing andother inverse problems[J]. IEEE Journal of selected topics in signalprocessing, 2007, 1(4): 586-597.

        将本篇文献放在这里并不是为了探讨shrinkage的含义。本文献是为了求解优化问题:

IST:Iterative Shrinkage/Thresholding和Iterative Soft Thresholding

        熟悉BPDN的知道,这就是基追踪降噪问题。文中有一段有关IST的描述:

IST:Iterative Shrinkage/Thresholding和Iterative Soft Thresholding

其中文中的IST全称为:

IST:Iterative Shrinkage/Thresholding和Iterative Soft Thresholding

文中的CS全称为:

IST:Iterative Shrinkage/Thresholding和Iterative Soft Thresholding

        注意最后一句,文献说IST对于解决压缩感知问题可能并不是很有效,原因是“it may be loose in the CS case,where matrix usually has many fewer rows than columns.”。对于这一点我有些疑问,原因是经过debias后,我们的IST能够进行压缩感知重构。

 

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

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/132906.html原文链接:https://javaforall.net

(0)
上一篇 2022年6月10日 上午7:00
下一篇 2022年6月10日 上午7:00


相关推荐

  • c语言double类型printf问题

    c语言double类型printf问题背景 今天在用 c 语言写程序时遇到了一个问题 printf lf double r 竟然输出乱码 0 000000 浏览了几十个网页之后 大致找到了问题原因 结论 在 c 语言中 double 类型的读入必须用 lf 输出必须用 f 解释 double 和 float 的精度是不同的 故存储空间也是不同的 所以如果要读入 double 类型 必须要用 lf 来读入 以免精度丢失 而输出 由于

    2026年3月20日
    1
  • idea快捷键汇总mac_mac版本IDEA快捷键「建议收藏」

    idea快捷键汇总mac_mac版本IDEA快捷键「建议收藏」本文中的快捷键均为系统默认配置。一、mac系统键盘和符号对应关系1.Control(或Ctrl)⌃2.CapsLock⇪3.Command(或Cmd)⌘4.Option(或Alt)⌥5.Shift⇧二、mac系统自有快捷键1.command系列1).command+space切换输入法2).command+M最小化当前窗口3).command+Q关闭当前程序(…

    2022年5月25日
    1.2K
  • oracle rac常用命令_oracle rac集群搭建

    oracle rac常用命令_oracle rac集群搭建SRVCTLAdd添加数据库或实例的配置信息。在增加实例中,与-i一起指定的名字应该与INSTANCE_NAME和ORACLE_SID参数匹配。srvctladddatabase-ddatabase_name[-mdomain_name]-ooracle_home[-sspfile]srvctladdinstance-d database_name -iinsta…

    2025年10月26日
    7
  • [Python_3] Python 函数 & IO

    [Python_3] Python 函数 & IO

    2021年6月15日
    127
  • linux升级gfortran,gfortran编译cp2k4.1

    linux升级gfortran,gfortran编译cp2k4.1大部分安装包可以在 https www cp2k org static downloads 找到 其它的可以去官网自行下载 https www cndba cn shuye100 article 1723 操作系统版本 RedHatEnterp 3 Maipo root cp2kLinux x86 64 gfortran gc

    2026年3月18日
    1
  • linux 磁盘碎片整理

    linux 磁盘碎片整理1、sudofdisk-l查看各分区情况2、sudoe4defrag-c/dev/sda2查看碎片情况3、sudoe4defrag-v/dev/sda2碎片整理

    2022年6月25日
    36

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

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