关于卷积神经网络该如何理解的一些思考
2018-03-28 19:19
525 查看
最近思考了一下关于“卷积神经网络”该如何去理解的问题。很多文章说,越到后边的卷积层,就会有组合多个特征的能力。但是我们每个卷积层不是有很多卷积核吗,每个卷积核不是滤波器吗,前几层把特征都滤掉了。怎么得到的如下所示的图?
后来我想到可以这样理解:假设一个卷积核可以过滤出横线,而且过滤效果非常好,那么图像经过它之后应该就变成一堆长短不一的横线。假设一个卷积核可以过滤出竖线,而且过滤效果非常好,那么图像经过它之后应该就变成一堆长短不一的竖线。这样肯定不行。所以滤波器不能过滤的太过火,示例程序在随机生成卷积核的时候,随机数方差也不大。只有在过滤得不彻底的情况下,图像经过第一个卷积核以后,横线当然明显,竖线也还有残留。然后经过第二个卷积核,他又把竖线的特征放大,横线的特征也有所保留。这样经过多层卷积以后,一些组合特征便会出现。
同时也可以思考,池化时选择最大化效果更好:让特征尽快凸显。
再考虑,全连接层需要多少?我觉得一层就够了。因为多个全连接层是非线性选择器。而之前我们已经由许多个卷积核、许多层卷积核过滤除了特征的各种组合,在这里已经没有必要了。
有些神经网络,处于前面的神经元要越过中间层向后边的卷积层提供输入,应该因为多层滤波器会丢失一些特征,通过这些方法进行弥补。
后来我想到可以这样理解:假设一个卷积核可以过滤出横线,而且过滤效果非常好,那么图像经过它之后应该就变成一堆长短不一的横线。假设一个卷积核可以过滤出竖线,而且过滤效果非常好,那么图像经过它之后应该就变成一堆长短不一的竖线。这样肯定不行。所以滤波器不能过滤的太过火,示例程序在随机生成卷积核的时候,随机数方差也不大。只有在过滤得不彻底的情况下,图像经过第一个卷积核以后,横线当然明显,竖线也还有残留。然后经过第二个卷积核,他又把竖线的特征放大,横线的特征也有所保留。这样经过多层卷积以后,一些组合特征便会出现。
同时也可以思考,池化时选择最大化效果更好:让特征尽快凸显。
再考虑,全连接层需要多少?我觉得一层就够了。因为多个全连接层是非线性选择器。而之前我们已经由许多个卷积核、许多层卷积核过滤除了特征的各种组合,在这里已经没有必要了。
有些神经网络,处于前面的神经元要越过中间层向后边的卷积层提供输入,应该因为多层滤波器会丢失一些特征,通过这些方法进行弥补。
相关文章推荐
- 关于vue.js v-bind 的一些理解和思考
- 关于PHP中协程和阻塞的一些理解与思考
- 关于FFT的一些理解,以及如何手工计算FFT加深理解和验证正确性
- 关于C#间接继承的一些思考:如何修改继承函数的返回值类型
- 关于人性的一些思考:如何提高员工工作热情与成就感,以及因材施教的心灵培训
- 关于自动化运维的一些思考
- 如何清晰地思考:近一年来业余阅读的关于思维方面的知识结构整理(附大幅思维导图)
- 关于copy,weak,strong的一些理解
- 关于虚拟化一些思考——不应该盲目使用
- winform学习之-----关于按键操作的一些小知识(如何获取焦点所在的当前控件)20160623
- 关于项目进度慢的思考----如何提高整体开发效率
- 关于Http协议与TCP协议的一些简单理解
- Ctorrent :关于NAT 的一些思考
- 关于多层架构一些思考
- 『飞秋』关于ASP.NET MVC+Repository+Service架构的一些思考
- 关于循环语句打印形状的一些思考
- 关于innodb中MVCC的一些理解
- 关于generator异步编程的理解以及如何动手写一个co模块
- 关于图计算和graphx的一些思考
- 关于软件开发团队的一些思考