博客
关于我
CVPR 2021 | 涨点神器ACNet再进化!清华&旷视提出Inception类型的DBB
阅读量:549 次
发布时间:2019-03-09

本文共 1098 字,大约阅读时间需要 3 分钟。

Diverse Branch Block: 构建一种与Inception类似的卷积模块


引言

卷积神经网络(Convolutional Neural Networks, CNN)在图像处理任务中发挥着核心作用。然而,随着模型复杂性增加,普通卷积单元的表达能力逐渐有限,如何进一步提升性能成为一个重要挑战。在此背景下,我们提出了一种名为**Diverse Branch Block (DBB)**的卷积模块,该模块通过结合多分支和多尺度的卷积操作,不仅提升了模型的表达能力,还在推理阶段保持了低耗时。


模块设计

DBB模块的核心思想是将卷积操作的多样性与Inception多分支架构结合,同时引入过参数化技术,通过动态多分支结构显著提升卷积网络的性能。

工作原理

  • 分支组合:DBB模块通过六种不同的卷积变换(如卷积与Batch Normalization BN的合并、分支叠加、卷积序列合并、深度拼接、均值池化转换和多尺度卷积转换)对原始卷积进行增强。这些变换可以相互合并,形成一个高度灵活的多分支结构。

  • 动态多分支:与传统的Inception架构不同,DBB模块在分支之间引入了动态组合机制。每个分支的中间通道数等于输入通道数,且卷积核设计为identity矩阵,以保证不同尺度信息的有效结合。BN层的引入则为每个卷积节点提供了必要的非线性提升。

  • 推理阶段优化:一旦完成训练,DBB模块可以通过卷积的线性特性(同质与加法性)等价折叠为单个卷积模块,从而在推理阶段实现零额外计算开销。


  • 实验结果

    DBB模块在ImageNet、CIFAR、Cityscapes等多个数据集上展现出显著性能提升,特别是在目标检测和语义分割任务中表现优异。以下是主要实验结果:

  • ImageNet Top-1 Accuracy:DBB模块使ResNet-VGG型模型的top-1精度提升了约1.9%,在轻量级模型如MobileNet中则表现出0.99%的提升。

  • CIFAR性能:DBB模块使VGG16模型在CIFAR10和CIFAR100上的精度分别提升了0.67%和1.67%。

  • 消融实验:移除任意一个分支都会导致性能下降,表明每个分支都是关键。此外,与传统多尺度卷积相比,DBB模块通过灵活的分支组合能够更有效地提升特征表达能力。


  • 结论

    DBB模块通过创新的分支组合和动态卷积设计,为现有卷积架构提供了一种新的特征表达方式。它的设计理念不仅为模型性能提升提供了新思路,还通过等价嵌入的机制实现了推理阶段的高效性,适用于与现有卷积架构无缝集成的场景。

    如需了解更多技术细节或获取源码,请关注CVer公众号或联系对应作者。

    转载地址:http://crwsz.baihongyu.com/

    你可能感兴趣的文章
    oracle ORA-14402 OGG-01296
    查看>>
    oracle package包头和package body包体例子
    查看>>
    oracle partition by list,深入解析partition-list 分区
    查看>>
    Oracle PL/SQL Dev工具(破解版)被植入勒索病毒的安全预警及自查通告
    查看>>
    oracle pl/sql 导出用户表结构
    查看>>
    Oracle PLSQL Demo - 17.游标查询个别字段(非整表)
    查看>>
    oracle rac集群的东西之QQ聊天
    查看>>
    UML— 用例图
    查看>>
    Oracle Schema Objects——Tables——Table Compression
    查看>>
    oracle scott趣事
    查看>>
    oracle script
    查看>>
    Oracle select表要带双引号的原因
    查看>>
    Oracle SOA Suit Adapter
    查看>>
    Oracle Spatial GeoRaster 金字塔栅格存储
    查看>>
    Oracle spatial 周边查询SQL
    查看>>
    Oracle Spatial空间数据库建立
    查看>>
    UML— 活动图
    查看>>
    oracle sqlplus已停止工作,安装完成客户端后sqlplus报“段错误”
    查看>>
    oracle SQLserver 函数
    查看>>
    oracle sql分组(group,根据多个内容分组)在select之后from之前 再进行select查询,复杂子查询的使用
    查看>>