| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 人工智能 -> BSRN网络——《Blueprint Separable Residual Network for Efficient Image Super-Resolution》论文解读 -> 正文阅读 |
|
[人工智能]BSRN网络——《Blueprint Separable Residual Network for Efficient Image Super-Resolution》论文解读 |
目录 ESDB——Efficient Separable Distillation Block: ?Blueprint Shallow Residual Block (BSRB): ?BSRN-S for NTIRE2022 Challenge: 摘要:单图像超分辨率(SISR)的最新进展已经取得了非凡的性能,但计算成本太高,无法应用于边缘设备。为了缓解这个问题,一些全新的并且有效的方案已经被提出。具有注意机制的卷积神经网络(CNN)因其效率和有效性而引起越来越多的关注。然而,在卷积操作中仍然存在冗余的部分。 在本文中,作者提出了一种轻量级的单图像超分辨率网络,称为蓝图可分离残差网络BSRN——Blueprint Separable Residual Network,BSRN的设计灵感来自于残差特征蒸馏网络(RFDN)和蓝图可分离卷积(BSConv)。 它采用了与RFDN类似的架构,同时引入了一种更高效的蓝图浅残差块(blueprint shallow residual block, BSRB),即在RFDN的浅层残差块(shallow residual block, SRB)中使用BSConv替换标准卷积。此外,作者使用有效的ECA块和CCA块来增强模型的表示性能力。 大量的实验结果表明,与现有的高效SR方法相比,该方法在较少的参数量下取得了最佳的性能。此外,该方案在NTIRE 2022高效超分辨率挑战的子赛道1(model complexity track)上取得了第一名。 网络架构:? ?显然,它继承了RFDN的结构,同样,它也是由四个阶段组成,浅层特征提取、深层特征提取、多层特征融合和重构输出。 具体流程:ILR 输入、ISR输出,在预处理阶段,输入图像首先会被复制n次,然后concat这些图像: ?concat表示沿着通道维度进行操作,n是concat的图像数量,接下来,浅层特征提取部分映射输入图像到更高维特征空间: ?HSF 表示浅层特征提取模块,具体来说,使用BSConv实现浅层特征提取,BSConv由一个1x1卷积和一个逐通道卷积(DW-Conv)组成,然后,一系列堆叠的ESDB块使用F0进行深度特征提取,逐步细化提取的特征,这个过程公式如下: ?Hk(·) 表示第k个ESDB块,?Fk-1 and Fk 表示第K个ESDB块的输入和输出特征。 为了充分利用所有深度的特征,通过1 × 1卷积和GELU激活,将不同深度产生的特征进行融合与映射。然后,利用BSConv对特征进行细化。多层特征融合表示为 ?Hfusion(·) 表示融合模块并且Ffused 是聚合特征。 为了充分利用残差学习,利用了长跳跃连接,重构阶段的公式: Hrec(·) 表示重构模块,它是由一个标准的3x3卷积和一个亚像素卷积组成 利用L1损失: ?concat表示沿着通道维度进行操作,可能是为了便于后边的BSConv。 BSConv:这也是出自于一篇轻量级网络的研究,如MobileNet中,会有深度可分离卷积Depthwise Separable Convolution(DSCs),由depthwise(DW)和pointwise(PW)两个部分结合起来,用来提取特征图,虽然相比常规的卷积操作,其参数数量和运算成本比较低,但是深度可分卷积实际上执行的是跨内核的相关性,而不是内核内部的相关性。而研究发现内核内部的相关性占主导地位,因此有更大的潜力进行有效分离。所以,这个叫做“蓝图”可分的卷积就针对内核内部的相关性做了研究。 所谓“蓝图”,其实就是作者可视化了三个基础网络VGG-19、Inception V2、ResNet-50的卷积核,最后发现很多卷积核呈现相同的“视觉结构”。就好比这些卷积核是照着一个模子,然后加点线性变换产生的。然后作者就将这个模子称为“蓝图”(高大上的名字)。 具体而言,BSConvU是将一个标准的卷积分解为1x1卷积(PW)和一个逐通道卷积。它是深度可分离卷积(DSConv—逐通道、逐点)的逆向版本,BSConvU在许多情况下,在高效的标准卷积分离方面表现得更好。此外,作者还对BSConvU进行了变体操作——BSConvS。后续的实验也会验证不同卷积分解的效果。 关于“蓝图”,此处不进行过多的讲解,感兴趣可以找原文来看。 《Rethinking depthwise separable convolutions: How intra-kernel correlations lead to improved mobilenets》 ESDB——Efficient Separable Distillation Block:? 受到RFDN中RFDB的启发,作者设计了一个ESDB,它和RFDB的结构很像但是更加高效。ESDB通常由三个阶段组成。 信息蒸馏操作是通过卷积以一定比例压缩特征通道实现。 在第一阶段,对于输入特征Fin, 特征蒸馏公式如下: DL 表示蒸馏层,它生成蒸馏特征,RL表示精修层(借鉴IMDB-R),它会逐步修复粗粒度特征。在特征压缩阶段,蒸馏的特征Fdistilled 1, Fdistilled 2, Fdistilled 3, Fdistilled 4 会进行concat,然后由一个1x1卷积进行压缩,? Concat表示只沿着通道维度进行操作?。Fcondensed 是压缩后的特征,Hlinear(·) 表示1x1的卷积。 最后一阶段,为了提高模型的表征能力并且保持它的高效性,引进了轻量的增强空间注意力块(ESA)和对比通道块CCA,二者分别从空间和通道的角度增强模型的能力。 ?Blueprint Shallow Residual Block (BSRB):?ESDB一个基本的模块就是BSRB,它是由一个BSConv、一个GELU激活函数以及一个跳跃连接组成。激活函数GELU被视为ReLU的一个更平滑的变体。在该网络中,作者也发现GELU性能要比ReLU和LReLU更好。?后续的实验会证明。 ESA和CCA:ESA和CCA的高效性在以往的方法中已经被证明过了。作者引入这两个模块。 ESA开始于一个1x1卷积去减少输入特征的通道维度,然后使用strided convolution and a strided max-pooling layer(The combination of strided convolution and max-pooling is widely used in image classification to quickly reduce the spatial dimensions at the beginning of the network. )去减少空间尺寸,根据组卷积去提取特征,使用基于插值的上采样恢复空间尺寸,值得注意的是,ESA中的卷积也是BSConvs(而传统的ESA中:先用1x1、再用stride为2的stride?convolution、再使用大小为7x7,stride为3的max-pooling)以获得更好的效率。结合残差连接,提取的特征会进一步被1x1卷积处理去恢复通道尺寸,最后,特征矩阵会经由一个sigmoid函数生成,并且和原始输入特征相乘。 CCA块是之前SR任务中通道注意力模块的升级版。与传统的利用每个信道方向特征的均值计算的信道注意不同,CCA利用包括均值和标准差之和在内的对比度信息来计算信道注意权重。 ?实验:BSRN的实现细节:BSRN是由8个ESDB组成,通道数是64,所有深度卷积核设置为3,mini-batch大小是64并且LR输入图像的patch为48x48,1 × 106?(6是指数)iterations. 使用了两个GeForce RTX 3090gpu和训练约30小时。 BSRN-S(比赛)的实现细节:NTIRE2022挑战的实施细节。BSRN-s是为挑战而设计的BSRN的一个小变体,它要求参与者设计一个高效的网络,同时在DIV2K验证数据集上保持PSNR为29.00 dB。 具体来说,将ESDB的数量减少到5个,并将特征数减少到48个。CCA块被可学习的通道级权重所取代。在训练过程中,输入patch大小设置为64×64,mini-batch为256。训练迭代次数增加到1.5×106(6是指数),有四个GeForce RTX 2080Tigpu用于训练。 不同卷积分解的效果:作者展现了基于RFDN的不同卷积分解方法的影响,DSConv代表了原始的深度可分离卷积,? 可以观察到,当执行卷积分解时,性能下降是存在的,不过计算量和参数量也显著下降。为了平衡性能和参数量、计算量的关系,尽量在效果差的不多的情况下,选择了BSConvU 。 ESA和CCA的有效性:没有ESA,虽然减少了9%的参数量,但有一个明显的性能降低。 没有CCA,BSRN性能也降低了,所以ESA和CCA有效。 ?不同激活函数对比:之前的大部分工作都会选择ReLU 或者LeakyReLU ,GELU 是最近才开始流行的。作者们也探索了不同的激活函数选择最适合该模型的。同时也对比了MobileNet V3(轻量)中提出的新的激活函数h-swish。结果表明,不同的激活函数有着很显著的差别,在这些激活函数中,GELU 相比于其他的函数,在Urban100数据集上有着很好的表现 ? BSRN的有效性:作者们设计了BSRN的两个变体进而证明提出架构的有效性,设置BSRN的深度和宽度都和原始的RFDN相同叫做BSRN-1,然后将模型容量扩大到与RFDN相似的计算量叫BSRN-2。 BSRN-1凭借更少的计算超过了RFDN,此外,BSRN-2相比于RFDN获得了一个更有意义的性能提升,特别是在Manga109数据集。 实验结果表明提出的架构是更优的。 ? ?和SOTA方法的对比:? 视觉效果比较:? ? ?BSRN-S for NTIRE2022 Challenge:’Val PSNR’ and ’Test PSNR’ are PSNR results tested on the DIV2K validation and test sets。与其他方法相比,作者的方法参数数最少,FLOPs第二少。 就运行时间而言,这与代码的优化和针对不同操作人员的具体测试平台的计算有关。经过优化后,BSRN-S-opt在相同GPU上获得了与IMDN和RFDN相似的运行时长。 然而,由于GPU计算深度卷积的不友好性,该方法的运行时长依旧较大。 ? ? 总结:BSRN通过使用蓝图可分离卷积BSConv构造基本构建块,减少冗余。BSConv是深度可分离卷积DSConv的升级版本,它更好地利用内核内部相关性来实现高效分离(深度可分卷积实际上执行的是跨内核的相关性,而不是内核内部的相关性。而研究发现内核内部的相关性占主导地位,因此有更大的潜力进行有效分离)。该网络表明BSConv 是有益于有效SR的。其次,合适的注意力模块已经被证明可以提升高效SR网络的性能。受到以往工作的鼓舞,作者也引进了两个有效的注意力块去增强模型的能力,增强的空间注意力(ESA)和对比通道注意力(CCA)。图1展示了BSRN方法取得了SOTA性能。 ?本文的主要贡献: 1、引进了BSConv去构建基本的构建块并且展示它对SR的有效性。 2、利用两个有效的注意力模块和有限的额外计算来增强模型的能力。 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 0:44:44- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |