记录一下看resnet论文的心得体会

作者在摘要中提出一个现象:深度的神经网络是很难训练的。因此提出了一种残差学习的框架,使得训练深的神经网络变得相对简单的多。残差神经网络就是为了解决这个问题的。

那么resnet网络相比于 cnn来说有什么优点呢?

cnn随着层数的增多导致训练误差和测试误差都会增加,精度会降低。

但是resnet不会,他这残差神经网络有其特殊的优势。层数越来越多后,例如1000层,一万层,也许提高不了太多精度,但是至少不会降低精度。

以ImageNet举例。作者使用了152层的深度,比VGG深度多了8倍,但是计算复杂度却更低。也因此赢下了2015年的ImageNet的竞赛

这里对神经网络做一个简单的介绍

卷积神经网络主要由这几类层构成:输入层、卷积层,ReLU层、池化(Pooling)层和全连接层(全连接层和常规神经网络中的一样)。卷积神经网络不同层可以得到不同的特征,比如低级的视觉特征和高级的语义特征。

作者具体解释了一下深度神经网络难以训练的现象

普通神经网络随着层数的增加,特别是层数很多的时候,它的梯度要么消失要么爆炸。

解决这个问题的两个办法:

1 在权重初始化的的时候做好一点,权重不要太大也不要太小

2 第二个就是中间加入一些normalization,包括BN,batch normalization。可以校验每个层之间的输出和梯度的均值和方差,避免有些层的数据特别大,有些层特别小。

这样可以保证网络是可以训练的。

但是使用这些技术是能够训练,也就是说能够收敛。虽然你现在能够收敛了,但是随着网络层数的增多。你的性能实际上是变差的,精度会变差。

不管是训练,验证还是测试误差都会变差。并且这不是一个由于层数变多,模型变复杂,导致的一个过拟合现象(因为训练误差也变高了,过拟合overfitting 是指训练误差变得很低,但是测试误差变得很高

从图中看到,56层相对于20层,它的训练和测试误差都变高了,说明普通神经网络不是层数越深越好

按道理来说,深层网络应该要比浅层网络好用些,至少深层网络前面层数可以和浅层网络保持参数一样,后面多出来的层数可以做一些identity mapping:你输出是X,那让你的输入也是x。至少不要帮倒忙。但是事实上SGD做不到这个。

作者提出的解决方法

作者提出一种解决方法,使得深度网络至少不能比浅的网络效果更差。

假设真实的东西为X,而神经网络学到的东西是H(X)。

残差神经网络后面的层数 学的东西不再是H(X)了,而是H(X)-X,即学到的东西和真实的东西的残差值。即F(X) = H(X)-X。

F(X)是后面网络学习到的东西,对网络的优化目标就是F(X)了,不停迭代使得F(X)尽可能小。

最终的输出的F(X)+X。

这就是残差神经网络的大致思想。论文后面举了很多例子说明加了残差神经网络会使得原本网络变得更好,并且收敛速度还会更快

为什么普通深层神经网络会梯度消失而且训练速度慢的解释

看图,红色是普通神经网络运算,即不停求导。但是是梯度很小的,是在0附近的一个高斯分布,因此求导相乘会非常小,最后导致梯度消失。

蓝色则是残差神经网络运算。由相乘变成相加。所以不会导致梯度消失,并且运算量也大大减小。从而收敛速度更快

PS:

**残差神经网络如何处理输入输出是不等的情况

  1. 在输入输出上添加一些额外的0,使得两者的形状可以对应起来
  2. 投影,通过1X1的卷积层,空间上不做任何事情,在通道维度上改变。步幅为2**

阅读ResNet论文 心得体会相关推荐

  1. 学习matlab体会,matlab学习心得体会

    MATLAB是一个实用性很强,操作相对容易,比较完善的工具软件,你知道matlab学习心得体会是什么吗?接下来就是学习啦小编为大家整理的关于matlab学习心得体会,供大家阅读! matlab学习心得 ...

  2. 计算机组成心得1500字,测量实习心得体会1500字

    测量实习心得体会1500字 希望同学们在测量过程中做到最大程度地精确测量,以下是关于测量实习心得体会1500字范文,欢迎阅读! 测量实习心得体会1500字(一) 土木工程测量作为专业的一项基本功,是我 ...

  3. 学php收获与体会,实习心得体会及收获

    再多的理论储备都将用于实践才可得以发挥作用.下面是由出国留学网小编为大家整理的"实习心得体会及收获2021",仅供参考,欢迎大家阅读. 实习心得体会及收获2021[一] 岁月不居, ...

  4. 用计算机写一份心得体会,计算机心得体会范文

    计算机心得体会范文 我们心里有一些收获后,通常就可以写一篇心得体会将其记下来,这么做可以让我们不断思考不断进步.那么好的心得体会是什么样的呢?下面是小编为大家整理的计算机心得体会范文,仅供参考,欢迎大 ...

  5. 计算机信息系统保密管理暂行规定心得体会,保密心得体会

    无论是对于企业还是个人,保密都是非常重要的事项,不能因为自己的放松,就松懈对重要信息的保护.下面是由出国留学网小编为大家整理的"保密心得体会",仅供参考,欢迎大家阅读. 保密心得体 ...

  6. html5课程总结500字,学习心得体会模板范文500字

    学习中有许许多多的快乐,如果你觉得不是,那就是你平时一定没有认真学习,认真学习的话,你会发现学习中蕴涵着无穷的快乐.下面是学习啦带来的学习心得体会范文500字,欢迎大家阅读. 学习心得体会500字范文 ...

  7. 计算机实验室管理培训心得,实验室管理心得体会【范文两篇】

    [导语]所谓心得就是工作或学习中的体验和领悟到的东西,亦可以称作心得体会."心得体会"是一种日常应用文体,属于议论文的范畴.一般篇幅可长可短,结构比较简单.下面是由无忧考网为大家整 ...

  8. 一点学计算机后的感受,计算机心得体会

    做任何一件事情,我们内心其实都是有撼动的,我们也会明白很多的道理,学到很多的知识.这次的你有了怎样的心得体会呢?下面是由出国留学网小编为大家整理的"计算机心得体会",仅供参考,欢迎 ...

  9. 怎么阅读论文,写心得体会

    收集资料: 阅读学术论文的心得体会! 如何阅读学术论文–和上一篇类似 大牛写论文的心得 几年的写论文和审稿心得 文献阅读心得体会格式: 1.看论文题目,做出论文类别判别. 新理论.新方法.解决新问题– ...

  10. DenseNet阅读心得体会

    ** DenseNet阅读心得体会 ** \qquad深度学习是机器学习的一个分支,它是伴随着计算机硬件技术的发展而兴起的.关于深度学习的起源可以追溯到1943年,心里学家麦卡洛克和数学逻辑学家皮兹发 ...

最新文章

  1. python运行mcmc为何老出错_python – 使用pyMCMC / pyMC对数据/观察结果设置非线性函数...
  2. layer.js 使用
  3. DASH直播平台的搭建
  4. IP地址的三种表示格式 及 在Socket编程中的应用
  5. Oracle就业课第四课之子程序
  6. Windows 2003 Server 用户隔离
  7. 游戏引擎cocos2d-android使用大全
  8. jsp用tags传递参数
  9. java对象排序_Java™ 教程(对象排序)
  10. 理解ROS Navigation Stack,看完这篇你就知道啦!
  11. Linux无线网络实用工具Top 10
  12. HDOJ(HDU) 1563 Find your present!(异或)
  13. 注册gmail邮件,遇到“此电话号码无法用于进行验证”该怎么办
  14. Photoshop CC 2017工具的使用
  15. sudoku me_Sudoku,一个完整的MFC应用程序。 第7部分
  16. 基于 Self-hosted Debug 的调试
  17. 初学乍练redis:Redis 5 Cluster手工指定主从关系
  18. 每日C语言代码(The sixth day)——选择排序法
  19. Crow和cinatra的C++web框架
  20. Springboot设置多数据源,随时切换

热门文章

  1. 4条地铁线,乘船到西站!杭州西站枢纽综合交通规划设计方案出炉
  2. 怎么批量给文件名加统一的几个字?
  3. java设置input隐藏,控制input输入框提示信息显示和隐藏的方法
  4. 教老婆学python
  5. 关于破解excel表格密码
  6. Linux多启动U盘,syslinux 制作多系统启动U盘
  7. 10个重要的算法C语言实现源代码:拉格朗日,牛顿插值,高斯,龙贝格,牛顿迭代,牛顿-科特斯,雅克比,秦九昭,幂法,高斯塞德尔 (转帖)
  8. 全国计算机专业大学排名全部,全国计算机专业大学排名汇总
  9. 鸿蒙电脑系统连不上打印机,电脑与打印机脱机怎么连接
  10. 推荐一个logo免费设计的网站