权值共享和卷积核(滤波器)
来源:互联网 发布:北京知天地 刘杰 电话 编辑:程序博客网 时间:2024/06/05 00:17
1.摘自http://blog.csdn.net/lien0906/article/details/51249947
第一步,针对一个神经元,一幅640*360图像,一个神经元要对应640*360个像素点,即一个神经元对应全局图像,全连接的话一个神经元就有640*360个参数;
第二步,然而,图像的空间联系是局部的,就像人是通过一个局部的感受野去感受外界图像一样,每一个神经元都不需要对全局图像做感受,每个神经元只感受局部的图像区域,然后在更高层,将这些不同局部的神经元综合起来就可以得到全局信息。假如每个局部感受野10*10,每个局部感受野只需要和10*10的局部图像连接,这样一个神经元就只需要10*10个参数;
第三步,全局图像是640*360,但局部图像只有10*10大小,10*10个参数只针对局部图像,如果全局图像中各个局部图像之间权值共享的话,即10*10个参数在不同局部图像上参数应用相同的话,则在全局图像上通过全局共享则只需要10*10个参数;
第四步,10*10个参数只针对一个神经元,要是有100万个神经元,则需要100万*10*10个参数,神经元多后,参数还是太大,如果每个神经元的这10*10个参数相同呢,这样就还是只需要10*10参数,因而经过局部感受野到权值共享再到每个神经元的10*10个参数相同,不管图像多大,不管每层神经元个数多少,而两层间连接还是只需要求解10*10个参数;
第五步,由于只有一个滤波器,只提取了一种特征,特征也太少了。一种滤波器也就是一种卷积核就是提取图像一种特征,例如某个方向的边缘。那么我们需要提取不同特征怎么办,多加几个滤波器不就行了。假设我们加到100种滤波器,每种滤波器的参数不一样,表示提取输入图像不同特征,例如不同边缘。这样不同滤波器去卷积图像就得到不同特征的放映,我们称之为Feature Map,所以100中卷积核就有100个Feature Map,这100个Feature Map就组成了一层神经元。我们这一层有多少个参数到这时候就明了吧,100种卷积核 * 每种卷积核100个参数 = 100 * 100 = 10000个参数。
最后,刚才说每一个隐藏层的参数个数和隐藏层的神经元个数无关,只和滤波器大小和滤波器种类数有关,那么隐藏层的神经元个数怎么确定呢?它和原图像,也就是输入的大小(神经元个数)、滤波器的大小和滤波器在图像中的滑动步长都有关!假如我的图像是1000*1000像素的,而滤波器大小是10*10,假设步长为10,即滤波器没有重叠,这样隐藏层的神经元个数就是 1000 * 1000 / (10*10) = 100*100个神经元(如果步长为8,卷积核会重叠2个像素)。这只是一种滤波器,也就是一个Feature Map的神经元个数哦,如果100个Feature Map就是100倍了,
需要注意一点,上面的讨论都没有考虑每个神经元的偏置部分,所以权值个数需要加1,这也是同一种滤波器共享。如滤波器10*10,卷积核个数6,则参数个数为:
(10*10 +1) * 6 = 606.
- 权值共享和卷积核(滤波器)
- 卷积神经网络卷积层和池化层学习、权值共享!!
- 如何理解卷积、权值共享、池化
- 卷积神经网络 权值共享 是什么 简单易懂版
- 如何理解卷积神经网络中的权值共享
- 卷积与采样还原、滤波器的联系(应用篇)
- 【深度学习笔记】多层感知机,非权值共享型卷积神经网络,权值共享型卷积神经网络之间的关系
- 【深度学习笔记】多层感知机,非权值共享型卷积神经网络,权值共享型卷积神经网络之间的关系
- 图像卷积与滤波器关系
- 3用于MNIST的卷积神经网络-3.4卷积滤波器核的数量与网络性能之间的关系
- 双边滤波器和引导滤波器
- 卷积神经网络(CNN)的细节问题(滤波器的大小选择)
- SAR成像基础知识急救箱(一)卷积 相关 滤波器那些事儿
- 卷积,使用filter2D创建自定义线性滤波器
- 卷积滤波器如何提取图像特征
- 卷积和卷积神经网络
- 卷积神经网络_(1)卷积层和池化层学习
- 卷积神经网络_(1)卷积层和池化层学习
- 人月神话读书笔记(2)----人月神话
- Zynq VDMA 自测
- angular的分页代码示例
- zz Specified VM install not found: type Standard VM
- 刚开始添加Open CV的时候遇到问题
- 权值共享和卷积核(滤波器)
- 如何让file input能够实现置空和【异步】上传后相同文件的再次选择触发change
- 代理
- Android绘图基础3
- JAVA自学之每日一题(十)
- Hibernate主键生成方式 Key Generator
- There is no getter for property "name" in java.lang.String
- Servlet 3.0 新特性详解
- Android Binder 设计与实现