《Deep Residual Learning for Image Recognition》
本文主要是添加了shortcut映射来处理梯度消失的问题。
这种解决深度网络的“随着层数的加深,精度下降”的方法是从优化算法的角度考虑问题的,不同于通过引入正则化来提升网络精度。
心得:当一个网络效果不好的时候,有几种尝试解决方式:
① 改变目标函数
② 使用新的优化算法
③ 引入正则项
其实就是一个搭积木,然后最后看你的房子结构是否稳定的问题。这几个都可以随意的拼接,当然也可以创新,构造新的部件。真的发现效果好的部件,估计离paper就不远了吧!加油!
最近读了ResNet, 文章中有很多网络处理的技巧,关于参数怎么调整,细节讲的也讲清楚。对于一个初学者来说需要,很有必要好好研读一番。
需要掌握的一些基础知识:
1. BN: batch normalization
https://blog.csdn.net/whitesilence/article/details/75667002 这个博客讲的挺清楚
为什么起作用?
吴恩达的课程讲的很清楚~
①take on a similar range of values that can speed up learning;
②改变数据的分布,使得每一层的训练受前面层的影响不大,使得每一层都可以自己学习,稍独立于其他层,且可以加速网络的训练;
③在这个过程中添加了一些噪音,有一定的正则化作用,影响程度和batch大小有关,batch越大,正则化作用越小;可以和dropout结合使用
2. multi-scale testing
3. ROI-pooled features
4. 10-crop testing
5. anchor
https://www.zhihu.com/question/42205480 码着 回头看~
6. 学习率的调整方式:
从0.1开始学习的话会有些大,不易于收敛;先用较小的学习率使得网络的误差降到一定的范围内,再将学习率调大,继续训练????
我咋觉得有点问题???不应该先大再小吗???
7. zero-padding
结果展示都可以比较哪些量???
1. top-1 error & top-5 error 值
error随epoch变化的曲线图
2. 参数的个数;用于比较模型的复杂度
3. mAP: mean average precision
https://blog.csdn.net/LeeWanzhi/article/details/79570735
===========================================================================
2016年:《Identity Mappings in Deep Residual Networks》
看了下文章,没有理解的很透彻。这个博主感觉比自己高了n个段位,反复研究吧!
https://blog.csdn.net/wspba/article/details/72789964