经典CNN论文系列之ResNet(包含tensorflow 代码实现)

本文详细介绍了残差网络(ResNet)的设计原理,如何解决深度神经网络的训练难题,以及在ImageNet数据集上的优秀表现。通过与VGG网络的对比,展示了ResNet在深度和复杂性之间的平衡。文章还提供了TensorFlow代码实现,帮助读者理解和应用ResNet。
摘要由CSDN通过智能技术生成

摘要

总结一下作者在摘要中简明扼要的提出了Resnet解决了什么问题以及其优越性:

  • 针对深层神经网络难以训练,提出了一种残差学习框架来简化网络训练,这些网络可以比以前使用的网络要深入得多。
  • 通过重复利用已学习过的参考层输出,将层重新表示为参考层输出与当前层的和。
  • 因为参考层的输出是以及学习过的,而不是未学习的函数。所以添加这样子的框架并不会给网络带来参数的巨大增加。
  • 对比了VGG网络,实验表明即使层数比它更深但仍然具有较低的复杂性。
  • 在ImageNet测试集上的误差达到3.57%,该结果在ILSVRC 2015年分类任务中获得第一名。

remark:降低网络复杂性与更容易的训练的特性其实是在不显著增加网络训练参数的情况下,通过残差模块能将网络信息传递到更深的层之中。

引言

总结下前言的结构,其实对于一篇文章来说最值得学习的就是他的思路以及前因后果,这些都包括在引言里面,同时这对自己的逻辑思维能力和写论文也有很大的帮助。

  1. 作者先是交代背景,深层次的神经网络在复杂问题上的至关重要的。举了Imagenet数据的例子,优胜者许多都利用了非常深的模型。
  2. 到这里作者话锋一转提出问题,是不是越深的网络就能获得更好的性能?当然不是,一个障碍是众所周知的梯度消失/爆炸问题,然后再提出了已有的解决方案:1 规范化初始化;2 添加BN层。这些使得数十层的网络能够得到收敛。
  3. 接下来作者提到一个问题:当更深层次的网络能够开始收敛时,一个退化问题就暴露出来了:随着网络深度的增加,精度达到饱和,然后迅速减少。出乎意料的是,这种退化并不是由过拟合引起的,在一个合适的深度模型中增加更多的层会导致更高的训练误差
    4.
  4. 针对这个问题,作者正式引入了Resnet网络来解决这种退化问题。 形式上,将期望的层映射表示为H(x),让我们每隔几个堆叠层叠加非线性层F(x):= H(x)和x。 原始映射就变成了为F(x)+ x。(这里作者还提到了在极端情况下,如果H(x)就是最优,那么可以将残差设为0)
  5. 接下来作者给出了他在Imagenet和CIFAR-10的实验结果:1)极深残差网易于优化,而相对的纯网(简单的叠加层)在深度增加时训练误差较大;2)我们的深度残差网可以很容易地从深度的大幅增加中获得精度增益,产生的结果大大优于以前的网络。(作者原话:152层残差网是迄今为止在ImageNet上出现的最深的网络,但仍然比V
  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值