目录
- 😺一、引言
- ✨1.1 作者简介
- 🐶1.2 网络前述
- 😺二、网络结构
- 🐶2.1 发现问题
- 🐶2.1 残差结构
- 🐶2.2 残差网络
- 😺三、网络实验结果
- 😺四、总结
前面已经讲了四个深度学习的经典网络架构,现在终于到了残差网络了。
残差网络创作于2015年,作者是时任微软研究院的四名研究员Kaiming He 何恺明、Xiangyu Zhang 张祥雨、Shaoqing Ren 任少卿、Jian Sun 孙剑!这四位都是AI领域响当当的人物,
论文一作何恺明可是妥妥的大神,多次在计算机视觉领域的三大顶会(CVPR、ICCV、ECCV)中夺得最佳论文奖、最佳学生论文奖以及多次Best Paper提名,此外,谷歌在2020年发布的学术指标榜单中,CVPR 2015-2019(CVPR是AI领域排名第一的顶级会议)五年中论文引用量第一名的就是何大神的ResNet。
不止如此,更振奋人心的消息是2021年12月份中旬,ResNet的论文引用量已经突破10万大关(距离提交该论文仅过去了六年),如此成就可谓华人学者之光啊!!!博主偶像🙈
深度残差网络(Deep residual network, ResNet)的提出无疑是人工智能领域的一大创新!
ResNet一经提出便是屠榜的存在:
- ImageNet分类任务第一名(ILSVRC 2015大赛)
- ImageNet检测任务的第一名(超过第二名16%)
- ImageNet定位任务的第一名(超过第二名27%)
- COCO检测任务的第一名(超过第二名11%)
- COCO分割任务的第一名(超过第二名12%)
论文链接给出:Deep Residual Learning for Image Recognition
那么为什么残差网络有如此辉煌的战绩呢?➡️因为残差网络解决了深度CNN模型难以训练的问题。
我们知道要想提高网络的特征提取能力最直接的方法就是加深网络,但一味的堆叠网络层真的能一直对视觉任务具有优化作用吗?
下图是作者在cifar10数据集上进行的神经网络不同深度在训练集与测试集的表现实验折线图:
从图中可以明显地看到具有56层的神经网络在训练集与测试集的误差都要比20层的神经网络要高!
这个实验可以说明更深的网络存在退化问题,作者指出这种退化不是由网络过拟合引起的,且如果在已经适度的CNN中添加更多的层会使训练误差更大。
残差结构如图所示:
首先要理解这个结构需要先知道什么是恒等映射?
恒等映射:一个通俗的解释是:我们假设手里有一个浅层神经网络,如果我们继续堆叠新的网络层以获取深层网络,这时极端情况就是新增加的层什么都不学习,仅仅对浅层网络获取的特征进行了复制,那么这样的新层就是恒等映射(Identity mapping);这种极端情况下,深层网络同浅层网络一样,不会出现退化现象。
正是因为这一极端情况,激发了何大神的灵感,他提出了残差网络!
既然神经网络难以拟合一个恒等映射,那么另一种思路就是构造一个天然的恒等映射,现在我们看残差结构:我们假设输入为x,经过残差连接的新的输出为H(x)=F(x)+x,然后经过反向传播让网络学习二者之间的误差F(x)=H(x)-x,这样一来就可以保证网络实现恒等变换:如果误差F(x)=0,网络实现恒等变换;如果F(x)不等于0,说明网络还可以学习到有用的信息,那二者的叠加作为下一层的输出效果更好。
残差结构的旁路被称为shortcut或者skip connection。
为了证明残差结构的有效性,作者使用了三种网络进行实验,分别是VGG19、34层的朴素VGG(按照VGG逻辑增加网络层)、加入残差结构的朴素VGG,三种网络如下图所示:
下图表示的是不同深度的残差网络在ImageNet数据集上的表现:
由图可知,残差网络能够在网络加深的情况下保持精度的稳步提升!为了减少模型的训练时间成本,作者将原有的residual结构使用一种bottleneck代替常规的残差块,bottleneck使用1×1来扩张或缩减特征图尺度以保证核心层的滤波器数目不受上一层的影响,同时也不会影响下一层。如图所示 :
残差网络有不同的层数,常用的有:ResNet50、ResNet101、ResNet152,如表所示:
残差网络在ImageNet数据集上的表现如下所示:
ResNet解决了深层网络难以训练的问题,这无疑是对计算机视觉领域的一大推动!!!Respect!!!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/bian-cheng-ri-ji/70455.html