3. 实验
ImageNet 分类实验结果总结在上表中。本文的模型通过最先进的视觉 Transformer 和 CNNs 实现了非常有竞争力的性能。值得注意的是,HorNet 超越了 Swin Transformers 和 ConvNeXt,它们在各种模型尺寸和设置上都具有相似的整体架构和训练配置。
作者使用常用的 UperNet 框架评估了 ADE20K 数据集上的 HorNet 语义分割任务。所有模型都使用 AdamW 优化器训练 160k 次迭代,全局 batch 处理大小为 16。训练期间的图像大小对于 ImagNet-1k (HorNet-T/S/B) 预训练模型为 512 × 512,对于 ImageNet-22K 预训练模型 (HorNet-L) 为 640 × 640。结果总结在上表的左侧部分,其中报告了验证集上的单尺度 (SS) 和多尺度 (MS) mIoU。作者还在 COCO 数据集上评估了本文的模型。作者采用级联 Mask R-CNN 框架使用 HorNet-T/S/B/L 主干进行对象检测和实例分割。继 Swin 和 ConvNeXt 之后,作者使用了具有多尺度训练的 3× schedule。上表的右侧部分比较了本文的 HorNet 模型和 Swin/ConvNeXt 模型的 box AP 和 mask AP。
作者现在展示了所提出的的另一个应用,即作为更好的融合模块,可以更好地捕获密集预测任务中不同级别特征之间的高阶交互。具体而言,作者直接修改了分别用于语义分割和对象检测的 FPN,如 SuperNet 和 Mask R-CNN。在上表中显示了结果,其中作者比较了本文的 HorFPN 和标准 FPN 在不同主干上的性能,包括 ResNet-50/101、Swin-S 和 HorNet-S 7×7。对于语义分割,作者发现 HorFPN 可以显著减少 FLOPs(∼50%),同时实现更好的 mIoU。
上表展示了本文方法的消融实验结果。
上图展示了 Swin、ConvNeXt 和 HorNet 的权衡比较。
4. 总结
作者提出了递归门卷积(),它与门卷积和递归设计进行有效、可扩展和平移等变的高阶空间交互。在各种视觉 Transformer 和基于卷积的模型中,可以作为空间混合层的替代品。在此基础上,作者构建了一个新的通用视觉骨干 HorNet 家族。大量实验证明了和 HorNet 在常用视觉识别基准上的有效性。
最后笔者已经将 HorNet 网络代码 汇总整理在以下 Github 库中,地址为:https://github.com/xmu-xiaoma666/External-Attention-pytorch
该库是一个面向小白的顶会论文核心代码库。里面汇总诸多顶会论文核心代码,包括 Attention、Self-Attention、Backbone、MLP、Conv 等。
5. 将 HorNet 结合 YOLOv5 模型应用
YOLOAir 库中 已经将 HorNet 网络应用在 YOLO 模型中,分别以下三种方式与 YOLOv5 模型 结合:
1. 在 YOLOv5 中 使用 gnconv 模块示例2. 在 YOLOv5 中 使用 HorBlock 模块示例3. 在 YOLOv5 中 使用 HorNet 主干网络示例
由于篇幅有限,具体改进代码及方式可以在以下 GitHub 库中获取:面向科研小白的 YOLO 目标检测库:https://github.com/iscyy/yoloair
参考链接:https://arxiv.org/abs/2207.14284https://github.com/raoyongming/HorNethttps://github.com/xmu-xiaoma666/External-Attention-pytorchhttps://github.com/iscyy/yoloair