问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

动态卷积:提升神经网络性能的利器

创作时间:
作者:
@小白创作中心

动态卷积:提升神经网络性能的利器

引用
CSDN
1.
https://blog.csdn.net/2501_90186640/article/details/146299920

动态卷积是一种通过动态聚合多个卷积核来提升模型表征能力的技术。它在不显著增加计算成本的情况下,能够有效提升神经网络的性能。本文将详细介绍动态卷积的原理、实现方法及其在图像分类和人体姿态估计等任务中的应用效果。

一、引言

在深度学习领域,卷积神经网络(CNNs)是众多任务的核心技术。随着移动设备和边缘计算的兴起,轻量级CNNs的研究变得愈发重要。然而,轻量级CNNs常因计算预算低,限制网络深度和宽度,导致性能下降。本文提出的动态卷积,为解决这一问题提供了新思路,在不增加网络深度和宽度的情况下,有效提升模型复杂度和性能。

二、相关工作

2.1 高效CNNs

为设计高效CNNs,研究者提出多种方法。SqueezeNet利用1×1卷积减少参数;MobileNet系列通过深度可分离卷积等优化计算量;ShuffleNet采用通道混洗降低1×1卷积计算量;ShiftNet用移位操作和逐点卷积替代空间卷积。这些方法从不同角度优化网络结构,但在极低计算约束下,性能仍受影响。

2.2 模型压缩和量化

模型压缩和量化方法,如剪枝、量化等,可减小模型大小、降低计算量,与动态卷积方法互补,能进一步优化模型性能。

2.3 动态深度神经网络

动态神经网络专注于根据输入图像跳过模型部分内容。但现有工作多为静态卷积核、动态网络结构,且需额外控制器。动态卷积则是动态卷积核、静态网络结构,无需额外控制器,可端到端训练,效率和性能更优。

2.4 神经架构搜索

神经架构搜索(NAS)能寻找高精度和硬件感知的高效网络架构。动态卷积可用于NAS找到的先进架构,还能丰富搜索空间,提升网络性能。

三、动态卷积神经网络

3.1 预备知识:动态感知器

传统静态感知器公式为y = g ( W T x + b ) y = g(W^{T}x + b)y=g(WTx+b),动态感知器则通过聚合多个线性函数定义:

y = g ( W ~ T ( x ) x + b ~ ( x ) ) y = g(\tilde{W}^{T}(x)x+\tilde{b}(x))y=g(WT(x)x+b(x))

W ~ ( x ) = ∑ k = 1 K π k ( x ) W ~ k \tilde{W}(x)=\sum_{k = 1}^{K}\pi_{k}(x)\tilde{W}_{k}W(x)=∑k=1K πk (x)Wk

b ~ ( x ) = ∑ k = 1 K π k ( x ) b ~ k \tilde{b}(x)=\sum_{k = 1}^{K}\pi_{k}(x)\tilde{b}_{k}b(x)=∑k=1K πk (x)bk

s . t . 0 ≤ π k ( x ) ≤ 1 s.t.0\leq\pi_{k}(x)\leq1s.t.0≤πk (x)≤1

∑ k = 1 K π k ( x ) = 1 \sum_{k = 1}^{K}\pi_{k}(x)=1∑k=1K πk (x)=1

其中,π k ( x ) \pi_{k}(x)πk (x)是注意力权重,使聚合后的模型成为非线性函数,增强了表征能力。与静态感知器相比,动态感知器模型尺寸更大,但计算注意力权重和聚合参数的额外计算量,在卷积层中可忽略不计。

3.2 动态卷积

动态卷积是满足计算约束的特殊动态感知器。它有K KK个相同大小和输入/输出维度的卷积核,通过注意力权重π k \pi_{k}πk 聚合。在构建动态卷积层时,会在聚合卷积后使用批量归一化和激活函数。

计算注意力时,应用挤压激励模块,先全局平均池化,再经两个全连接层和softmax函数生成归一化注意力权重。与SENet不同,动态卷积在卷积核上计算注意力,计算成本低。聚合卷积核时,因卷积核尺寸小,计算效率高,额外计算量可忽略不计,且不增加输出维度。动态卷积可直接替代现有CNN架构中的各类卷积,与其他算子和激活函数互补。

四、训练深度DY-CNNs的两个见解

4.1 见解1:注意力和为1

训练深度DY-CNNs需联合优化卷积核和注意力模型。将注意力输出约束为∑ k π k ( x ) = 1 \sum_{k}\pi_{k}(x)=1∑k πk (x)=1,能使聚合后的卷积核在卷积核空间的凸包内,简化注意力模型π k ( x ) \pi_{k}(x)πk (x)的学习,softmax是实现该约束的常用选择。

对约束条件∑ k π k ( x ) = 1 \sum_{k}\pi_{k}(x) = 1∑k πk (x)=1的说明。它将聚合卷积核∑ k π k W ~ k \sum_{k}\pi_{k}\tilde{W}_{k}∑k πk W~k 的空间从两个棱锥(在CondConv [37]中使用)压缩为一个三角形。通过对注意力总和进行归一化,一条红线被压缩成一个点。

4.2 见解2:训练初期接近均匀的注意力

在训练初期,接近均匀的注意力有助于更多卷积核同时优化。但传统softmax输出接近one-hot,不利于多卷积核优化。通过在softmax中引入较大温度参数τ \tauτ,可使注意力更均匀,提升训练效率。温度退火策略,即训练前10个epoch将τ \tauτ从30线性减到1,还能进一步提高准确率。

4.3 与同期工作的关系

与同期的CondConv相比,动态卷积的注意力计算方式不同。CondConv使用sigmoid计算注意力,卷积核空间大,学习注意力模型困难。动态卷积每层卷积核更少、模型更小、计算量更低,但准确率更高。

五、实验:ImageNet图像分类

5.1 实现细节

在ResNet、MobileNetV2和MobileNetV3三种架构上评估动态卷积,除第一层外,每层使用K = 4 K = 4K=4个卷积核,批量大小设为256。不同架构训练设置不同,包括学习率调整策略、权重衰减、优化器和随机失活率等。

5.2 研究DY-CNN

通过改变卷积核聚合方式和跨图像打乱注意力,验证DY-CNN的动态特性。实验表明,改变聚合方式会使性能显著下降,说明卷积核具有多样性;跨图像打乱注意力后准确率降低,证明注意力与输入相关。此外,研究发现注意力在低层级平坦、高层级稀疏,影响不同层的性能。

5.3 消融研究

对DY-MobileNetV2和DY-MobileNetV3进行多项消融实验。研究卷积核数量K KK发现,K KK增大模型表示能力增强,但超过4后准确率不再提升,且易过拟合。在不同层使用动态卷积实验中,使用动态卷积的层越多,准确率越高,最后一个1×1卷积使用动态卷积效果最佳。Softmax温度实验显示,τ = 30 \tau = 30τ=30时性能最好,温度退火可进一步提高准确率。对比动态卷积与挤压激励(SE),发现两者可协同提升性能。

5.4 主要结果

在三种CNN架构中,动态卷积均显著优于静态卷积,仅增加约4%计算量,就能大幅提升Top-1准确率。如DY-MobileNetV3-Small比MobileNetV3-Small准确率高2.9%,展示了动态卷积的有效性。

Network
#Param
MAdds
Top-1
Top-5
MobileNetV2 × 1.0
3.5M
300.0M
72.0
91.0
DY-MobileNetV2 × 1.0
11.1M
312.9M
75.2 (3.2)
92.1 (1.1)
MobileNetV2 × 0.75
2.6M
209.0M
69.8
89.6
DY-MobileNetV2 × 0.75
7.0M
217.5M
73.7 (3.9)
91.3 (1.7)
MobileNetV2 × 0.5
2.0M
97.0M
65.4
86.4
DY-MobileNetV2 × 0.5
4.0M
101.4M
69.9 (4.5)
89.0 (2.6)
MobileNetV2 × 0.35
1.7M
59.2M
60.3
82.9
DY-MobileNetV2 × 0.35
2.8M
62.0M
65.9 (5.6)
86.4 (3.5)
MobileNetV3-Small
2.9M
66.0M
67.4
86.4
DY-MobileNetV3-Small
4.8M
68.5M
70.3 (2.9)
88.7 (2.3)
ResNet-18
11.1M
1.81G
70.4
89.7
DY-ResNet-18
42.7M
1.85G
72.7 (2.3)
90.7 (1.0)
ResNet-10
5.2M
0.89G
63.5
85.0
DY-ResNet-10
18.6M
0.91G
67.7 (4.2)
87.6 (2.6)

表格中,“#Param”表示模型参数数量,“MAdds”表示乘加运算量,“Top-1”和“Top-5”分别代表在ImageNet分类任务中预测结果排名前1和前5的准确率。括号内的数值是与对应静态模型相比,动态卷积模型在Top-1或Top-5准确率上的提升幅度 。

六、DY-CNNs在人体姿态估计中的应用

6.1 实现细节

使用COCO 2017数据集评估动态卷积在单人关键点检测任务中的性能。实现两种网络类型,类型A在头部用反卷积,类型B在头部用上采样和瓶颈残差块。每个动态卷积层用K = 4 K = 4K=4个卷积核,训练时进行多种数据增强,使用Adam优化器和特定学习率调整策略。

6.2 主要结果和消融实验

在骨干网络和头部使用动态卷积,均能提升关键点检测的AP值。类型A中,动态卷积在不同骨干网络上AP值有明显提升;类型B中,动态卷积同样优于静态卷积。消融实验表明,骨干网络和头部的动态卷积都对性能有帮助,且骨干网络贡献更大。

七、结论

动态卷积通过动态聚合卷积核,有效提升模型表征能力,计算成本增加极少。在图像分类和人体姿态估计任务中表现出色,可轻松集成到现有CNN架构。希望动态卷积成为高效网络架构的重要组件,推动深度学习技术发展。

八、展望

未来,动态卷积有望在更多领域应用,如目标检测、语义分割等。进一步优化动态卷积的计算效率和训练方法,探索其与其他先进技术结合的可能性,将为深度学习发展带来更多机遇。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号