Neural Sparse Representation for Image Restoration

用于图像复原的神经稀疏表示

Abstract

在基于稀疏编码的图像恢复模型中,基于稀疏表示的鲁棒性和有效性,我们研究了深度网络中神经元的稀疏性。我们的方法在结构上对隐藏神经元施加稀疏约束。稀疏性约束有利于基于梯度的学习算法,并可用于各种网络的卷积层。通过仅在非零组件上运行,神经元的稀疏性使计算节省而不影响精度。同时,该方法可以在不增加计算成本的情况下提高模型的表示维数和模型容量。实验表明,对于图像超分辨率、去噪和图像压缩伪影去除等多个图像恢复任务,稀疏表示是深度神经网络的关键。

Introduction

稀疏表示在图像恢复问题中发挥着关键作用,如图像超分辨率[1,2,3]、去噪[4]、去除压缩伪影[5]等[6,7]。这些任务本质上是病态的,输入信号通常没有足够的信息,而输出信号在相同的输入下有无穷多个解。因此,人们普遍认为稀疏表示在处理解决方案的多样性方面更加鲁棒。

稀疏编码中的稀疏表示通常是高维的,但有有限的非零分量。输入信号表示为字典中令牌的稀疏线性组合。高维意味着更大的字典大小,通常会导致更好的恢复精度,因为一个更大的字典能够更彻底地采样底层信号空间,从而更准确地表示任何查询信号。此外,非零元素的稀疏极限数作为一种基本的图像先验,被广泛地研究和利用来增强复原的鲁棒性。稀疏性也通过忽略零部分来提高计算效率。

用于图像恢复的深度卷积神经网络扩展了基于稀疏编码的重复级联结构方法。为了提高[8]的性能,本文首先引入了基于深度网络的方法,并在概念上与基于稀疏编码的方法相联系。由非线性激活层连接的两个卷积层的简单网络可以解释为:激活表示稀疏表示;非线性加强了稀疏性,卷积核由字典组成。SRResNet[9]扩展了跳越连接的基本结构,形成一个残差块,并将大量的残差块级联,构成很深的残差网络。

由于深度网络在推理过程中具有前馈特性,因此不能将迭代优化作为稀疏编码来解决隐藏表示的稀疏性问题。神经元的稀疏性通常是通过[10]中的ReLU激活来实现的,这种激活通过将每个神经元中的负值分别设定为0。不过,它对随机向量的50%稀疏性与对非零分量总数的稀疏性定义相去甚远。相反,稀疏性限制在模型参数中活跃应用以实现网络剪枝。然而,在剪枝网络中,隐藏表示的维数降低了,精度降低了。

在本文中,我们提出一种方法,可以在结构上加强对深度网络中隐藏神经元的稀疏约束,同时保持高维的表示。对于高维神经元,我们沿着通道将它们分成若干组,并且每次只允许一组神经元是非零的。利用小边网络根据上下文特征对非稀疏群进行自适应选择。当只在非零组上执行时,计算也被保存。但由于选择操作不可微,很难嵌入边网络进行联合训练。我们将稀疏约束放宽为软约束,并将其近似简化为多个卷积核的稀疏线性组合,而不是硬选择。我们进一步引入额外的基数维,将稀疏性预测分解成子问题,通过分解每个稀疏组并在参数的基数无关组合后进行连接。

为了证明神经稀疏表示的重要性,我们对图像恢复任务进行了广泛的实验,包括图像超分辨率、去噪和压缩伪影去除。实验结果表明:(1)专用约束对实现神经稀疏表示和深度网络有益;(2)在相同大小的model footprint的情况下,我们的方法可以显著降低计算成本,提高精度;(3)该方法可以在不增加计算成本的情况下,显著提高模型容量和精度。

Related work

2.1 Sparse coding and convolutional networks稀疏编码与卷积网络

本文简要回顾了稀疏性在图像恢复中的应用及其与卷积网络的关系。以图像超分辨率为例进行图像恢复,基于稀疏编码的方法[1]假设输入图像信号X可以用一个稀疏线性组合α在字典D1上表示,它通常是从训练图像中学习到的,

在[3]中,恢复后的图像信号Y的耦合字典D2与D1以及它的稀疏表示α联合学习学习,通过:

卷积网络由层叠的卷积层和非线性的激活函数组成,可以用[8]稀疏编码的概念来解释。以一小块网络为例,该网络有两个卷积层,核为W1、W2,函数为非线性F,图像恢复过程可以形式化为,

对于W1的卷积操作∗等价于将输入图像信号X投影到字典D1上。W2的卷积操作∗对应于信号表示在字典D2上的投影。这两种卷积层结构被广泛用作基本残块,并与多个块叠加形成非常深的残块网络[9,12]。

隐含表示的维数或每个卷积层的核数决定了字典内存的大小和模型的学习能力。然而,与稀疏编码不同,深层模型中的表示维数通常受到运行速度或内存使用的限制。

2.2 Sparsity in parameters and pruning参数和剪枝中的稀疏性

研究模型参数的稀疏性可以潜在地提高鲁棒性[13],但是参数的稀疏性并不是产生稀疏表示的充分必要条件。此外,channel上的群稀疏性和参数趋近于零的抑制可以实现节点剪枝[14,11, 15, 16, 17],极大地降低了推理计算成本。尽管效率很高,但节点剪枝降低了表示的维数,而不是稀疏性,限制了表示的多样性,并导致精度回归。

图1,简化矩阵乘法示例中带有稀疏隐节点的两层神经网络的计算约简说明。左:稀疏约束网络,仅允许c个隐藏节点的一组在总数为kc节点上不为零。右:仅使用w1i和w2j简化计算,因为其他激活节点为零。(灰度反映矩阵值的大小。矩阵乘法是从右到左的顺序。)

2.3 Thresholding and gating

以ReLU[18]为例,阈值函数通过将负值过滤为零,起到了类似于增强[10]稀疏性约束的作用,并且与之前的激活函数,即双曲正切函数相比,其性能有显著改善。虽然ReLU统计上只给出了随机向量上50%的稀疏性,但在Eq. 1中的稀疏性定义之间仍然存在显著的差距。例如,在Squeeze-and-Excitation中[19,20],门控机制使用自适应的sigmoid型门来scalse隐藏的神经元,并在显著提高准确性的同时稍微提高了稀疏性。在Eq. 1中,阈值设定和门控都独立地应用于隐藏神经元,并不能内在地保证全局稀疏性。

Methodology

提出了一种新的稀疏约束来实现深度神经网络的稀疏表示。宽松的软限制更有利于基于梯度的训练。附加的基数维改进了约束条件,提高了稀疏表示的多样性。

3.1 sparsity in hidden neurons隐神经元中的稀疏性

与2.3节中讨论的仅考虑每个神经元的局部稀疏性的方法不同,我们的方法加强了组间的全局稀疏性。具体来说,将隐藏神经元分为k组,每组c个节点,只允许其中一组包含非零值。相应地,卷积核也可以根据连接的隐藏神经元进行划分。那么只需要计算连接到非零神经元的内核。形式上的,对于公式3中的网络结构,卷积核被分为W1=[W11T,W12T,…,W1kT]T , W2=[(W21T,W22T,…,W2kT]T。随后,公式3可被重写为:

当稀疏性限制只允许第i个神经元group有非零元素时,公式4可以被reduced,如图1所示,并形式化为:

提出的稀疏度假设选取振幅最大的节点群,不计算所有节点的值就无法实现。在我们的方法中,唯一的非零组的选择是由一个关于输入信号X的多层感知器(MLP)建模的。

常规的卷积操作需要为每个像素共享内核。因此,选择也应该通过spatial space来识别。我们受到Squeeze-and-Excitation[19,20]操作的启发,提出在MLP前增pooling和boardcasting操作进行分组选择。上述可被形式化为:

需要注意的是,对于图像恢复来说,大多数基于patch的算法[1,20],池化操作应该针对特定的patch大小,而不是针对整个图像。

Comparison to thresholding and gating.与阈值和gating的比较。该方法将隐藏层表示中所有节点的非零实体数限制在1/k以下,与2.3节中讨论的阈值和门控方法相比,该方法更接近Eq. 1中的稀疏性定义。

Comparison to node pruning. 与节点剪枝对比。节点剪枝通过对所有相关的可训练参数进行归零来减少激活节点。无论输入信号如何变化,修剪后的节点都保持为零,这大大降低了表示的维数。在该方法中,稀疏性自适应地依赖于输入。虽然输入本身保持了表示的高维数,但作为窄模型,我们的方法节省了计算和内存开销。

3.2 Relaxed soft sparsity松弛软稀疏

与稀疏编码中的L0范数相似,Eq. 6中的自适应稀疏群选择是不可微的,并且无法与神经网络共同学习。虽然Gumbel技巧[21]被提议对条件概率分布的argmax重新参数化,但它在我们的实验设置中没有取得令人信服的结果。

通过用softmax代替selection作为max的光滑逼近来松弛稀疏性约束。MLP不是预测k中的index,而是通过softmax函数σ( ̇)宽泛地预测组β=β1, β2,…βk∈R0,1k的概率,

然后,将Eq. 4中的双层结构更新为自适应加权组和为,

通过加权求和,Eq. 8不能直接简化为Eq.5,因为组权值中没有一个是正好为零的。幸运的是,给定softmax输出的稀疏假设,∃i,s.t. βiβj→0,∀j≠i,并以分段线性激活函数F, ReLU为例,证明隐藏神经元的加权和可以近似化为参数Wi的加权和,如图2,并公式化为,

注意,W1和W2的两个√β不需要相同才能得到近似值。我们的实验表明,独立地预测W1和W2的权重有利于提高准确性。

这样,软稀疏约束约束下的网络与硬约束约束下的网络具有同样的效率。与对图像进行卷积运算相比,卷积核的插值所增加的唯一计算开销可以忽略不计。

图2:说明加权神经元在软稀疏约束和减少对应的加权和参数。左:具有软稀疏性约束的网络,对k组的神经元应用了权重βi。右:先将参数组加权求和到一个小切片中,然后将其应用于特征的近似约简。

Comparison to conditional convolution.与条件卷积比较。CondConv[22]在自适应加权卷积核和的运算上与我们的松弛软稀疏方法相似。然而,CondConv使用的是sigmoid函数来规格化核的权重,而不是softmax函数。因此,在CondConv中没有明确地使用稀疏性约束,我们的实验表明,稀疏性对模型的精度非常重要。

3.3 Cardinality over sparsity groups稀疏群上的基数

用简单的MLP建模群体之间的稀疏性是一个挑战,特别是当每个群体的维度c增长时。此外,在预先定义的组内的结合通道限制了稀疏模式的多样性。受ResNeXt[23]中群卷积的启发,我们将每个稀疏群的c节点分割成d个基数群,每个有c/d节点的基数群独立地沿k个稀疏群约束,如图3所示。形式上,将权值的平均推广到矩阵中,γ=γ1,γ2,…γd∈R0,1d,k,并且γi=σ(MLPiPoolX),然后加权平均卷积核变成,

其中Wi=[W1,i,W2,i,…,Wd,i]并且Wj,i是第j个基数群和第i个稀疏群。concat是沿着输出通道的轴线进行连接操作。值得注意的是,按照基数分组,当d = c, k = 1且MLP激活被s型函数代替时,Squeeze-and-Excitation[19]操作成为我们方法的一个特殊情况。

图3:说明我们的方法。图像块的特征首先进行空间池化并送入MLP中,使用softmax作为激活函数以预测稀疏性约束γ∈Rd,k。softmax函数沿k轴执行。卷积核W分为k个稀疏组和每组c个通道Wi。每组又进一步分为d个基数组和c/d通道每组Wj,i。与基数无关的加权和如公式10所示。最后,聚合内核Wˆ与原始特征卷积。

4 Experiments

4.1 Setting

Datasets and benchmarks. 我们使用多个数据集分别进行图像超分辨率去噪和压缩伪影去除。对于图像的超分辨率,使用DIV2K对模型进行训练,包含800高质量(2K分辨率)图像的[24]数据集。DIV2K也有100张验证图像,用于消融研究。用于基准评估的数据集包括Set5[25]、Set14[2]、BSD100[26]和Urban100[27],三个up-scaling factors:x2、x3和x4。对于图像去噪,训练集由Berkeley Segmentation Dataset (BSD)组成。200张训练分割的图像和200张测试分割的图像,如[28]。用于基准评估的数据集包括Set12、BSD64[26]、Urban100[27]和加性白高斯噪音(AWGN)达到15,25,50级。对于压缩伪影去除,训练集由[1]中的91张的训练图像和200张[26]的训练图像组成。用于基准评估的数据集包括LIVE1[29]和Classic5的JPEG压缩质量为10,20,30和40。评价指标包括PSNR和SSIM[30]用于预测图像质量的亮度或灰度,只有DIV2K在RGB通道中评估。每像素的FLOPs被用来衡量效率,因为运行时的复杂性是比例的输入图像大小完全卷积模型。

Training setting。模型使用自然图像和退化的对应图像进行训练。在线数据增强包括训练过程中的随机翻转和旋转。训练是基于随机采样的图像补丁,每幅图像100次,并进行epoch。整个训练epoch为30,模型优化与L1距离和Adam优化。初始学习率是0.001,在20和25个epoch乘以0.2。

4.2 Ablation study

我们通过消融研究来证明神经稀疏表示的意义。在DIV2K验证集上,对PSNR下的图像超分辨率进行了x2up-scaling实验。我们以16个残块、32个神经元和4x width multiplier的WDSR[31]网络为基线,对于稀疏性组,默认设k = 4。

Sparsity constraints.稀疏性限制。稀疏性约束对于表示稀疏性至关重要。我们用Gumbel -softmax实现了硬稀疏约束来模拟硬最大的梯度,并将其与softmax函数实现的软稀疏度进行了比较。在softmax的温度也控制输出分布的锐度。当温度很小时,softmax输出更清晰,更接近hardmax。这样梯度就会消失。当温度较大时,softmax输出更平滑,那么它将与公式9中近似的稀疏性假设相矛盾。我们还将它们与一个类似的模型进行了比较,在CondConv[22]中使用s型函数作为MLP激活,而不是稀疏约束。表1的结果表明,基于gumbel的硬稀疏性方法是不可行的,甚至比没有稀疏性组的基线更差。为了达到更好的效果,需要对温度进行适当的初始化,这与上述分析一致。Sigmoid的结果也比softmax差,因为Sigmoid不能保证稀疏性,这也与我们在前一节的比较一致。

Cardinality.基数。基数维数降低了稀疏群中信道之间的实际维数和依赖性,提高了卷积核上线性组合权值的多样性。图4中不同基数模型的结果表明,不断增加基数有利于准确性。我们还将其与特殊情况下的Squeeze-and-Excitation模型(SE)进行了比较。我们的模型明显优于SE模型。

ECCV2020论文-稀疏性表示-Neural Sparse Representation for Image Restoration翻译相关推荐

  1. 稀疏表示人脸识别入门文章-《Robust Face Recognition via Sparse Representation》马毅

    人脸识别是机器视觉中非常火的一个领域了,在近十几年来发展迅猛,而本文介绍的方法是基于稀疏表示分类(Sparse Representation based classification,SRC)的人脸识 ...

  2. Fingerprint Compression Based on Sparse Representation(基于稀疏表示的指纹压缩算法)

    G. Shao, Y. Wu, A. Yong, X. Liu and T. Guo, "Fingerprint Compression Based on Sparse Representa ...

  3. 基于稀疏表示的分类方法 Sparse Representation based Classification Method

    文章来源 Jia K, Chan T H, Ma Y. Robust and practical face recognition via structured sparsity[J]. Comput ...

  4. 稀疏性(sparse)知识点

    稀疏性(sparse) 定义:Sparse表示为模型内的参数中,只用很少的几个非零元素或只有很少的几个远大于零的元素. WHY: 为什么模型中要包含稀疏性的特征呢? 例子:考研学霸有10000的词汇量 ...

  5. 【VQ-VAE论文精读+代码实战】Neural Discrete Representation Learning

    [VQ-VAE论文精读+代码实战]Neural Discrete Representation Learning 0.前言 Abstract 1.Introduction(提出现有方法的问题并说明有哪 ...

  6. 正则化,岭回归Shrinkage,lasso稀疏性推导和论文总结

    参考原文https://github.com/Catherine08/AI-paper-reading/blob/master/Regression%20shrinkage%20and%20selec ...

  7. Robust face recognition via sparse representation[J]. Pattern Analysis and Machine Intelligence 论文翻译

    基于稀疏表达的稳定的人脸识别 (源文件中的图片等没在文中上传,大家需要的话可以在这里下载) 摘要 - 我们考虑了在不同的面部表情和光照以及遮挡和伪装的情况下从正面角度自动识别人脸的问题.我们将识别问题 ...

  8. 《Robust Face Recognition via Sparse Representation》论文翻译

    摘要--我们考虑了自动识别有着不同的表情.光照.以及遮挡和伪装的正面人脸存在的问题.我们把这类识别问题描述为一个多线性回归模型中的分类问题,并且认为来自稀疏信号表示的新理论为这类问题提供了解决办法.基 ...

  9. K-SVD: An Algorithm for Designing Overcomplete Dictionaries for Sparse Representation

    K-SVD: An Algorithm for Designing Overcomplete Dictionaries for Sparse Representation Paper:http://s ...

最新文章

  1. 反向春运成为新趋势 客流年增9%
  2. UIBezierPath使用
  3. lucene倒排索引瘦身的一些实验——merge的本质是减少cfx文件 变为pos和doc;存储term vector多了tvx和tvd文件有337M...
  4. 【SeeMusic】购买付费版本 ( 进入购买页面 | 购买流程 )
  5. mysql 新增从数据库_从零开始学 MySQL - 创建数据库并插入数据
  6. WebLogic11g-常用运维操作
  7. 闪电模型数学_最经典的数学模型
  8. restful rest_HATEOAS的RESTful服务。 超媒体:REST的秘密要素
  9. Linux-dmidecode 下面查看主机BIOS信息命令
  10. 矩阵等式 matrix identity(二)
  11. 族谱软件系统的使用介绍
  12. 东北大学 计算机网络,东北大学计算机网络B卷(附答案).pdf
  13. 计算机毕业设计之java+jsp517报刊图书征订管理系统
  14. 使用Windows命令行reg控制注册表键值
  15. java实验2总结心得,java实验的心得体会
  16. ubuntu14.04下推荐的工具及插件
  17. 一个游戏程序员的学习资料 (zz)
  18. QueryBuilders的matchQuery
  19. 前端:水平垂直居中的10种方法
  20. 服务器永久免费文件夹加密,云服务器文件夹加密

热门文章

  1. java按钮位置_java窗口按钮位置设置
  2. Win2008支持PowerShell设置方法
  3. 基于Dockerfile 构建redis5.0.0(包括持久化)及RedisDestopManager 监控
  4. c# winForm DotNetBar控件之SuperGridControl
  5. python第三方库安装-多种方式
  6. 如何处理跨平台的自适应三
  7. [BZOJ4994] [Usaco2017 Feb]Why Did the Cow Cross the Road III(树状数组)
  8. Socket 学习(三).1 tcp 通讯
  9. 中止取消ajax请求,IE7下的bug解决
  10. 我眼中的Linux设备树(一 概述)