Iterative Soft Thresholding和Iterative Shrinkage/Thresholding的区别「建议收藏」

Iterative Soft Thresholding和Iterative Shrinkage/Thresholding的区别「建议收藏」版权声明:本文为博主原创文章,遵循CC4.0by-sa版权协议,转载请附上原文出处链接和本声明。…

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

版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。

题目: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三个单词都出现了,虽然没有连在一起:

Iterative Soft Thresholding和Iterative Shrinkage/Thresholding的区别「建议收藏」

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

Iterative Soft Thresholding和Iterative Shrinkage/Thresholding的区别「建议收藏」

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

Iterative Soft Thresholding和Iterative Shrinkage/Thresholding的区别「建议收藏」

Iterative Soft Thresholding和Iterative Shrinkage/Thresholding的区别「建议收藏」

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

Iterative Soft Thresholding和Iterative Shrinkage/Thresholding的区别「建议收藏」

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

Iterative Soft Thresholding和Iterative Shrinkage/Thresholding的区别「建议收藏」

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

Iterative Soft Thresholding和Iterative Shrinkage/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”:

Iterative Soft Thresholding和Iterative Shrinkage/Thresholding的区别「建议收藏」

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

Iterative Soft Thresholding和Iterative Shrinkage/Thresholding的区别「建议收藏」

Iterative Soft Thresholding和Iterative Shrinkage/Thresholding的区别「建议收藏」

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

Iterative Soft Thresholding和Iterative Shrinkage/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”:

Iterative Soft Thresholding和Iterative Shrinkage/Thresholding的区别「建议收藏」

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

Iterative Soft Thresholding和Iterative Shrinkage/Thresholding的区别「建议收藏」

Iterative Soft Thresholding和Iterative Shrinkage/Thresholding的区别「建议收藏」

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

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

Iterative Soft Thresholding和Iterative Shrinkage/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):

Iterative Soft Thresholding和Iterative Shrinkage/Thresholding的区别「建议收藏」

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

Iterative Soft Thresholding和Iterative Shrinkage/Thresholding的区别「建议收藏」

Iterative Soft Thresholding和Iterative Shrinkage/Thresholding的区别「建议收藏」

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

Iterative Soft Thresholding和Iterative Shrinkage/Thresholding的区别「建议收藏」

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

Iterative Soft Thresholding和Iterative Shrinkage/Thresholding的区别「建议收藏」

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

Iterative Soft Thresholding和Iterative Shrinkage/Thresholding的区别「建议收藏」

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

        文中明确给出了IST算法:

Iterative Soft Thresholding和Iterative Shrinkage/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):

Iterative Soft Thresholding和Iterative Shrinkage/Thresholding的区别「建议收藏」

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

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

Iterative Soft Thresholding和Iterative Shrinkage/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认为是同一种算法:

Iterative Soft Thresholding和Iterative Shrinkage/Thresholding的区别「建议收藏」

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

Iterative Soft Thresholding和Iterative Shrinkage/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的一些别名,虽然这些别名并不常见:

Iterative Soft Thresholding和Iterative Shrinkage/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的含义。本文献是为了求解优化问题:

Iterative Soft Thresholding和Iterative Shrinkage/Thresholding的区别「建议收藏」

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

Iterative Soft Thresholding和Iterative Shrinkage/Thresholding的区别「建议收藏」

其中文中的IST全称为:

Iterative Soft Thresholding和Iterative Shrinkage/Thresholding的区别「建议收藏」

文中的CS全称为:

Iterative Soft Thresholding和Iterative Shrinkage/Thresholding的区别「建议收藏」

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

 

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

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

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • ie浏览器无法连接到代理服务器_网页无法连接到代理服务器

    ie浏览器无法连接到代理服务器_网页无法连接到代理服务器由于工作上的需要,相信很多用户会使用IE代理服务器,但是在设置之后遇到IE代理服务器没有响应错误提示(如图所示),并且浏览器无法打开网页的问题,但使用其他浏览器是可以正常上网,出现这种情况很有可能是注册表设置问题,我们可以按照以下方式来解决。     1、打开运行窗口(系统键Win+R),输入”regedit.exe”.如下图所示,根据下边的地址逐步打开:HKE

    2025年8月11日
    3
  • web 打印控件_JS插件

    web 打印控件_JS插件 平常浏览网页和文档的时候,随处可见打印两个字,有时候不小心点到,就会弹出一个打印的页面,如果连接了打印机,可以直接调用到打印机进行真实的打印。做为开发人员我们在网页开发过程中经常会有打印页面的需求,目前我正在做浏览器端采用JS方式实现打印这么一个功能,通过JS来实现的方法有很多,这里我分享一下我自已采用的方法,供大家参考。为了节约开发时间,我采用的是第三方打印软件“老牌打印控件WebPrinter”。新版现在已更名为“智睦云打印”,在原来的基础上增加了云打印机的支持,“智睦云打印”可以应用在本..

    2025年7月1日
    3
  • PHP常用的开发工具_小程序开发工具有哪些

    PHP常用的开发工具_小程序开发工具有哪些互联网的流行使得,软件程序发的需求也越来越大,其中PHP程序开发就是一个先例。PHP是英文超级文本预处理语言HypertextPreprocessor的缩写。PHP是一种HTML内嵌式的语言,

    2022年8月3日
    6
  • 协方差矩阵计算实例「建议收藏」

    协方差矩阵计算实例「建议收藏」协方差矩阵计算实例突然发现给一组数据去实际计算对应得协方差矩阵,让人有点懵,并未找到太清楚的讲解,这里举一个实例记录一下。1、别把样本数和维度数搞混了具体进行计算容易懵的原因就是很容易把样本数和维度数搞混,维度数n,那么得到的协方差矩阵就是n*n的,和样本数没啥关系。这里还是要明确一下,维度数即是每条样本中的变量数,协方差即是对不同变量的同向程度进行的衡量,下面举个例子来具体说明一下。2、实例说明一下样本:一共4条,2维的这里再强调一下,每条样本都是2维的,即每条样本都包含对两个变量

    2022年6月28日
    28
  • 用好SVN与Git,版本管理都不是问题

    用好SVN与Git,版本管理都不是问题

    2021年11月6日
    281
  • Hadoop生态系统特点[通俗易懂]

    Hadoop生态系统特点[通俗易懂]1、源代码开源(免费)2、社区活跃、参与者众多3、涉及分布存储和计算的方方面面4、已得到企业界届认同。HaDoop1.0与HaDoop2.0系统分布式存储系统HDFS(HadoopDistributedFileSystem)分布式存储系统提供了高可靠性、高扩展性和高吞吐率的数据存储服务资源管理系统YARN(YetAnotherR

    2022年5月19日
    38

发表回复

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

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