PeLK:通过周边卷积的参数高效大型卷积神经网络

PeLK: Parameter-efficient Large Kernel ConvNets with Peripheral Convolution

通过周边卷积的参数高效大型卷积神经网络

论文链接:http://arxiv.org/abs/2403.07589

代码链接:[无]

1、摘要

提出了一种类似人类的周边卷积human-like peripheral convolution,通过参数共享有效地减少了密集网格卷积的90%以上的参数量,并成功地将内核尺寸扩展到非常大。周边卷积行为类似于人类,将卷积的复杂度从 O ( K 2 ) O(K^{2}) O(K2)降低到 O ( l o g K ) O(log K) O(logK),而不会牺牲性能。在此基础上,作者提出了参数高效的大型内核网络(PeLK)。提出的PeLK在ImageNet分类、ADE20K语义分割和MS COCO目标检测等各种视觉任务上超越了现代视觉Transformer和卷积神经网络架构,如Swin、ConvNeXt、RepLKNet和SLaK。作者首次成功将CNN的内核尺寸扩展到前所未有的101×101,并展示了持续的改进。

文章目录

  • [PeLK: Parameter-efficient Large Kernel ConvNets with Peripheral Convolution](#PeLK: Parameter-efficient Large Kernel ConvNets with Peripheral Convolution)
    • 1、摘要
    • 2、创新点
    • 3、关键问题
    • 4、原理
      • 对比SLaK
      • [Parameter-efficient Large Kernel Network](#Parameter-efficient Large Kernel Network)
        • [Peripheral Convolution](#Peripheral Convolution)
        • [Kernel-wise Positional Embedding](#Kernel-wise Positional Embedding)
        • [Partial Peripheral Convolution](#Partial Peripheral Convolution)
        • [Architecture Specification](#Architecture Specification)
    • 5、实验
      • [Semantic Segmentation](#Semantic Segmentation)
      • [Object Detection](#Object Detection)
      • [ImageNet Classification](#ImageNet Classification)
      • [Ablation Studies](#Ablation Studies)
      • Analysis
        • [Visualization of ERFs](#Visualization of ERFs)
        • [Analysis of FLOPs](#Analysis of FLOPs)
        • [Inference Throughput Measurement](#Inference Throughput Measurement)
        • [Kernel Scaling Efficiency](#Kernel Scaling Efficiency)
    • 6、总结
    • 7、一些笔记
    • 8、附录
      • [A. ImageNet Training Configuration](#A. ImageNet Training Configuration)
      • [B. ERF Quantitation Comparison](#B. ERF Quantitation Comparison)
      • [C. Ablation on Re-parameterization](#C. Ablation on Re-parameterization)
      • [D. Peripheral Vision](#D. Peripheral Vision)

2、创新点

  • 提出了一种新颖的边缘卷积,旨在将卷积的参数复杂度从 O ( K 2 ) O(K^2) O(K2) 降低到 O ( l o g K ) O(log K) O(logK),同时保持密集计算的形式。边缘卷积包含三个关键设计:

(1) 焦点与模糊机制 。保留卷积核中心的精细参数,而在边缘区域采用广泛的参数共享;(2) 指数增长的共享粒度 。我们的共享网格以指数方式增长,相比固定粒度更有效;(3) 逐核位置嵌入。引入逐核位置嵌入,以一种优雅且经济的方式解决边缘共享导致的细节模糊问题。

  • 提出了参数高效的大核网络(PeLK),这是一种新的纯卷积神经网络架构,其有效感受野(Effective Receptive Field,ERF)随着参数以指数速度增长。

3、关键问题

  • 由于卷积的平方复杂度,增大内核尺寸会带来庞大的参数量,而过多的参数可能导致严重的优化问题。
  • 当前的CNN倾向于以 51 × 51 51 \times 51 51×51的条带卷积stripe convolution(即 51 × 5 + 5 × 51 51 \times 5 + 5 \times 51 51×5+5×51)的形式扩展,随着内核尺寸的继续增大,性能开始饱和。

4、原理

对比SLaK

默认情况下,作者像SLaK和RepLKNet一样重新参数化 5 × 5 5 \times 5 5×5卷积以缓解优化问题。表1的结果表明,无论是否使用动态稀疏性,密集网格卷积都优于条纹卷积。

如图2所示,无论在多个卷积大小下,密集网格卷积都表现出持续的优势,且随着卷积大小的增加,这种优势增强,这证明了密集网格大卷积的实质优势。

Parameter-efficient Large Kernel Network

Peripheral Convolution

假设一个标准的2D卷积核由一个4维向量组成: w ∈ R c i n × c o u t × k × k w ∈ R^{c_{in} \times c_{out} \times k \times k} w∈Rcin×cout×k×k,其中 c i n c_{in} cin表示输入通道数, c o u t c_{out} cout是输出通道数, k k k表示空间卷积维度。希望通过空间共享参数的方式,用更小的卷积核 w θ ∈ R c i n × c o u t × k ′ × k ′ w θ ∈ R^{c_{in} \times c_{out} \times k' \times k'} wθ∈Rcin×cout×k′×k′来参数化w,其中 0 < k ′ ≤ k 0 < k' ≤ k 0<k′≤k。

首先定义共享网格 S = [ s 0 , s 1 , . . . , s k ′ − 1 ] S = [s_0, s_1, ..., s_{k'-1}] S=[s0,s1,...,sk′−1],满足 ∑ i = 0 k ′ − 1 s i = k \sum{^{k' - 1}{i=0}} s{i} = k ∑i=0k′−1si=k。根据 S S S,将 k × k k \times k k×k的位置划分为 k ′ × k ′ k' \times k' k′×k′个区域:对于 a , b = 0 , 1 , . . . , k ′ − 1 a, b = 0, 1, ..., k' - 1 a,b=0,1,...,k′−1,
Z a , b = { ( x , y ) ∣ ∑ i = 0 a − 1 s i ≤ x < ∑ i = 0 a s i , ∑ j = 0 b − 1 s j ≤ y < ∑ j = 0 b s j } . ( 1 ) Z_{a,b} = \{ (x, y) | \sum{^{a-1}{i=0}} s{i} ≤ x < \sum{^{a}{i=0}} s{i}, \sum{^{b-1}{j=0}} s{j} ≤ y < \sum{^{b}{j=0}} s{j}\}. \ (1) Za,b={(x,y)∣∑i=0a−1si≤x<∑i=0asi,∑j=0b−1sj≤y<∑j=0bsj}. (1)

为简洁起见,公式1中约定 ∑ i = 0 b − 1 s i = 0 \sum^{b-1}{i=0} s{i} = 0 ∑i=0b−1si=0。对于Z_{a,b}中的任意位置 ( x , y ) (x, y) (x,y),设置 w ( x , y ) = w θ ( a , b ) w(x, y) = w_{θ} (a, b) w(x,y)=wθ(a,b)。这样就能用小的卷积核参数化大的卷积核,实现空间共享。图1a展示了这种设计的示例。

接下来详细阐述边缘卷积peripheral convolution的关键设计。称 w θ w_{θ} wθ的卷积核半径为 r r r。为了便于理解,将共享网格改写为轴对称形式: S = [ s − r ˉ , s − r + 1 ˉ , . . . , s − 1 ˉ , s 0 ˉ , s 1 ˉ , . . . , s r − 1 ˉ , s r ˉ ] S = [\bar{{s{-r}}}, \bar{{s{-r+1}}}, ..., \bar{{s{-1}}}, \bar{{s{0}}}, \bar{{s{1}}}, ..., \bar{{s{r-1}}}, \bar{{s{r}}}] S=[s−rˉ,s−r+1ˉ,...,s−1ˉ,s0ˉ,s1ˉ,...,sr−1ˉ,srˉ],其中 r = ( k ′ − 1 ) 2 r = \frac{(k' - 1)}{2} r=2(k′−1)。类似于人类的边缘视觉,边缘卷积的共享网格主要包括两个核心设计:

i) 焦点与模糊机制Focus and blur mechanism 。如图1b所示,在卷积核的中心区域保持精细粒度的参数,共享网格设置为1(即不共享)。对于边缘区域,利用大范围的参数共享来利用边缘视觉的空间冗余。在第5.4节中证明,中心区域的精细粒度至关重要,而边缘区域可以承受广泛的参数共享而不会影响性能;

ii) 递增的指数级共享粒度Exponentially-increasing sharing granularity 。人类视觉的下降模式接近指数级[35]。受此启发,设计了以指数方式增长的共享网格 。这种设计优雅地将卷积的参数复杂度从 O ( K 2 ) O(K^2) O(K2)降低到 O ( l o g K ) O(log K) O(logK),使得进一步扩大密集卷积的核大小成为可能。具体来说,共享网格 S S S由以下构建:
s i ˉ = 1 , i f ∣ i ∣ ≤ r , \bar{s_i} = 1, \ if \ |i| ≤ r, siˉ=1, if ∣i∣≤r,
s i ˉ = m ( ∣ i ∣ − r c ) , i f r c < ∣ i ∣ ≤ r , ( 2 ) \bar{s_i} = m(|i|-r_{c}), \ if \ r_{c} < |i| ≤ r, \ (2) siˉ=m(∣i∣−rc), if rc<∣i∣≤r, (2)

其中 r c r_c rc是中心精细粒度区域的半径, m m m是指数增长的底数,通常 m m m默认设置为2。

Kernel-wise Positional Embedding

尽管提出的周边卷积有效地减少了密集卷积的参数量,但参数共享的广度范围可能会带来另一个问题:周边区域的局部细节模糊。特别是当以周边卷积的形式将卷积核大小扩展到50以上,甚至100以上时,当单个参数需要处理 8 × 8 8 \times 8 8×8甚至 16 × 16 16 \times 16 16×16的周边区域时,这种现象会进一步加剧。

为了解决这个问题,提出了核级位置嵌入 。形式化地,给定一组输入特征 X X X,通过具有权重 w ∈ R c i n × c o u t × k × k w \in R^{c_{in} \times c_{out} \times k \times k} w∈Rcin×cout×k×k的卷积进行处理。使用截断正态初始化trunc normal[53]初始化位置嵌入 h ∈ R c i n × k × k h \in R^{c_{in} \times k \times k} h∈Rcin×k×k。输出位置 ( x , y ) (x, y) (x,y)的卷积过程可以表示为:
Y ( x , y ) = ∑ i = − r w r w ∑ j = − r w r w w ( i , j ) ⋅ ( X ( x + i , y + j ) + h ( i , j ) ) , ( 3 ) Y(x, y) = \sum_{i=-r_{w}}^{r_{w}} \sum_{j=-r_{w}}^{r_{w}} w(i, j) \cdot (X(x + i, y + j) + h(i, j)), \ (3) Y(x,y)=i=−rw∑rwj=−rw∑rww(i,j)⋅(X(x+i,y+j)+h(i,j)), (3)

其中 Y Y Y是输出, r w r_w rw是卷积核的半径, r w = k − 1 2 r_w = \frac{k-1}{2} rw=2k−1。如图3所示,通过为每个卷积核引入核级位置嵌入,能够区分共享区域中的特定位置,从而弥补由于共享导致的模糊局部细节问题。实际上,这可以看作是在输入特征中添加包含相对位置信息的偏置。值得注意的是,一个阶段中的所有卷积核共享同一位置嵌入 h h h,因此 h h h带来的额外参数可以忽略不计。这种设计以一种经济而优雅的方式解决了权重共享导致的位置不敏感问题,特别是对于非常大的卷积核,如 51 × 51 51 \times 51 51×51和 101 × 101 101 \times 101 101×101。

Partial Peripheral Convolution

大型卷积网络已被证明具有较高的通道冗余性[57],并且非常适合于稀疏性处理[24]。由于周边卷积使我们能够设计出具有更强空间感知能力的更大密集卷积,作者希望进一步利用大型卷积的通道冗余。引入了Inception风格的设计,仅对特征图的部分通道进行卷积处理 。遵循一个简单的理念:通过更多的恒等映射来利用通道冗余。具体来说,对于输入 X X X,将其沿通道维度分为两组,
X c o n v , X i d = S p l i t ( X ) = X : , : , : g , X : , : , g : , ( 4 ) X_{conv}, X_{id} = Split(X) = X_{:,:, :g}, X_{:,:, g:}, \ (4) Xconv,Xid=Split(X)=X:,:,:g,X:,:,g:, (4)

其中 g g g是卷积分支的通道数,默认设置为$\frac{3}{8}C_in $。然后,将分割后的输入分别输入到周边卷积和恒等映射中,
X c o n v ′ = P e r i p h e r a l C o n v ( X c o n v ) , X i d ′ = X i d , ( 5 ) X'{conv} = Peripheral Conv(X{conv}), X'{id} = X{id}, \ (5) Xconv′=PeripheralConv(Xconv),Xid′=Xid, (5)

最后,将两个分支的输出合并以恢复原始形状,
X ′ = C o n c a t ( X c o n v ′ , X i d ′ ) . ( 6 ) X' = Concat(X'{conv}, X'{id}). \ (6) X′=Concat(Xconv′,Xid′). (6)

这种设计可以看作是Inception风格结构(如Inception[41]、ShuffleNet[30,61]和InceptionNeXt[57])的特例。它们在并行分支中使用不同的操作,而作者采取了一个更简单的理念:仅使用周边卷积和恒等映射 。作者实证发现,这种设计非常适合于具有极大内核的周边卷积,显著减少了计算量,而不会影响性能

Architecture Specification

基于上述设计和观察,作者详细阐述了参数高效大核网络(PeLK)的架构。主要遵循ConvNeXt和SLaK构建不同规模的模型。PeLK同样采用4阶段框架。文中使用 4 × 4 4 \times 4 4×4内核和步长为4的卷积层构建基础结构。对于tiny尺寸,阶段的块数量为[3,3,9,3],而对于small/base尺寸,为[3,3,27,3]。PeLK各阶段的默认内核大小为[51, 49, 47, 13]。对于PeLK-101,将内核大小扩展为[101, 69, 67, 13]。

默认情况下,保持中央 5 × 5 5 \times 5 5×5区域的精细处理。对于PeLK-101,扩大中央区域至 7 × 7 7 \times 7 7×7,以适应更大的内核。作者遵循SLaK的做法,使用动态稀疏性来增强模型容量。所有超参数设置保持一致(1.3x宽度,40%稀疏度)。

5、实验

Semantic Segmentation

对于语义分割任务,在ADE20K基准 [63] 上评估PeLK主干网络,该基准包含25,000张图像和150个语义类别。使用Uper-Net [55] 的任务层进行语义分割。遵循Swin和ConvNeXt的做法,使用单尺度推理对UperNet进行了160,000次迭代的训练。结果如表2,以平均交并比(mIoU)作为评估指标。PeLK模型显著超越了先前的最先进的模型。

Object Detection

目标检测/分割任务使用了基于Cascade Mask R-CNN的方法[3,18]在微软COCO数据集[23]上进行实验。实验遵循ConvNeXt的做法,使用MMDetection[4]中的多尺度设置和默认配置。训练Cascade Mask R-CNN模型时采用3x(36个epoch)的训练计划。如表3所示,PeLK在mAP上超过了最先进的方法。

ImageNet Classification

ImageNet-1K数据集[9]包含1000个物体类别,拥有128万张训练图像和5万张验证图像。作者将第3节中提到的训练计划延长至300个epoch ,以确保公平比较。在相似模型大小和计算量(FLOPs)的条件下,对比PeLK与其他最先进的架构。如表4所示,PeLK模型在性能上大幅超越了像ConvNeXt[26]和Swin[25]这样的强大现代卷积神经网络和Transformer。值得注意的是,进一步将卷积核大小扩展到极大数据(如PeLK-101)仍能带来持续的提升。尽管非常大的密集卷积核原本不是为ImageNet分类设计的,但PeLK仍然展现出令人鼓舞的表现

Ablation Studies

Ablation on the sharing grid 关于共享网格的探讨 .深入研究了哪种共享方式和粒度 最有益。为了便于理解,首先给出两个实例来明确说明共享网格。例如,图1a使用 3 × 3 3 \times 3 3×3卷积参数化 5 × 5 5 \times 5 5×5卷积,对应的共享网格是[2, 1, 2],每个数字代表由单个参数参数化的网格大小。图1b使用 11 × 11 11 \times 11 11×11卷积参数化 31 × 31 31 \times 31 31×31卷积,对应的网格是[7, 4, 2, 1, 1, 1, 1, 1, 2, 4, 7]。由于网格在中心1(即核的中心点)处是对称的,为了简化,在表5中只显示了半部分网格

在ImageNet上的120个epoch设置下进行实验,使用PeLK-T不使用动态稀疏进行纯粹的共享网格消融。作为基线,让共享网格全部设置为1(即[1, 1, ..., 1]),这样就相当于RepLKNet中采用的 33 × 33 33 \times 33 33×33密集卷积。表5的结果表明:1)中心的精细粒度至关重要,而周边区域可以承受广泛的共享 ;#2、3显示保持中心 5 × 5 5 \times 5 5×5区域不共享是保持性能的关键;#3、4、5则表明在周边区域进行共享对性能的影响并不明显。称这种特性为"focus-and-blur"机制;2)指数增长的网格效果最好 。比较#4和#5,指数网格不仅减少了所需的参数,还提高了准确性。从以上分析可以看出,PeLK的设计既具有最少的参数,又具有性能。

Ablation on the central fine-grained area ratio . 表6研究了中央精细卷积区域大小(即聚焦区域)的变化效果,同时也报告了中央区域占总核大小的比例。结果显示,中央区域仅占模型高性能的约1%。然而,中央区域不能过小,否则会导致严重性能下降 。进一步扩大中央区域不会带来额外收益,但会增加额外参数。在主要实验中,保持PeLK的中心、 5 × 5 5 \times 5 5×5区域精细,对于PeLK-101,将中央区域扩大到 7 × 7 7 \times 7 7×7,以保持类似的中央比例。

Ablation on the kernel configuration .表7在与第3节相同的120个epoch设置下,研究了不同核大小配置的效果。对于 224 × 224 224 \times 224 224×224的输入分辨率,将核大小增大到 101 × 101 101 \times 101 101×101不会带来额外收益;而对于 384 × 384 384 \times 384 384×384的输入分辨率,PeLK-101则表现出明显优势。将核大小增加到 152 × 152 152 \times 152 152×152会导致性能下降,尤其是在 224 × 224 224 \times 224 224×224的输入分辨率下。考虑到输入分辨率,这些现象是合理的。对于典型的卷积网络,如ConvNeXt或我们的PeLK,stem layer会导致输入图像的4倍下采样。因此,对于 224 × 224 224 \times 224 224×224的输入, 51 × 51 51 \times 51 51×51的核大致能够覆盖stem layer后的全局特征图。而对于 384 × 384 384 \times 384 384×384的输入, 101 × 101 101 \times 101 101×101的核等同于全局卷积,因此继续增加核大小不会带来更多的全局感知,只是浪费参数。这本质上表明,核配置应紧密关联于输入大小 。目前,对于最常用的 224 × 224 224 \times 224 224×224和 384 × 384 384 \times 384 384×384训练,PeLK和PeLK-101是各自合适的选项。此外,随着未来硬件设备和计算能力的发展,当在更高分辨率上预训练变得可行时,所提方法有望发挥更大的作用。

Analysis

Visualization of ERFs

先前的大型卷积神经网络,如RepLKNet和SLaK,将它们的性能提升归功于其大的有效感受野(Effective Receptive Fields,ERFs)。PeLK借助周边卷积,具有更广阔的感知范围。因此,作者主张PeLK的强大性能源于更大的ERFs 。为了验证这一点,实验绘制了RepLKNet和SLaK的ERFs。从验证集随机选取并调整50张图像至 1024 × 1024 1024 \times 1024 1024×1024分辨率,测量输入图像中每个像素对最后一层特征图中心点的贡献。这些贡献分数进一步累加并投影到一个 1024 × 1024 1024 \times 1024 1024×1024的矩阵中,如图4所示。PeLK的高贡献像素分布在一个明显更大的ERFs范围内,这验证了作者的假设,并进一步展示了所提方法的有效性。

Analysis of FLOPs

在图5中详细分析了PeLK-T架构在语义分割任务中的计算量(FLOPs)分布。如图5(a)展示了模型的头部(即UperNet [55])和backbone区分的计算量分布。图5(b)对背景区分(即PeLK-T)的不同组件,包括全连接层(FFNs)、大核卷积、下采样层以及核级位置嵌入的计算量贡献进行了全面分析。有两点值得注意:首先,大核卷积占据了背景区分大约25%的总计算量,这意味着进一步增大核尺寸对整体计算量的影响并不显著。其次,位置嵌入引入的额外计算量非常少,仅占背景区分计算量的0.05%。因此,核级位置嵌入既经济又优雅。

Inference Throughput Measurement

表 8 比较了推理吞吐量测量值。结果是在输入分辨率为 224 × 224 224 \times 224 224×224 的 A100 GPU 上获得的。使用 PyTorch 1.10.0 + cuDNN 8.2.0 和 FP32 精度。尽管 SLaK 使用stripe convolution来加速超大内核的计算,但仍然拥有明显的速度优势(即 1.5× 的加速)。考虑到PeLK在ADE20K、COCO和ImageNet上的性能优于SLaK,这一优势尤为显著。更重要的是,将内核扩展到 101 只会带来很小的速度开销,这进一步展示了PeLK设计在扩展属性方面的优点。

Kernel Scaling Efficiency

外围卷积将密集卷积的参数复杂度从 O ( K 2 ) O(K^{2}) O(K2) 降低到 O ( l o g K ) O(log K) O(logK),这使能够以非常小的模型大小开销来扩展内核大小。为了证明这一点,只需将 ConvNeXt-T 阶段的所有内核替换为一组从 7 到 151 的内核大小,并报告所需的参数数量。如图 6 所示,所提方法表现出显着的扩展优势,当内核大小大于 50 时,可以看到明显的差距。使用密集卷积会导致模型大小快速增长,这在实践中是不可接受的。相比之下,外围卷积只产生很小的模型大小开销,因此可以设计出非常大的内核卷积。

6、总结

本文提出了一种新的卷积形式,称为外围卷积,它可以将密集卷积的参数复杂度从 O ( K 2 ) O(K^{2}) O(K2)降低到 O ( l o g K ) O(log K) O(logK),同时保持密集卷积的优点。基于所提出的外围卷积,作者设计了超大的密集核CNN,并在各种视觉任务中实现了显着的改进。研究结果表明,生物启发机制可以成为促进现代网络设计的有前途的工具

7、一些笔记

- 在多个内核大小下,密集网格卷积优于条纹卷积(SLaK[24]),且这种优势不仅体现在分类任务上,甚至在下游任务中更为明显,显示出密集卷积相对于条纹形式的固有优势。

- 人类视觉根据注视中心的距离将整个视觉场划分为中心区域和周边区域,中心区域的视网膜细胞(视锥和视杆细胞)数量是周边区域的100多倍 [40]。这种生理结构赋予人类视觉模糊感知的特性:在中心区域,我们有强烈的感知和清晰的视觉,识别形状和颜色;而在周边区域,视觉场模糊,分辨率降低,我们只能识别运动等抽象视觉特征和高级上下文。这种机制使得人类能够在视觉场的一小部分(< 5%)中感知重要细节,同时最大限度地减少剩余部分(> 95%)的不必要的信息,从而在人脑中促进高效的视觉处理 [2, 10,11,28,37,38,52,54]。

8、附录

A. ImageNet Training Configuration

在PeLK的训练过程中,使用8个GPU,总批次大小为4096,训练300个周期。优化器采用AdamW [27],动量设置为0.9,权重衰减为0.05。学习率设置包括初始值 4 × 1 0 − 3 4 \times 10^-3 4×10−3,采用余弦退火策略,并在前20个周期进行warm-up。在数据增强和正则化方面,我们使用了RandAugment [8](如timm [53]实现的"rand-m9-mstd0.5-inc1"),标签平滑系数为0.1,mixup [60]方法,其 α \alpha α参数设置为0.8,CutMix [59]方法, α \alpha α参数为1.0,随机擦除 [62]的概率为25%,并且采用Stochastic Depth,PeLK-T/S/B的drop-path率分别为10%、40%和50%。

B. ERF Quantitation Comparison

遵循RepLKNet [12]和SLaK [24]的做法,在表9中报告高贡献区域比r,以对ERF(有效响应场)的比较进行量化分析。这里,r表示当贡献分数超过特定阈值t时,能包含的最小矩形面积占整体输入区域的比例。例如,对于1024×1024输入,中心区域R×R能覆盖20%的贡献分数,对应的20%阈值比率为r = (R/1024)²。较大的r值表明高贡献像素的分布更均匀。与先前的CNN范式相比,我们的PeLK自然地考虑了更广泛的像素来做出决策,这进一步证实了极大内核在扩大感受野上的直观效果。

C. Ablation on Re-parameterization

根据RepLKNet的研究[12],直接优化大型卷积网络可能会遇到困难,并导致性能下降。因此,现有的大型卷积范式通过重参数化小卷积(如5×5)来缓解这个问题。本部分中,我们移除了重参数化技巧,以观察模型性能会受到多大影响。我们在ImageNet上对小型模型进行了120个epoch的训练,与第3节中的设置相同。如表10所示,即使移除了小卷积,我们的边缘卷积仍然保持良好的性能,而密集卷积则出现了显著的性能下降。这一现象表明,通过减少所需的参数数量,我们的边缘卷积能够缓解大型密集卷积的优化难度。

D. Peripheral Vision

人类的视觉场展现了一种被称为"中心聚焦和周边模糊"的现象[32,35]。根据视觉科学文献[31,40],人类的视觉场可以被模型化为如图7所示的扇形结构。它由中心到周边分为三个区域:中央区域( θ _ c h θ\_ch θ_ch和 θ _ c v θ\cv θ_cv)、旁中央区域( θ _ a h θ\ah θ_ah和 θ _ a v θ\av θ_av)和周边区域( θ _ p h θ\ph θ_ph和 θ _ p v θ\pv θ_pv)。中央区域是用于清晰感知的主要部分。因此,人类视觉系统中聚焦区域的比例可以计算为:
P h u m a n = π θ c h ∗ θ c v ( π θ p h ∗ θ p v ) = 2.72 % . ( 7 ) P
{human} = \pi \theta
{ch} * \theta
{cv} (\pi \theta
{ph} * \theta
{pv}) = 2.72 \% . \ (7) Phuman=πθch∗θcv(πθph∗θpv)=2.72%. (7)

同样,周边卷积在中心保留了精细参数,PeLK的中心比例为:
P _ p e l k = ( 5 × 5 ) / ( 51 × 51 ) = 0.96 % . ( 8 ) P\_pelk = (5 × 5) / (51 × 51) = 0.96\% .\ (8) P_pelk=(5×5)/(51×51)=0.96%. (8)

尽管PeLK和人类的比例值并不严格相等,但它们都是非常小的比率(< 5%),表明高效的视觉机制只需要极小比例的精细感知。

周边卷积在中心保留了精细参数,PeLK的中心比例为:
P _ p e l k = ( 5 × 5 ) / ( 51 × 51 ) = 0.96 % ( 8 ) P\_pelk = (5 × 5) / (51 × 51) = 0.96\% \ (8) P_pelk=(5×5)/(51×51)=0.96% (8)

尽管PeLK和人类的比例值并不严格相等,但它们都是非常小的比率(< 5%),表明高效的视觉机制只需要极小比例的精细感知。

相关推荐
AI慧聚堂12 分钟前
自动化 + 人工智能:投标行业的未来是什么样的?
运维·人工智能·自动化
盛世隐者13 分钟前
【pytorch】循环神经网络
人工智能·pytorch
FL162386312922 分钟前
钢材缺陷识别分割数据集labelme格式693张4类别
深度学习
cdut_suye25 分钟前
Linux工具使用指南:从apt管理、gcc编译到makefile构建与gdb调试
java·linux·运维·服务器·c++·人工智能·python
开发者每周简报1 小时前
微软的AI转型故事
人工智能·microsoft
dundunmm1 小时前
机器学习之scikit-learn(简称 sklearn)
python·算法·机器学习·scikit-learn·sklearn·分类算法
古希腊掌管学习的神1 小时前
[机器学习]sklearn入门指南(1)
人工智能·python·算法·机器学习·sklearn
普密斯科技1 小时前
手机外观边框缺陷视觉检测智慧方案
人工智能·计算机视觉·智能手机·自动化·视觉检测·集成测试
四口鲸鱼爱吃盐1 小时前
Pytorch | 利用AI-FGTM针对CIFAR10上的ResNet分类器进行对抗攻击
人工智能·pytorch·python
lishanlu1362 小时前
Pytorch分布式训练
人工智能·ddp·pytorch并行训练