resnet论文_ResNet还是DenseNet?即插即用的DS涨点神器来了!
DSNet比ResNet取得了更好的结果,并且具有与DenseNet相当的性能,但需要的计算资源更少。其中改进的DS2Res2Net性能非常强大。
作者:ChaucerG
Date:2020-10-27
来源:AI人工智能初学者微信公众号
- 作者单位:韩国科学技术院(KAIST)
- 论文:https://arxiv.org/abs/2010.12496
注:如果上述论文链接无法访问,可以看文末,论文已上传至百度云,方便下载。
1、简介
大多数基于深度学习的方法都是通过backbone网络实现的,其中两个最有名的方法就是ResNet和DenseNet。尽管它们具有差不多的性能和受欢迎程度,但它们两个都存在固有的缺点。对于ResNet,稳定训练的identity shortcut方式也限制了其表示能力,而DenseNet具有更高的特征,可以进行多层特征串联。但是,密集级联会引起新的问题,即需要较高的GPU内存和更多的训练时间。部分由于这个原因,在ResNet和DenseNet之间不是一个简单的选择。
本文提供了dense summation的统一视角来分析它们,从而有助于更好地了解它们的核心差异。同时进一步提出了dense weighted normalized shortcuts,以解决它们之间的难题。所提出的密集快捷方式继承了ResNet和DenseNet中简单设计的设计理念。
2、相关方法
2.1、Micro-module design
都是耳熟能详的操作,大家可以自行进行调研和研读:
- normalization modules
- attention modules
- group convolutions
- bottleneck design
- weight normalization
- instance normalization
- group normalization
2.2、Macro-architecture design
都是耳熟能详的模型,大家可以自行进行调研和研读:
- AlexNet
- VGGNet
- GoogleNet
- ResNet
- DenseNet
- WideResnet
- ResNext
- Preactivation-ResNet
- CondenseNet
- Dual path network
- mixed link network
- FractalNet
3、本文方法
3.1、ResNet和DenseNet中的Dense Connection
ResNet和DenseNet的区别是什么?顾名思义,区别似乎在于ResNet只使用前面的一个特征图,而DenseNet使用了前面所有卷积块的特性。
似乎结果像前面说的那样,而实际上通过上图可以看出ResNet与DenseNet的不同之处在于,ResNet采用求和的方法将之前所有的feature map连接起来,而DenseNet将所有feature map使用cat的方法连接起来。
3.2、Unified perspective with dense summation
在这里,作者证明了卷积运算前的dense concatenation可以等价于卷积后的dense summation:
其中,,注意,表示卷积块中的第1个卷积,而不是整个卷积块。因此,是卷积块中第1次卷积后的feature-map。综上所述,如图所示,其中和分别为输入通道数和输出通道数。
最终可以得到关于ResNet和DenseNet的如下表达式:
3.3、Dense shortcut and DSNet
通过以上统一可以看出ResNet和DenseNet的核心区别在于,对于前面的每个输出,卷积参数是否共享。这使得DenseNet在需要更多GPU资源的情况下获得了更好的性能。这种差异的根源在于采用了不同的Dense Connection、identity shortcut和Dense Concatenation。基于上述的问题提出了一种可选择的Dense Connection来缓解该缺点。它引入了使用前面的feature-maps的灵活性,同时对前面的每个feature-map仍然使用相同的。基于ResNet的Benchmask,文中提出的方法可以表达为:
实验结果也证明了该结论的成立:
作者将所提出的网络命名为采用Adopting DS ShortCut的DSNet。DSNet采用与ResNet相同的网络Backbone(卷积块本身和块设计)。ResNet主干是为identity shortcut定制的,而不是为提出的DS ShortCut定制的。如果重新设计主干结构可能会进一步提高DSNet的性能。
注:DSNet和ResNet唯一区别是用提出的dense shortcut代替了identity shortcut.
3.4、实现插入方式
为了在ResNet中引入dense shortcut,一种简单的方法是将Yl=Yl-1+Xl中的单个identity shortcut替换为dense shortcut,从而连接所有前面的特征映射,得到:
可以递归地扩展为:
比较dense shortcut等价于在每个卷积块的末端增加额外的常数。表1中所示的ResNet50-Dense的这种设计并没有取得比原来的ResNet50更好的性能。于是便设计了DS ShortCut,而这里使用归一化的动机是为了将前面的所有特征归一化到一个相似的尺度,方便训练。加权求和是为了让网络根据特征图的显著性给每个归一化特征图分配适当的权值。
此外,在实验中发现,在3*3卷积的卷积块内插入weighted normalized shortcut也有助于性能的提高,由于增加的计算负担几乎很少,值得考虑。这里称之为DS2Net。
4、实验结果
4.1、基于CIFAR-100实验
可以看出在CIFAR-100数据集上基于DS的设计,参数更少,精度更高;
4.2、基于ImageNet实验
可以看出在ImageNet数据集上基于DS的设计,参数更少,精度更高;
4.3、基于MS COCO 2014检测实验
可以看出在ResNet中使用DSNet提升mAP将近3个百分点;
4.4、Grad-CAM可视化实验
可以看出对于DSNet,其对于目标的识别区域更加的准确和集中,也因此会带来更好的效果。
更为详细内容可以参见论文中的描述。
References
[1] ResNet or DenseNet? Introducing Dense Shortcuts to ResNet
论文下载
链接:https://pan.baidu.com/s/1W6k5SsLe0Z4FXx3KdMx9nQ
提取码:cver
强烈推荐大家关注CVer知乎账号和CVer微信公众号,可以快速了解到最新优质的CV论文。
推荐阅读
综述 | 基于深度学习的端到端人脸识别技术:全面调研
TBC:共享Thinner Filters,实现更强的CNN!
综述 | 行人检测技术(从手工特征到深度学习):全面调研
超越EfficientNets!无需注意力,也能让你的网络更快更强!
OpenCV 4.5来了!更强的SIFT,改进RANSAC算法,新增目标跟踪网络SiamRPN++
综述 | 基于深度学习的实时语义分割方法:全面调研
涨点神器!南航提出AFF:注意力特征融合
NeurIPS 2020 | 谷歌大脑提出:重新思考预训练和自训练
NeurIPS 2020 | 用于图像复原/恢复的神经稀疏表示
NeurIPS 2020 | aLRPLoss:统一目标检测中的分类和定位的平衡损失函数
CCE:具有互补交叉熵的不平衡图像分类
谷歌地标检索2020 Kaggle 第一名解决方案
ECCV AIM 2020 真实图像超分辨率挑战赛3项冠军解决方案
LVIS 实例分割挑战赛2020的第一名解决方案:好的Box不能保证好的Mask
ETH Zurich提出DPIR:具有Denoiser先验的即插即用图像恢复
综述 | 人脸图像质量评估:全面调研(2004-2020)
VarifocalNet:IoU-aware 密集目标检测器(已开源)
ECCV 2020 | NAS-DIP:通过NAS实现DIP(去噪/去雾/超分辨率/修复等)
TIP 2020 | PNEN:金字塔Non-Local增强型网络
综述 | 小样本学习:全面调研(Few-shot)
MiCo:用于半监督域自适应的Mixup联合训练
使用深度神经网络从Noisy Labels中学习:全面调研
PyTorch3D:面向3D计算机视觉的PyTorch工具箱
剪枝filter?还是剪枝layer?这是个问题
ECCV 2020 | WeightNet:重新探索Weight网络的设计空间
Mask TextSpotter v3:用于场景文字检测和识别的分割Proposal网络
ECCV 2020 | 魔鬼在细节中:车辆重识别的自监督注意力(SAVER)
ECCV 2020 | 53.5 AP!PAA:用于目标检测的IoU预测的概率Anchor分配
ECCV 2020 | 南京理工提出FPT:特征金字塔Transformer
ECCV 2020 | 长尾数据集中多标签分类的分布平衡损失
ECCV 2020 | BMask R-CNN:边界保持的Mask R-CNN
ECCV 2020 | 即插即用!PSConv:将特征金字塔压缩到紧凑的多尺度卷积层中
ECCV 2020 | STTN:用于视频修复的时空联合Transformer
ECCV 2020 | LiteFlowNet3:实现更准确的光流估计
resnet论文_ResNet还是DenseNet?即插即用的DS涨点神器来了!相关推荐
- CNN经典分类网络发展历程GoogLeNet、SqueezeNet、ResNet、ResNeXt、DenseNet
本篇博文主要介绍2015年之后出现的经典分类网络的发展历程,前期经典分类网络网上有很多解析,主要包括LeNet.AlexNet.VGG等. 本篇博文主要介绍GoogLeNet.SqueezeNet.R ...
- unet是残差网络吗_深度学习系列(三)卷积神经网络模型(ResNet、ResNeXt、DenseNet、DenceUnet)...
深度学习系列(三)卷积神经网络模型(ResNet.ResNeXt.DenseNet.Dence Unet) 内容目录 1.ResNet2.ResNeXt3.DenseNet4.Dence Unet 1 ...
- 经典卷积神经系列(Inception v1\v2\v3\v4、ResNet、ResNext、DenseNet、SENet)
写在前面:此文只记录了下本人感觉需要注意的地方,不全且不一定准确.详细内容可以参考文中帖的链接,比较好!!! 经典的CNN:Inception v1\v2\v3\v4.Resnet.Resnext.D ...
- Resnet论文解读与TensorFlow代码分析
残差网络Resnet论文解读 1.论文解读 博客地址:https://blog.csdn.net/loveliuzz/article/details/79117397 2.理解ResNet结构与Ten ...
- ResNet 论文阅读笔记
ResNet 论文阅读笔记 #机器学习/深度学习 文章介绍 论文地址:https://arxiv.org/pdf/1512.03385.pdf 原文题目:Deep Residual Learning ...
- 何恺明的ResNet论文,被引量刚刚突破10万大关
转载自机器之心 这是一篇计算机视觉领域的经典论文.李沐曾经说过,假设你在使用卷积神经网络,有一半的可能性就是在使用 ResNet 或它的变种. 前几天,人们发现 ResNet 论文被引用数量悄然突破了 ...
- 目标检测学习笔记2——ResNet残差网络学习、ResNet论文解读
ResNet残差网络学习.ResNet论文解读 一.前言 为什么会提出ResNet? 什么是网络退化现象? 那网络退化现象是什么造成的呢? ResNet要如何解决退化问题? 二.残差模块 三.残差模块 ...
- ResNet 论文理解含视频
ResNet 论文理解 问题导引论文理解 Q1.神经网络真的越深越好吗? Q2. 为什么加深网络会带来退化问题? Q3. 如何构建更深层的网络? 基于残差的深度学习框架 Residual Learni ...
- 大盘点 | 十大即插即用的涨点神器!
大盘点 | 十大即插即用的涨点神器! 作者:Amusi Date:2020-08-11 来源: CVer微信公众号 链接: 大盘点 | 十大即插即用的涨点神器! 前言 最近出现了很多"即插即 ...
最新文章
- 5、Scala模式匹配
- FastReport3.20简易安装方法。
- 世界人工智能大会圆桌实录:AI与产业融合创新的挑战与机遇
- 制度缺陷还是人性不堪
- 今天开始学Pattern Recognition and Machine Learning (PRML),章节1.6,Information Theory信息论简介
- 进击的 Kubernetes 调度系统(二):支持批任务的 Coscheduling/Gang scheduling
- 【今日互联网大事儿】小米净化器出来了呢
- CSS魔法堂:深入理解line-height和vertical-align
- app store 关键词
- 双十一还没来,快递公司已经宣布涨价
- 第4章 旋转蛇(《C和C++游戏趣味编程》配套教学视频)
- 使用SQLSERVER的扩展存储过程实现远程备份与恢复
- 基于YOLOv4的matlab深度学习的道路标志识别
- 记一次代码被公司电脑加密后,编译不通过
- 数显之家快讯:【SHIO世硕心语】古有《陋室铭》,现有《群之铭》!
- PHP中使用 fsockopen curl 模拟异步处理
- IEEP部署企业级网络工程-网络故障-环路故障
- 台式计算机硬盘能扩大吗,台式机硬盘扩容方法,台式机械硬盘安装分区教程图解...
- 前端背景图放置_CSS 背景图片排版
- Proteus-中英文对照
热门文章
- ABAP 负号 提前
- 释放数据价值,大数据分析如何助力电商获客又增收?
- idea创建包怎么让包分层_干货 | 通勤包怎么选?我推荐这6只
- java 大小相间排序_ArrayList实现根据某属性大小相间排序
- float 精度_float相加产生精度损失的原因是什么?
- mllib调参 spark_从Spark MLlib到美图机器学习框架实践
- root域名服务器 gtld服务器_购买阿里云域名和空间服务器实操
- Python中读取文件中的json串,并将其写入到Excel表格中
- python爬虫之selenium,谷歌无头浏览器
- ecshop 后台添加评论_如何提升外卖营业额?评论回复不可忽视