admin管理员组文章数量:1794759
YoloV10改进策略:卷积篇
摘要
在PConv的基础上做了二次创新,创新后的模型不仅在精度和速度上有了质的提升,还可以支持Stride为2的降采样。改进方法简单高效,需要发论文的同学不要错过!
链接:
代码语言:javascript代码运行次数:0运行复制.2014.3001.5502
论文指导
PConv在论文中的描述
论文:下面我们展示了可以通过利用特征图的冗余来进一步优化成本。如图3所示,不同通道之间的特征图具有高度的相似性。这种冗余也在许多其他工作中被涵盖[17,82],但很少有人以简单而有效的方式充分利用它。
具体来说,我们提出了一种简单的PConv来同时减少计算冗余和内存访问。图4的左下角说明了我们的PConv是如何工作的。它只是简单地对部分输入通道应用常规变换以进行空间特征提取,并保持其余通道不变。对于连续或常规的内存访问,我们认为第一个或最后一个连续cp通道是整个特征映射的代表,用于计算。在不损失通用性的情况下,我们认为输入和输出特征图具有相同的通道数。因此,PConv的FLOPs只是
在典型的部分比时,PConv的FLOPs仅为普通Conv的,且PConv具有较小的内存访问量,即:
这只是的正则表达式,。
由于只有通道用于空间特征提取,人们可能会问,我们是否可以简单地删除剩余的通道?如果是这样,PConv将降级为具有较少通道的常规Conv,这偏离了我们减少冗余的目标。请注意,我们保持其余通道不变,而不是从特征图中删除它们。这是因为它们对后续的PWConv层很有用,该层允许特征信息通过所有通道。
为了充分和有效地利用来自所有通道的信息,进一步在PConv中添加逐点卷积(PWConv)。它们在输入特征图上的有效感受野一起看起来像一个t形的Conv,与均匀处理patch的常规Conv相比,它更侧重于中心位置,如图5所示。为证明这种t型感受野的合理性,首先通过计算位置上的Frobenius范数来评估每个位置的重要性。我们假设,如果一个头寸的Frobenius范数比其他头寸更大,那么该头寸往往更重要。对于一个普通的Conv滤波器,位置i处的Frobenius范数是由计算的,对于。我们认为显著位置是具有最大Frobenius范数的位置。然后,在预训练的ResNet18中集体检查每个滤波器,找出它们的显著位置,并绘制显著位置的直方图。从图6的结果可以看出,中心位置是滤波器中出现频率最高的显著位置。换句话说,中心位置比周围的邻居更重要。这与集中在中心位置的t型计算是一致的。
虽然t型卷积可以直接用于高效计算,但最好将t型卷积分解为PConv和PWConv,因为分解利用了滤波器间的冗余,进一步节省了计算量。对于相同的输入和输出, t型Conv的计算结果可以这样计算
这比PConv和PWConv的FLOPs要高,即:
和(例如当。此外,我们可以轻松地利用常规转换进行两步实现。
改进YoloV10的描述
在本文中,我们针对YoloV9网络结构中的Bottleneck模块提出了一种新的改进方法。为了进一步提高网络的特征表示能力和效率,我们将部分卷积(PConv)与通道混洗(ShuffleChannel)和逐点卷积(Pointwise Convolution)相结合,形成了一种新型的卷积模块,并将其替换了模块中的普通卷积。
具体而言,我们的改进方法首先采用PConv对输入特征图的部分通道进行空间特征提取,以捕捉重要的局部信息并减少计算冗余。接着,为了打破通道间的固定关系并增强特征的非线性,我们引入了ShuffleChannel操作,对PConv的输出特征图进行通道顺序的重排。这一步骤有助于促进信息在不同通道间的流动,从而增强网络的特征表示能力。
在ShuffleChannel之后,我们应用了一个1×1的卷积层(逐点卷积)。这一卷积层不仅允许我们根据需要对通道数进行灵活的调整,以适应后续网络层的输入要求,同时还能够在每个空间位置上独立地组合不同通道的信息,进一步增强网络的非线性。此外,根据网络设计的需要,我们还可以在1×1卷积之后添加非线性激活函数(如ReLU),以引入更多的非线性并提升模型的复杂性。
通过将这一改进的卷积模块应用到YoloV10网络结构中的Bottleneck模块中,我们期望能够在保持网络结构紧凑的同时,进一步提高网络的性能。这种改进方法不仅减少了计算量和内存消耗,还有助于增强模型的特征表示能力,从而提高目标检测的准确性和效率。在后续的实验中,我们将验证这一改进方法的有效性,并探讨其在不同应用场景下的性能和泛化能力。
测试结果
代码语言:javascript代码运行次数:0运行复制YOLOv10l summary (fused): 497 layers, 17534672 parameters, 0 gradients, 70.4 GFLOPs
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 15/15 [00:02<00:00, 5.20it/s]
all 230 1412 0.913 0.907 0.979 0.717
c17 230 131 0.966 0.954 0.989 0.793
c5 230 68 0.923 0.886 0.978 0.806
helicopter 230 43 0.927 0.93 0.945 0.569
c130 230 85 0.959 0.953 0.985 0.638
f16 230 57 1 0.918 0.969 0.643
b2 230 2 0.726 1 0.995 0.714
other 230 86 0.908 0.942 0.965 0.499
b52 230 70 0.842 0.886 0.939 0.771
kc10 230 62 0.934 0.916 0.977 0.812
command 230 40 0.925 0.925 0.983 0.747
f15 230 123 0.959 0.953 0.991 0.665
kc135 230 91 0.94 0.978 0.983 0.675
a10 230 27 0.903 0.815 0.91 0.502
b1 230 20 0.951 0.976 0.99 0.736
aew 230 25 0.924 0.977 0.986 0.783
f22 230 17 0.879 1 0.995 0.769
p3 230 105 0.952 0.962 0.992 0.792
p8 230 1 0.691 1 0.995 0.697
f35 230 32 0.96 0.744 0.945 0.537
f18 230 125 0.946 0.992 0.986 0.798
v22 230 41 0.976 0.979 0.994 0.7
su-27 230 31 0.961 1 0.995 0.833
il-38 230 27 0.839 0.963 0.968 0.739
tu-134 230 1 0.709 1 0.995 0.895
su-33 230 2 1 0 0.995 0.697
an-70 230 2 1 0.883 0.995 0.746
tu-22 230 98 0.948 0.949 0.989 0.789
总结
完整代码链接:
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。原始发表:2024-09-04,如有侵权请联系 cloudcommunity@tencent 删除论文模型内存网络性能本文标签: YoloV10改进策略卷积篇
版权声明:本文标题:YoloV10改进策略:卷积篇 内容由林淑君副主任自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.xiehuijuan.com/baike/1754666230a1704965.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论