版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于EfficientNet的垃圾分类算法分析案例目录TOC\o"1-3"\h\u9351基于EfficientNet的垃圾分类算法分析案例 120231.1EfficientNet神经网络模型分析 1284931.2EfficientNet网络模型的改进与优化 833181.2.1网络模型结构的改进 8243481.2.2网络模型的其他优化 121.1EfficientNet神经网络模型分析EfficientNet网络是现在比较高效的网络之一,它针对现在模型的缩放提出了一种新的策略,这种策略相较于其他方法要高效准确。在之前的神经网络扩展研究中,研究者通常在原有网络上进行部分结构的重复,将网络中的某一部分在深度、宽度或者图像的分辨率三个维度进行调节,例如ResNet就将自身网络的层数进行不同数量的增加,比如18层和101层,形成不同版本的网络,来适应不同的需求,同时取得了更好的识别效果,提高了准确度。又比如Gpipe在原有基线网络的基础上,进行了四倍的扩展,取得了不错的成效,在ImageNet上的识别准确率达到了84.3%[42]。不过从大量的扩展方法上来看,其都是以其中一个维度来进行扩展,但是这种方式的实验准确率在80%的时候迅速饱和,具有一定的局限性。EfficientNet总体结合使用以上三个维度的扩展,形成一套复合缩放策略,也就是Scaleup策略。其依据的原理在于,图像扩充分辨率时,需要提高其感受野的广度,即扩展网络深度和宽度,加宽网络为的是获得更多的细粒度特征。当然,我们不能随意对其中的某一维度来进行随意的扩展,我们需要通过一个固定的比例来实现三者的平衡。如下图3-1所示,图中a表示一个基线网络,而图b显示的是对于基线网络a的宽度进行扩展,也就是增加了基线网络中通道的数量,增加了其方向上的维度,能够加强对细粒度特征的捕获,让训练能够更加容易;图c中是对a的深度进行扩展,增加卷积层数量,这样能够捕获到更加丰富,更加复杂的特征,不过根据以往学者的实验研究来看,设置过多的卷积层数量会导致模型出现梯度弥散、梯度爆炸等问题,并且能导致训练难度更大;图c是增加了a的分辨率,也能够增强细粒度特征的捕获能力。图d所示的网络为EfficientNet的复合缩放策略,其对三个维度分别都进行了扩展。a)基线网络 b)宽度缩放 c)深度缩放d)特征图尺寸缩放 e)复合缩放策略图3-1不同维度的网络扩展策略及scaleup策略Fig.3-1DifferentDimensionsofNetworkExpansionStrategyandScaleUpStrategy关于Scaleup策略的算法公式,首先我们可以将卷积层表示为公式3-1所示一个函数:Y其中,Fi是卷积操作,Yi是输出层的感知器,Xi是输入层的感知器,Xi的shape为<Hi,WN=卷积神经网络一般可以划分为几个stage,它们组成了网络整体,每个stage可以不断重复,而在每个相同的stage中的重复block都具有不同的结构,因此我们可以将公式3-2进一步表示为公式3-3:N=其中,i表示第i个stage,Li表示Fi被重复了Li次,结合我们之前提到过的网络扩展的三个维度:扩展宽度就相当于增大通道数Ci,扩展网络深度就相当于增大卷积层的重复次数对公式3-3所示的这样一个卷积神经网络,我们要对其进行三个维度的扩展,并不是让每个维度按任意大小来随意的扩大,而是要找到一个合适的比例,来作用于三个维度进行复合扩展。复合扩展的目标如下公式3-4所示:maxd,w,r其中,Memory(N)表示该网络所占用的内存大小,FLOPS(N)表示该网络每秒浮点运算次数,两者都对其进行了限制,在该条件下来求取网络N的最大准确度。针对三个维度如何去确定,我们做了如下的设置,如式3-5所示,其中ϕ是常数,与计算资源有关,a、β、depth:d=根据研究者的实验,当α=1.2,β=1.1、γ=1.15时,复合扩展策略下的网络能力最好,三个维度达到了最佳的平衡。进一步的可以固定α,β和γ,通过修改ϕ的值来获得规模更大的卷积神经网络模型,例如EfficientNet的B0至B7网络,本实验采用EfficientNet-B0网络。EfficientNet-B0网络结构如下图3-2所示,其结构较为复杂,但是基本是由多个不同尺寸的MBConv模块组成,其包含了1个3×3的Conv,1个3×3的MBConv1,6个3×3的MBConv6,9个5×5的MBConv6和1个1×1的Conv,在网络的最后使用了全局平均池化层、1000个神经元的全连接层和用于分类的Softmax层。图3-2EfficientNet-B0网络结构Fig.3-2EfficientNet-B0NetworkStructureEfficientNet网络各block主要是借鉴了MobileNetV2,其主要组成部分就是MBConv,即移动翻转瓶颈卷积,其利用深度可分离卷积,并且在此基础上加入了SE模块以及基于ResNet的残差连接结构,下图3-3展示了MBConv的结构组成,可以清晰的看到其各个组成部分。图3-3MBConv模块结构组成Fig.3-3StructureofMbconvModule下面针对该部分的三个组成来进行介绍:(1)深度可分离卷积深度可分离卷积对于深度学习的发展起到了促进作用。通常意义上的卷积神经网络研究会将通道维和空间维看作不可分的整体,认为其必须相互结合使用,但是Inception证明了这两个部分是可以分离的,也就是说两个部分之间的关联并不是很紧密,耦合度低,因此我们可以对两个部分分开映射调节。由此产生的深度可分离的优点是,网络训练的效果与原来相同,但是能够大大减少计算参数量。如图3-4所示的传统卷积,假设输入层有一张三通道彩色图片,其经过4个卷积核的卷积操作之后,生成特征图,数量为4,另外该特征图的尺寸要和原输入的图像一样。而在图3-5所示的深度可分离卷积在处理图像中,首先使用Depthwise卷积的3×3×N卷积核对输入的图片做卷积操作,卷积核的数量N与上一层的通道数相同,因此可以得到3个特征图,但是这一步没有有效利用不同特征图在相同位置上的信息。因此在下一步的Pointwise卷积操作中,使用4个1×1×3的卷积核将特征图沿着特征图数量方向进行加权组合,这项操作的特征图数量仍然为4,对比来看,这两步操作与常规卷积结果相同,但是在总共的参数数量上会比常规卷积少很多,约减少了三分之一,因此我们可以得到更轻更快的模型。图3-4传统卷积操作过程Fig.3-4TraditionalConvolutionOperationProcessa)Depthwise卷积操作b)Pointwise卷积操作图3-5深度可分离卷积过程Fig.3-5DepthSeparableConvolutionProcess(2)SE模块SE模块即Squeeze-and-Excitation,由Momenta公司的SENet网络中提出,其目标是让网络学习到不同通道间的相互依赖关系和重要程度,以此获得每个特征通道的重要程度。SE模块是一种注意力机制,是模仿人本身对于图像的关注点而来的,专注于重要的特征细节,该细节是否重要取决于实际的模型场景。其通过计算判定网络中某层生成的几个特征图的重要性,同时根据这一点进行排序,增强有用特征的比例而降低不重要的特征图比例,实现隐式的注意力机制。下图3-6展示了该模块的结构图,主要分为Squeeze,Excitation和Scale操作。图3-6SE模块结构示意图Fig.3-6StructureDiagramofSqueeze-and-ExcitationModule首先是Squeeze操作,该操作全局平均池化后得到该特征图的特征压缩向量,向量中的每个值代表了每层的特征图全局分布。向量的长度等于特征图数。其次是Excitation操作,通过全连接层得到特征图的每层权重,用于下一步生成加权特征图。在这个过程中加入了激活函数,添加非线性元素。最后是Scale操作,这步操作将权重与原特征每层对应做乘法,也就是对原特征图的重要性进行标明。(3)残差连接残差连接来源于由何凯明等人构建的ResNet网络,现在很多网络中都有其应用。通常的卷积神经网络要实现更好的识别能力,会增加网络宽度、深度,一般来说深度的网络要比浅的网络要好,例如VGG就加大网络的深度以此提高性能。但是研究表明,网络无限制的增加会导致梯度弥散的问题,Loss率反而会有可能上升,而残差块很大程度上解决了这一问题,一个残差块的公式如3-6所示:xl+1一个1×1残差块的组成如下图3-7所示,图3-7残差块组成示意图Fig.3-7SchematicDiagramofResidualBlockComposition残差块分为直接映射和残差部分,hxl是直接映射,如图中左边直线;xl+1其中hx(4)Swish激活函数MBConv块乃至整个EfficientNet网络中所使用的激活函数为Swish,其相对传统的ReLU函数来说,在准确率方面要高。其公式如下式3-8所示,函数曲线为图3-8所示。f(x)=x⋅图3-8Swish函数示意图Fig.3-8SwishFunctionDiagramEfficientNet网络在很大程度上对网络进行了扩展,基于MBConv的组成,包含了以上介绍的深度可分离卷积、SE模块、残差块、Swish函数等先进的设计来达到一个对特征的高效提取,该网络的准确率大大提升,超过了一些经典网络。本实验将EfficientNet的B0版本作为基线模型,同时进行以下改进和优化以符合论文实验要求。1.2EfficientNet网络模型的改进与优化1.2.1网络模型结构的改进EfficientNet网络对于本次的实验仍有不足,因为该网络的层数众多,组成模块相对复杂,消耗的计算资源也非常大,适用于百万级别的数据集,相对于本次实验的数据集量并不是非常实用,会产生不必要的计算需求。另外其对实验中模型训练所搭建的计算机硬件环境的要求更高,可能现有硬件环境仍不能满足其计算能力,我们需要提升网络的性能和效率。所以我们需要对EfficientNet网络做一些精简,并将网络进行结构上的替换和改进,其过程如下:(1)简化网络模块对EfficientNet网络的MBConv模块的数量进行精简,去掉多个MBConv,保留最核心的结构,将原本EfficientNet中每个stage的MBConv块的重复次数设置为1,使之包含2个Conv块,4个3×3的MBConv块,3个5×5的MBConv块,每一个stage生成的特征图尺寸与原网络相同。这样能使改进后的结构满足实验数据集量的要求,减少计算量和不必要的计算需求,降低对计算机硬件的要求。(2)使用SK模块来替换MBConv中的SE模块SK模块来源于SKNet,SKNet是SENet的增强版。在注意力研究方面,SE模块关注通道,而SK模块关注卷积核,在SE模块基础上添加了多个卷积分支,而这些分支采用了不同尺寸的核,形成多个特征图。因为SK模块考虑的是,对特征图的不同核的特征提取,能够获得不同感受野的结果,而针对特征图也可以决定卷积核的重要性,含有SK模块的网络可以根据输入图像自主调节有效特征域大小,减少无效特征。对于SE模块而言,其自主提取特征的能力进一步加强了。通过实验证明,该模块应用在其他网络模型上有良好的表现,如图3-9所示,在主流的网络中,加入SK模块都要比加入SE模块的准确率高一些,证明SK模块要优于SE模块。图3-9SK模块与SE模块的识别提升对比Fig.3-9TheComparisonofSKModuleandSeModuleinRecognitionPromotion下图3-10展示了SK模块的结构图。图3-10SK模块示意图Fig.3-10SchematicDiagramofSelectiveKernelConvolution相对于SE模块,SK模块也包含了三方面的操作,分别是:1、SplitSplit操作是对原有的单一卷积过程添加多个卷积分支,也就是不同核分别卷积,例如图中使用的是两个尺寸的卷积核,当然也可以有多个分支,得到特征图U和U。该操作也可以使用深度可分离卷积等。2、Fuse该操作主要是计算卷积核的权重。首先将得到的U和U按元素求和,得到U,其次通过全局平均池化函数ℱgp将每层特征图变为实数,得到一维的实数列s∈ℝC,其计算公式如3-9所示,然后经过ℱfc的降维后升维的全连接生成紧凑的权重,即矩阵as3、Select该操作根据上一步生成的权重矩阵ac和bV我们将SK模块应用于EfficientNet网络,将所有MBConv模块中的SE模块替换为该结构,也就是在3×3或5×5的深度分离卷积之后加入SK块,以提高识别准确度。(3)加入特征融合机制在EfficientNet网络的特征提取过程中,高层次的featuremap所包含的抽象信息往往很丰富,而低层次的featuremap会包含更多的分辨率信息,这种情况会使不同层次的featuremap内的特征不全,进而使网络对于小目标的检测进度降低。为了优化对垃圾图像的不用层次featuremap的特征提取,我们需要优化EfficientNet,对其加入特征融合机制,将不同层次的featuremap中的特征进行局部以及全局的融合,对于高层拥有的抽象信息与低层所含的分辨率信息做融合操作,实现上下文信息互用。另外,本论文提出了一种针对不同尺寸特征图的融合策略,即使用不同尺寸的池化核对高层不同尺寸featuremap进行池化操作,之后再进行融合,设计的特征融合策略如下图3-11所示。图3-11特征融合策略示意图Fig.3-11SchematicDiagramofFeatureFusionStrategy在该操作过程中,模块将池化分为了三个不同的分支,分别使用了1×1、2×2、4×4的池化核,对于featuremap上的信息,我们可以通过此操作获取到更多的特征信息。在不同大小的核池化操作后,将低层的小尺寸featuremap上采样至其上个池化分支的尺寸,然后与上个分支进行融合。之后再将融合后的featuremap与上一分支进行相同的融合操作,若还有其它池化分支,就以此循环操作,最终实现所有分支的特征融合。将以上三种观点对EfficientNet网络进行改进,表3-1示出了改进后的网络的结构表。最终的结构为下图3-12(a)所示。改进后的网络包含的模块数量已经减少,针对MBConv的改进如图3-12(b),另外还加入了特征融合机制。改进后,网络总的参数量能够减少,使得计算量减少,计算速度也能够有所提升。表3-1改进后的EfficientNet网络结构表Tab.3-1ImprovedEficientNetNetworkStructureTable网络层卷积核尺寸步长输出尺寸Input224×224×3Conv/GN3×3×32×2112×112×32MBConv13×31×1112×112×16MBConv63×32×256×56×24MBConv65×52×228×28×40MBConv63×32×214×14×80MBConv65×51×114×14×112MBConv65×52×27×7×192MBConv63×31×17×7×320Conv/GN1×1×3201×17×7×1280GAP1×1280FC1×1000Softmax1×4a)整体网络结构图b)含SK模块的MBConvblock结构图3-12改进后的EfficientNet网络结构Fig.3-12ImprovedEfficientNetNetworkStructure1.2.2网络模型的其他优化(1)组归一化替代EfficientNet中的批量归一化BN对图像做归一化就是通过对网络中输入的图像转化为一种标准的形式。我们需要找出图像之间存的一个不变量,通过这个不变量我们就能对图像进行归类,将他们规范到一个系列。这样有利于模型收敛,加快目标函数全局最小值的查找速度,另外还能够抵御几何变换的影响。在EfficientNet中所使用的是批量归一化BN,其优点是能使数据形成正态分布,使得数据不仅分布一致,而且避免梯度消失,加速训练。但是其仍有一个缺点,当batchsize过小时,训练的效率会降低,而且现象明显,增加模型的错误率。而组归一化GN在进行操作时,能够按照通道进行分组。将多个通道合并在一起进行处理,计算每一组通道内的均值和方差,将特征归一化。批量大小并不影响其计算,其准确率也非常稳定。误差率也相对于BN而言大大降低。组归一化的公式如式3-11所示。Si其中,C/G表示每一组的通道数,kC针对本次实验,我们将网络中的批量归一化BN替换为组归一化GN,能够有效解决在batchsize过小的时候产生的训练性能下降的问题,主要是在Conv块之后和MBConv块中的BN替换为GN。(2)使用带有Warmup的余弦退火学习率学习率在神经网络中是一个基础参数,在目标函数的优化以及寻找全局最小值方面起着重要作用。梯度下降法能够帮助我们不断逼近全局最小值,但是在这一过程中找到最小值并不容易,如下图3-13示出了目标函数寻找最小值的大致过程。其在大多数情况下会产生多个低谷,每个低谷的最底处还存在一个局部极小值,我们在网络训练时一般会找到极小值却往往忽略了其是否属于全局的最小值。图3-13梯度下降算法寻找目标优化函数最小值Fig.3-13GradientDescentAlgorithmtoFindtheMinimumofObjectiveOptimizationFunction函数值曲线趋势为先缓后急,下降速度并不均衡,中间会立刻以大角度下降,最终速度变为缓慢。我们可以利用这种特点,防止陷入局部极小值,在下降的阶段突然提高学习率跳出,最终找到全局最小值。余弦退火的公式如式3-12所示。ηt其中,i表示第几次训练,ηmaxi和ηmini分别是学习率的最大值和最小值,Tcur学习率的设定尤为关键,但是不容易把握,因为其过大时会让模型产生震荡。Warmup方式能够较好的有助于学习率的预热,其原理就是先将学习率设定为小值,之后慢慢加大,最终达到原先想要的初值为止,然后按照正常流程训练。采用Warmup的余弦退火学习率与通常的逐步衰减学习率的方式进行对比,结果如下图3-14。虽然从准确率上来看,两者最终都能达到一致,但是逐步衰减学习率的方式有一定的随机性,step不容易确定,当学习率衰减的时候,其跳跃变化较大,带来的是较大的动量。a)学习率对比b)验证集准确率图3-14带Warmup的余弦退火学习率与通常逐步衰减学习率方式对比图Fig.3-14ComparisonofCosineAnnea
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年中国证券投资基金业协会校园招聘备考题库及参考答案详解1套
- 2025年中国人民财产保险股份有限公司马鞍山市分公司校园招聘11人备考题库及完整答案详解1套
- 2025年汉中市铁路中心医院招聘医学检验技师的备考题库完整答案详解
- 驾驶证文考试题及答案
- 2025年宁德市教育局关于宁德市第十六中学公开遴选(二轮)在职教师的备考题库及答案详解一套
- 2025年绍兴临空运营服务有限公司公开招聘项目制管理人员备考题库及答案详解1套
- 2025年复旦大学管理职员统一公开招聘备考题库及参考答案详解一套
- 2025年入职能力测试试题及答案
- 2025年第二批次安顺市重点人才“蓄水池”需求岗位专项简化程序公开招聘7人备考题库完整答案详解
- 广东医科大学附属医院2026年专业技术人员招聘132人备考题库完整答案详解
- 共创账号合同协议
- 2026年赣州职业技术学院单招职业技能测试题库带答案详解
- 2025年区域经济一体化战略可行性研究报告
- 港口安全规划与应急预案
- 2025专精特新小巨人打分表(密件)
- 国家自然科学基金申报培训
- MOOC 光学发展与人类文明-华南师范大学 中国大学慕课答案
- GB/T 38658-20203.6 kV~40.5 kV交流金属封闭开关设备和控制设备型式试验有效性的延伸导则
- 疲劳与断裂完整
- 2022年研究生考试数学二试题及解析
- 矿山地质环境恢复治理讲课稿
评论
0/150
提交评论