ELAN设计理念:通过梯度路径分析设计网络设计策略

news2024/11/24 3:51:37

在这里插入图片描述

设计高效、高质量的表达性网络架构一直是深度学习领域最重要的研究课题。当今的大多数网络设计策略都集中于如何集成从不同层提取的特征,以及如何设计计算单元来有效地提取这些特征,从而增强网络的表现力。本文提出了一种新的网络设计策略,即基于梯度路径分析来设计网络结构。总体而言,当今主流的网络设计策略大多基于前馈路径,即基于数据路径设计网络架构。在本文中希望通过提高网络学习能力来增强训练模型的表达能力。由于驱动网络参数学习的机制是反向传播算法,本文设计了基于反向传播路径的网络设计策略。提出了layer-level、stage-level和network-level的梯度路径设计策略,并通过理论分析证明了设计策略的优越性和可行性和实验。


1. 简介

深度神经网络(DNN)现在广泛用于各种设备,以解决不同类型的任务。数百万科学家、工程师和研究人员参与了深度学习相关的工作。他们都期待着设计出能够满足他们需求的高效、准确、低成本的解决方案。因此,如何设计适合其产品的网络架构变得尤为重要。

自2014年以来,许多DNN在各种任务上取得了接近人类或优于人类的性能。例如,谷歌的GoogLeNet和微软的PReLUNet在图像分类方面,FacebookDeepface在人脸识别方面,DeepMindAlphaGo在围棋棋盘上等等。基于上述领域的开始,一些研究人员继续开发更先进的新架构或算法以击败上述方法;

其他研究人员关注如何使DNN相关技术在人类日常生活中实用。Iandola等人提出的SqueezeNet是一个典型的例子,因为它将AlexNet的参数数量减少了50倍,但可以保持相当的精度。MobileNetShuffleNet也是很好的例子。前者将实际硬件操作延迟直接添加到架构设计的考虑中,而后者将硬件特性的分析用作设计神经网络架构的参考。

就在ResNetResNeXtDenseNet架构解决了深层网络训练中遇到的收敛问题之后,近年来CNN架构的设计集中在以下几点:

  1. 特征融合
  2. 感受野增强
  3. 注意机制
  4. 分支选择机制

换句话说,大多数研究遵循深度网络的共同认知,即从浅层提取low-level特征,从深层提取high-level特征。根据上述原则,可以使用它们来设计神经网络架构,以有效地组合数据路径(前馈路径)中的不同level的特征。

然而,这样的设计策略是否一定正确?从图1中发现,通过调整目标和损失层的配置,可以控制每个层(浅层或深层)学习的特征。也就是说,权重学习什么样的特征主要取决于使用什么样的信息来教它,而不是输入来自哪些层的组合。基于这一发现,作者重新定义了网络设计策略。


在这里插入图片描述

图1:我们可以发现,无论是浅层模型还是深层模型,
还是深层网络中的浅层或深层,它们都具有提取低级或高级特征的能力。

由于提出网络结构可以用目标函数可以指导神经网络学习信息的概念来设计,因此必须首先了解目标函数如何影响网络权重的更新。

目前,主要的权重更新方法是反向传播算法,它使用偏微分生成梯度,然后通过梯度下降来更新权重。该算法以链式规则的方式将梯度信息传播到浅层,并重复这些步骤,直到更新所有层的权重。换句话说,目标函数教导的信息以梯度的形式在层之间传播。

在本文中提出通过分析通过目标函数的引导生成的梯度,可以在执行反向传播过程时通过梯度路径来设计网络结构。作者分别为3个不同级别的策略设计网络架构,如layer-levelstage-levelnetwork-level,如下所述:

1. Layer-level设计

我们在这个层次上设计了梯度分流策略,并使用它们来确认假设的有效性。在这个水平上,我们设计了梯度流分流策略,并使用它们来确认假设的有效性。我们调整层数,计算残差连接的信道比,然后设计Partial Residual Network(PRN)

2. Stage-level设计

我们添加硬件特征以加快网络推理速度。最大化梯度组合,同时最小化硬件计算成本,因此设计了Cross Stage Partial Network(CSPNet)

3. Network-level设计

我们增加了梯度传播效率的考虑,以平衡网络的学习能力。当设计网络架构时,还考虑了整个网络的梯度传播路径长度,因此设计了Efficient Layer Aggregation Network(ELAN)


2. 本文方法

2.1. 网络设计策略

如图2所示,在本文中将网络设计策略分为两种:

  1. 数据路径设计策略
  2. 梯度路径设计策略

数据路径设计策略主要侧重于设计特征提取、特征选择和特征融合操作,以提取具有特定属性的特征。这些特征可以帮助后续层使用这些特征进一步获得更好的属性,以便进行更高级的分析。

应用梯度路径设计策略的目的是分析梯度的来源和组成,以及如何通过驱动参数更新梯度。然后,可以使用上述分析的结果来设计网络架构。设计理念是希望最终的参数利用率更高,从而达到最佳的学习效果。


在这里插入图片描述

图2:两种主要的网络设计策略:(a)数据路径设计策略;和(b)梯度路径设计策略。

接下来将分别讨论数据路径设计策略梯度路径设计策略优点缺点

数据路径设计策略有3个优点:

  1. 可以提取具有特定物理意义的特征。例如,使用非对称计算单元来提取具有不同感受野的特征;
  2. 可以为不同的输入自动选择具有参数化模型的合适的操作单元。例如,使用kernel选择来处理输入具有不同的性质;
  3. 可以直接重用所学习的特征。例如,特征金字塔网络可以直接利用从不同层提取的特征进行更准确的预测。

数据路径设计策略有2个缺点:

  1. 在训练过程中,有时会导致效果的不可预测的降级,此时需要设计更复杂的架构来解决问题。例如,non-local网络的成对关系很容易退化为一元信息;
  2. 各种专门设计的运算单元容易导致性能优化的困难。例如,在专用于AIASIC设计中,如果设计者想要添加算术单元,则需要额外的一组电路。

梯度路径设计策略,总共有3个优点:

  1. 可以有效地使用网络参数,在这一部分中提出通过调整梯度传播路径,不同计算单元的权重可以学习各种信息,从而实现更高的参数利用效率;
  2. 具有稳定的模型学习能力,由于梯度路径设计策略直接确定并传播信息以更新权重到每个计算单元,因此所设计的架构可以避免训练期间的退化;
  3. 具有高效的推理速度,梯度路径设计策略使得参数利用非常有效,因此网络可以在不增加额外复杂架构的情况下实现更高的精度。

由于上述原因,所设计的网络在架构上可以更轻、更简单。

梯度路径设计策略有1个缺点:

  1. 当梯度更新路径不是网络的简单反向前馈路径时,编程的难度将大大增加。

2.2. Partial Residual Networks

Partial Residual Networks(PRN)其设计理念属于layer-level设计策略。在PRN的设计中,主要概念是最大化用于更新每层的权重的梯度组合。影响梯度组合的主要因素有2个:

  1. 第一个是梯度的源层。源层由连接到梯度路径的不相交边缘的节点组成;
  2. 第二个因素是梯度流通过链式法则的操作从损失层到达特定层所需的时间

需要注意的一点是,当梯度在链规则更新过程中发生变化时,其覆盖的丢失信息量将随着链的增长而逐渐减少。作者将上述持续时间定义为梯度流从损失层行进到特定层所需的层数。在PRN中提出了以下2种结构来改进ResNet

1. Masked residual layer

ResNet的设计中,将每个计算块的输出与identity连接一起添加,这样的结构称为残差层。在PRN中,将identity连接乘以二进制Mask,并且只允许将某些通道的特征映射添加到计算块的输出中。将此结构称为Masked residual layer,其架构如图3所示。使用Masked residual layer的机制允许将特征图分为两部分,其中与被Mask的通道相对应的权重和与具有identity连接的通道相对的权重将由于上述identity效应而显著增加梯度组合的数量。此外,梯度源的差异将同时影响整个梯度时间戳(沿时间轴的时间节点),从而使梯度组合更加丰富。


在这里插入图片描述

图3:Masked residual层。只有部分通道将通过 identity连接。

2. Asymmetric residual layer

ResNet架构下,只能添加相同大小的特征图,这就是为什么它是一个非常受限的架构。通常,当执行优化的架构的计算量和推理速度时,常常受到这种架构的限制,无法设计出符合要求的架构。在PRN架构下,提出的Masked residual layer可以将通道数量的不一致性视为某些通道被阻塞,从而允许具有不同通道数量的特征图执行Masked residual操作。

将以上述方式操作的层称为Asymmetric residual layerAsymmetric residual layer以这样的方式设计,即网络架构更灵活,并且更能够保持基于梯度路径的模型的属性。例如,当进行特征集成时,一般方法需要额外的过渡层来将不同的特征映射投影到同一维度,然后执行添加操作。然而,上述操作将增加大量参数和计算量,并且还将使梯度路径更长,从而影响网络的收敛。引入Asymmetric residual layer可以完美地解决类似问题。

2.3. Cross Stage Partial Networks

CSPNet于2019年提出,它是一个基于Stage-level梯度路径的网络。与PRN一样,CSPNet基于最大化梯度组合的概念。CSPNetPRN的区别在于,后者侧重于从理论角度确认梯度组合对网络学习能力的改善,而前者则是为了进一步优化硬件推理速度而额外设计的。因此,在设计CSPNet时,将架构从Layer-level扩展到Stage-level,并优化整体架构。

CSPNet主要有以下2种结构:

1. Cross stage partial operation

从最大化梯度源的角度来看可以很容易地发现,当每个通道具有不同的梯度路径时,梯度源可以最大化。此外,从最大化梯度时间戳的角度来看,当每个通道具有不同深度的计算块时,可以最大化梯度时戳的数量。

根据上述概念可以导出一种设计用于最大化梯度源和梯度时间戳的架构。这种架构将是类似fractal-like的架构和具有深度卷积的类似分形的架构。虽然上述设计可以有效地提高参数利用率,但会大大降低并行化能力。此外,这将导致模型显著降低GPUTPU等推理引擎上的推理速度。

从前面的分析知道划分通道可以增加梯度源的数量,并且使不同通道连接的子网络具有不同的层可以增加梯度时间戳的数量。本文设计的Cross stage部分操作可以最大化梯度的组合,并在不破坏架构的情况下提高推理速度,并且可以并行化。

该体系结构如图4所示。在图4中,将stage的输入特征图分成两部分,并使用这种方式增加梯度源的数量。


在这里插入图片描述

图4: Cross stage partial operation ,CSP将原始层的特征图分为两部分,
一部分经过计算块,另一部分与处理后的特征图结合到下一阶段。

具体步骤如下:首先将输入特征图分成两部分,其中一部分通过计算块,该计算块可以是任何计算块,如Res BlockResX BlockDense Block。至于另一部分,它直接跨越整个Stage,然后与经过计算块的部分集成。由于只有部分特征图进入计算区进行操作,这种设计可以有效地减少参数量、操作、内存流量和内存峰值,从而使系统实现更快的推理速度。

2. Gradient flow truncate operation

为了使设计的网络架构更强大进一步分析了用于更新CSPNet的梯度流。由于计算块中经常使用shortcut连接,提供2条路径的梯度源必然会重叠很多。当特征图通过kernel函数时,它相当于空间投影。通常可以在两条路径的末端插入过渡层,以截断复制的梯度流。通过以上步骤可以使从2条路径和相邻Stage学习到的信息具有更明显的多样性。

作者设计了3种不同的重复梯度流截断操作组合,如图5所示。这些操作可以与不同的架构相匹配,例如计算块和下采样块,以获得更好的结果。


在这里插入图片描述


2.4. 高效的层聚合网络

高效层聚合网络(ELAN)的代码于2022年7月发布。在网络层面,它属于梯度路径设计网络的范畴。设计ELAN的主要目的是解决在执行模型缩放时深度模型的收敛性会逐渐恶化的问题。

作者分析了通过整个网络中每个层的最短梯度路径和最长梯度路径,从而设计了具有有效梯度传播路径的层聚合架构。ELAN主要由VoVNetCSPNet组成,并利用计算块中的堆栈结构优化了整个网络的梯度长度。在接下来的内容中将详细说明计算块中的堆栈是如何工作的。

堆栈在计算块中。当在做模型缩放时会出现一种现象,即当网络达到一定深度时,如果继续堆叠计算块,精度增益将越来越小。更糟糕的是,当网络达到某个临界深度时,其收敛性开始恶化,导致总体精度比浅层网络差。

最好的例子之一是Scaled-YOLOv4,看到它的P7模型使用了昂贵的参数和操作,但只有少量的精度增益,而且在许多流行网络中也会出现同样的现象。例如,ResNet-152的计算强度大约是ResNet-50的3倍,但在ImageNet上的精度提高不到1%。当ResNet堆叠到200层时,其精度甚至比ResNet-152更差。此外,当VoVNet堆叠到99层时,其精度甚至远低于VoVNet-39

从梯度路径设计策略的角度来看,作者推测VoVNet的精度退化比ResNet快得多的原因是因为VoVNet堆叠基于OSA模块。每个OSA模块都包含一个过渡层,因此每次堆叠OSA模块时,网络中所有层的最短梯度路径都会增加一个。

至于ResNet,它是由残余块堆叠的,残余层的堆叠只会增加最长的梯度路径,而不会增加最短的梯度路径。为了验证模型缩放的可能影响,作者基于YOLOR-CSP进行了一些实验。从实验结果中发现,当堆叠层达到80+层时,CSP fusion first的精度开始优于正常的CSPNet。此时,每个Stage的计算块的最短梯度路径将减少1。随着网络的不断扩大和加深,CSP fusion last将获得最高的精度,但此时所有层的最短梯度路径将减少1。

上述实验结果证实了先前的假设。在上述实验的支持下,如图6所示,在ELAN中设计了“计算块中的堆栈”策略。设计的目的是避免使用过多过渡层的问题,并使整个网络的最短梯度路径快速变长。当网络堆叠得更深时,上述设计策略能够成功地训练ELAN


在这里插入图片描述
在这里插入图片描述

图6:高效的图层聚合网络

3. 分析

在本节中,将分析基于经典网络架构提出的梯度路径设计策略。

  • 首先,将使用梯度组合的概念分析现有的网络架构和所提出的PRN,该示例表明表现良好的网络架构确实具有更丰富的梯度组合。

  • 然后,将分析所提出的CSPNet如何带来更丰富的梯度组合和其他好处。

  • 最后,通过stop梯度分析了梯度路径长度的重要性,从而证实了所提出的ELAN具有设计概念上的优势。

3.1. 梯度组合分析

一般研究人员通常使用最短梯度路径和集成特征的数量来衡量网络架构的学习效率和能力。然而,从SparseNet中可以发现,如表1所示,这些度量与准确性和参数使用并不完全相关。作者观察了梯度传播的过程,发现用于更新不同层权重的梯度组合与网络的学习能力非常匹配,在本节中将分析梯度组合。

梯度组合由2种类型的组件组成,即Gradient TimestampGradient Source



1. Gradient Timestamp

图7显示了ResNetPRNDenseNetSparseNet的架构。其中,作者展开了cascaded residual connection和concatenation connection以便于观察梯度传播过程。此外,图7还显示了每个架构上的gradient flow delivery timestampsgradient sequence相当于广度优先搜索过程,每个sequence将访问上一轮遍历所到达的所有outdegree nodes

从图7中可以看到PRN使用通道分割策略来丰富由对应于不同通道的权重接收的Gradient Timestamp。至于SparseNet,它使用稀疏连接来使与不同层相对应的权重连接所接收的Timestamp更加可变。

上述两种方法都可以学习具有不同权重的更多样的信息,这使得提出的架构更强大。


在这里插入图片描述


2. Gradient Source

图8显示了第1个梯度时间戳处ResNetPRNDenseNetGradient Source。从图8可以看出,connection-based的架构,如DenseNetSparseNet,属于必须特别处理的网络。这是因为在梯度传播过程中,如果它是由同一层在某个Gradient Timestamp传播的梯度信息,因为梯度流已经被预先分割,所以它不能像普通网络那样被处理。


在这里插入图片描述


对于基于残差连接的架构,如ResNet和PRN,完全相同的梯度信息被传播到所有的outdegree层。由于PRNoutdegree仅连接到其他层的某些通道,因此它可以具有比ResNet整体更丰富的梯度组合。

此外,还有使用其他split-transform merge策略的网络架构,例如基于group convolution-basedResNeXt和基于depth-wise convolutionMobileNet等,这也可以增加Gradient Source的数量。

3. 总结

总之,通过对梯度反向传播过程中产生的Gradient TimestampGradient Source的分析,可以清楚地解释现有的流行网络架构以及提出的PRN所学习的信息和参数的利用效率。在ResNet中,不同的层共享相同Timestamp和相同Gradient Source的许多梯度,DenseNet将相同Timestamp但不同Source的梯度信息传递给相应的层。这部分清楚地解释了为什么基于串联连接的DenseNet可以避免像基于残差连接的ResNet那样容易地学习大量无用信息的问题。本文提出的PRN使用简单的masked residual layer来增加沿时间轴的梯度组合的数量,同时保持ResNet网络拓扑,并转移Gradient Source,从而增加Gradient Source的可变性。

3.2. 跨阶段部分策略分析

CSPNet旨在增强在线学习能力,同时加快推理速度,因此将分别从这两个方面讨论CSPNet策略的优势。在第3.1节中进行的分析中观察到,即使Gradient Source生成的组合数量相同,当不同组合之间接收到的公共分量减少时,这使得梯度分量更丰富,也使网络学习更好。这种现象实际上发生在为单层权重学习大量参数的过程中。

例如,dropout使用随机伯努利Mask神经元来防止参数学习协同适应信息。从数学模型的角度来看,dropout是通过使用不同输入产生的梯度来更新不同部分的权重,这相当于随机集成结构。至于CSPNet,它通过梯度路径上梯度的时间差和空间变换,直接增加了梯度组合的丰富性。接下来将介绍CSPNet使用什么策略来解决重复梯度信息的问题,以及它如何提高资源利用率。

1. Duplicated Gradient Information

在第3.1节中分析了梯度组合的数量以及多样性对网络学习能力的影响。在CSPNet中进一步分析了不同层接收的梯度信息内容,并设计了架构以提高参数使用效率。从PRNSparseNet的梯度组合可以发现,它们在增加梯度组合丰富度的过程中具有共同性,即通过残差连接或密集连接接收大量重复梯度信息的情况显著减少。作者推测,这些重复的梯度是大量权重容易学习共适应信息的主要原因。

对于PRN,它利用梯度定时差来更新部分通道的权重。随着链式规则的更新过程,上述时间差将扩散到整个网络,然后实现更丰富的梯度组合。

此外,CSPNet直接使用cross stage使整个stage的两条路径具有很大的时间差,并使用不同的融合结构来减少stagestage之间或计算块路径与cross stage connection路径之间的重复梯度信息。

2. Resource Usage Efficiency

Darknet-53为例,假设cross stage部分操作根据通道的方向将特征图分成两个相等的部分。此时,残差块的输入通道数和输出通道数减半,而中间的通道数保持不变。

根据上述结构,计算块的总体计算和参数量将减少到原始的一半,而内存峰值是输入特征图和输出特征图的大小之和,因此将减少到原来的2/3。此外,由于整个计算块中卷积层的输入通道和输出通道相等,因此此时的存储器访问成本将最小。

3. 总结

总之,CSPNet成功地将梯度组合的概念与硬件利用效率相结合,使得所设计的网络架构同时提高了学习能力和推理速度。CSPNet仅使用简单的channel splitcross stage connection并在不改变原有网络计算单元的情况下成功完成预设目标。

CSPNet的另一个优点是它可以应用于许多流行的网络架构,并在各个方面提高整体网络效率。在表2中展示了应用于几种流行网络架构的CSPNet的优异性能。最后,由于CSPNet对许多硬件资源的要求较低,因此它适用于具有更严格硬件约束的设备上的高速推理。



3.3. 坡度路径长度分析

如第3.1节所述,整个网络的梯度路径越短并不意味着学习能力越强。此外,即使整个梯度组合路径的长度是固定的,作者发现ResNet的学习能力仍然下降当堆叠非常深时。然而,作者发现上述问题可以用于在训练阶段使用随机深度将ResNet分解为较浅的随机子网络进行训练,这可以使超深ResNet收敛到更好的结果。

上述现象告诉我们,在分析梯度路径时,不仅可以查看整个网络的最短梯度路径和最长梯度路径,还需要更详细的梯度路径分析。在下文中,将通过在训练期间调整梯度流来控制梯度路径长度,然后根据结果讨论在设计网络架构时的梯度长度策略。

1. Stop gradient

首先基于ResNet探讨最短梯度长度的重要性。与PlainNet相比,ResNet中的每个残差块除了通过计算块的梯度之外,还通过identity连接在计算块上具有一部分梯度。这里,如图9所示,分别对计算块和identity连接执行Stop梯度操作。


在这里插入图片描述


当在identity连接上执行Stop梯度时,整个网络的梯度路径将类似于PlainNet。也就是说,最长的梯度路径与最短的梯度路径长度相同,网络深度也相同。当在计算块上执行Stop梯度时,最短的梯度路径将直接穿过所有残差连接并直接到达起始层,此时最短梯度路径长度为1。由于每个计算块有两层,因此其最长梯度路径为2。可以使用这两组设置来观察残差学习本身的好处和梯度路径的减少。



使用Microsoft COCO数据集中的目标检测和实例分割作为基线模型,对YOLOR CSP进行消融研究,结果如表3所示。实验结果表明,在ResNet中执行缩短的梯度路径确实是深度网络更好收敛的重要因素。

2. Gradient path planning

根据以上分析和在YOLOR-CSP中使用CSP融合进行的模型缩放实验,重新规划了VoVNet的过渡层并进行了实验。首先移除深度VoVNet的每个OSA模块的过渡层,只留下每个阶段中最后一个OSA模块中的过渡层。以与上述相同的方式组织网络的最长梯度路径和通过每个层的最短梯度路径。同时,还将CSPNet结构应用于上述网络,以进一步观察CSPNet的多功能性,相关实验结果如表4所示。可以清楚地看到,深度VoVNet已经从无法收敛变为能够很好地收敛并获得非常好的精度。



3. 总结

简而言之,从上述实验和分析中推断,在规划整个网络的梯度路径时,不仅应该考虑最短的梯度路径,而且应该确保每个层的最短梯度路径都可以有效地训练。至于整个网络的最长梯度路径的长度,它将大于或等于任何层的最长的梯度路径。因此,在实施网络级梯度路径设计策略时,需要考虑网络中所有层的最长最短梯度路径长度,以及整个网络的最长梯度路径。

4. 实验

4.1. Layer-level梯度路径设计策略



在PRN实验中将被masked residual layer mask的通道数设置为原始通道数的一半,实验结果如表5所示。由于PRN的设计维护了整个网络的所有参数和拓扑结构,所以只有残差连接中的加法操作减少了一半,所以总体计算量几乎没有变化。

然而,YOLOR-PRN在精度上得到了显著的提高,因为每层都使用了用来更新权重的梯度组合。与YOLOR-v3相比,PRN在目标检测上提高了0.5%的AP,也可以观察到高质量和显著的改进。在实例分割上,将AP提高了0.1%,AP75提高了0.3%。

4.2. Stage-level梯度路径设计策略



CSPNet实验中遵循优化推理速度的原则,将梯度分割比设置为50%-50%,实验结果如表6所示。由于只有一半的通道特征图将进入计算块可以清楚地看到,与YOLOR-v3相比,YOLOR-CSP显著减少了22%的计算量。然而,通过丰富的梯度组合,YOLOR-CSP在目标检测上显著提高了1.5%。与YOLOR-v3相比,YOLORCSPNet(YOLOR-CSP)的组合增加了更多高质量的结果。

作者进一步比较了梯度流截断操作来减少重复梯度信息,清楚地看到YOLOR-CSP策略比CSP fusion firstCSP fusion last学习得更好。值得一提的是,无论采用何种融合策略,基于csp的体系结构的计算负荷都比YOLOR-v3低得多,精度也远高于YOLOR-v3

4.3. Network-level梯度路径设计策略



在ELAN实验中分别测试了计算块在BackboneNeck的叠加时间,结果如表7所示。从这个表中可以清楚地看出,ELAN在比YOLOR-v3少35%的计算量下,仍然可以提高0.7%的目标检测性能。

ELAN中可以灵活地设置堆栈的数量,从而在精度和计算量之间进行权衡。从表7中列出的实验结果可以看到,在堆栈设置2,1s,YOLOR-ELAN可以在降低26%计算量的情况下,显著提高目标检测和实例分割的性能分别1.9%和0.6%。

4.4. 比较

最后,综合比较了Layer-level 设计策略设计的YOLOR-PRNStage-level 设计策略设计的YOLOR-CSPNetwork-level 设计策略设计的YOLOR-ELAN,以及基线YOLOR-v3YOLOv5(r6.2),结果如表8所示。



从表中可以看出,基于梯度路径设计策略设计的模型在各个方面都优于基于基线的方法。此外,无论计算量如何。由Network-level 设计策略设计的YOLOR-ELAN在参数数量和精度方面可以全面获得最突出的性能。

研究结果表明,基于梯度路径分析能够设计出更好的网络架构设计策略。如果与一般的基于数据路径的策略相比,由数据路径策略设计的体系结构通常需要额外的参数或计算成本来获得更好的精度。相比之下,这三种基于梯度路径设计策略的体系结构可以显著提高整体性能。

5. 结论

本文提出了一种具有梯度路径的网络体系结构设计策略。我们提出了三种不同的梯度路径设计策略,这些策略证实了无论从 layer-levelstage-levelnetwork-level进行设计,都可以有效、全面地改进网络架构,实现良好的学习能力。与基于数据路径的设计策略相比,基于数据路径的设计策略往往需要设计额外的计算单元和复杂的拓扑结构,以获得更好的学习结果。对于梯度路径设计策略,可以完全依赖现有的计算单元,通过简单的梯度路径重新规划,可以减少参数、计算、硬件资源,同时提高推理速度和网络学习效果。本文重新定义了网络的设计策略,并创建了一个有效而简洁的建筑设计规则。


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/154711.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Django框架MVT模型工作流程

Django 一、Django介绍 Django是一个开源的Web应用框架,由Python写成。采用了MTV的框架模式,它最初是被用来做CMS(内容管理系统)软件。 使用Django,程序员可以方便、快捷地创建高品质、易维护、数据库驱动的应用程序…

聚威新材在科创板被暂缓审议:毛利率高于同行,张天荣为董事长

2023年1月10日,上海证券交易所披露的信息显示,上海聚威新材料股份有限公司(下称“聚威新材”)被科创板上市委员会暂缓审议。据贝多财经了解,聚威新材仍有多个问题需进一步落实事项。 上市委要求聚威新材落实&#xff1…

YOLOv5进行水域游泳者检测系统源码+标注好的数据集

YoloV5对水域中游泳者进行检测 一、说明 1.1 项目说明 完整代码下载地址:YOLOv5进行水域游泳者检测系统源码标注好的数据集 本项目是使用 YoloV5 来训练自己的数据集,所以仅仅展示训练自定义数据集的过程。 本次视频检测的结果已经上传至B站&#x…

MATLAB-样条插值运算

MATLAB中不仅提供了一维插值、二维插值和三维插值方法,还提供了样条插值的方法。其主要思想是:假定有一组已知的数据点,希望找到该组数据的拟合多项式。在多项式的拟合过程中,对于每组相邻的样本数据点,存在一条曲线,该…

MCU-51:单片机之AD模数转换与DA数模转换

目录一、AD/DA介绍二、硬件电路模型2.1 模型2.2 硬件电路三、运算放大器3.1 运算放大器介绍3.2 运放电路四、DA原理4.1 T型电阻网络DA转换器:4.2 PWM型DA转换器:五、AD原理六、AD/DA性能指标七、XPT2046介绍7.1 功能说明7.2 XPT2046时序八、代码演示8.1 …

JAVA17连接sqlserver:驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立安全连接

JAVA17连接sqlserver报错 : com.microsoft.sqlserver.jdbc.SQLServerException: 驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立安全连接。错误:“The server selected protocol version TLS10 is not accepted by client preferences [TLS13, TLS12]”。 Clien…

【Java寒假打卡】Java基础-字节输入流和字节输出流

【Java寒假打卡】Java基础-字节输入流和字节输出流)概述字节输出流快速入门字节输出流的注意事项输出字节流-一次性写多个数据字节输出流的两个问题try-catch-finally捕获异常字节输入流写数据字节流读数据 一次性读取多个数据案例、文件复制使用字节数组进行拷贝文…

基于Springboot+vue+uni-app的校园失物招领平台源码+数据库,含主体PC端、微信小程序和web后台数据管理平台

校园失物招领网站 | lijinghai 项目介绍 📖 👉基于Springbootvueuni-app的校园失物招领平台. 含平台主体PC端、微信小程序和web后台数据管理平台. 完整代码下载地址:基于Springbootvueuni-app的校园失物招领平台源码数据库 失物招领信息一…

枚举算法实例应用(二)

枚举算法实例应用(二) Extended Lights Out Description In an extended version of the game Lights Out, is a puzzle with 5 rows of 6 buttons each (the actual puzzle has 5 rows of 5 buttons each). Each button has a light. When a button …

什么是云原生(非常详细)

云原生计算加速了应用与基础设施资源之间的解耦,通过定义开放标准,向下封装资源,将复杂性下沉到基础设施层;向上支撑应用,让开发者更关注业务价值。此外,云原生计算提供统一的技术栈,动态、混合…

LabVIEW创建Web服务

LabVIEW创建Web服务在LabVIEW项目中开发Web服务,组合并配置构成Web服务的VI和其他文件。按照下列步骤创建一个Web服务项目和两个HTTP方法VI。创建一个组织Web服务文件的LabVIEW项目。将项目保存为Tutorial.lvproj。右键单击我的电脑并选择新建Web服务。LabVIEW在该终…

C语言基本数据类型

一、float、double和 long double 1.1 声明浮点型变量 1.2浮点型常量 1.3 打印浮点值 二、复数和虚数类型 三、其他类型 一、float、double和 long double 对于金融和数学的程序经常使用浮点数,而C语言中的浮点类型有float、double和 long double类型。常见的…

CentOS Stream 9下RabbitMQ安装教程(最新RabbitMQ安装教程)

CentOS Stream 9 RabbitMQ安装教程前言Erlang下载安装RabbitMQ下载安装启动RabbitMQ配置RabbitMQManagement Plugin访问和权限日志文件和管理总结和收获如果博主的文章对您有所帮助,可以评论、点赞、收藏,支持一下博主!!!前言 操作系统:Cent…

RocketMQ消息短暂而又精彩的一生

核心概念 NameServer:可以理解为是一个注册中心,主要是用来保存topic路由信息,管理Broker。在NameServer的集群中,NameServer与NameServer之间是没有任何通信的。Broker:核心的一个角色,主要是用来保存消息…

刚录制德云社相声春晚,又带领徒弟排练京剧,郭德纲成功不是偶然

不知道大家有没有发现一种现象,很多人在底层的时候,都是削尖了脑袋往前钻,可是一旦有一天功成名就,就会刀兵入库马放南山。这种做法通俗地讲,就是功成名就激流勇退,比如马云、刘强东、黄征等互联网企业大佬…

【RabbitMQ】MQ的基本概念、RabbitMQ简介及安装

文章目录MQ的基本概念MQ概述MQ 的优势和劣势常见的MQ产品RabbitMQ简介RabbitMQ的安装1. 安装依赖环境2. 安装Erlang3. 安装RabbitMQ4. 开启管理界面及配置5. 启动6. 配置虚拟主机及用户用户角色Virtual Hosts配置创建Virtual Hosts设置Virtual Hosts权限MQ的基本概念 MQ概述 …

Python3,我把新年祝福写在“雨“中,你看,雨一直下,气氛还算融洽,在同个屋檐下....

新年愿望写在"雨"中1、引言2、代码实战2.1 模块介绍2.1.1 Pygame 介绍2.1.2 Pygame的display介绍2.1.3 Pygame的event介绍2.1.4 Pygame的font介绍2.2 代码示例3、总结1、引言 小屌丝:鱼哥,2023年了, 你有啥愿望啊? 小鱼…

同消费互联网时代的轰轰烈烈相比,产业互联网似乎低调了许多

毫无疑问的是,一场衍生于产业的深度变革正在上演。在这样一场深度变革之中,曾经看似无法改变的存在,有了进化的可能性;曾经让玩家们望而却步的领域,有了进军的可能性。如果对这样一场深度变革进行一次总结的话&#xf…

测试分类那么多,哪些是你最需要掌握的内容?

目录 一、按照测试对象分类 1.1、可靠性测试 1.2、容错性测试 1.3、安装卸载测试 1.4、内存泄漏测试 1.5、弱网测试 二、按照是否查看代码分类 2.1、黑盒测试(系统测试) 2.2、白盒测试(单元测试) 2.3、灰盒测试&#xff0…

[数据结构1-1] 线性表

P3156 【深基15.例1】询问学号 题目描述 有 n ( n≤210^6) 名同学陆陆续续进入教室。我们知道每名同学的学号(在 1 到 10^9之间),按进教室的顺序给出。上课了,老师想知道第 i个进入教室的同学的学号是什么(最先进入…