感受野与权值共享

什么是全连接?

若有一幅100x100的图像,隐层有100个神经元,每个神经元与每个像素全部连接,则有100*100*100个连接,这就叫做全连接。


什么是局部连接?

若有一幅100x100的图像,隐层有100个神经元,每个神经元只和10*10个像素相连接,那么就有10*10*100个连接


什么是感受野?

https://blog.csdn.net/gzq0723/article/details/53138430

在神经网络中,感受野的定义是: 
卷积神经网络的每一层输出的特征图(Feature map)上的像素点在原图像上映射的区域大小。 

若输入层通过第一层(kernel_size = 3x3,stride = 1),再通过第二层(kernel_size = 2,stride = 1)计算第二层对于输入层的感受野?

这里的第二层的stride大小与计算无关,很显然第一层对于输入层的感受野是3x3,第二层对于第一层的感受野为2x2

计算第二层关于输入层的感受野文字描述如下:

因为第二层kernel_size = 2,所以第二层输出的feature map上的像素点在第二层上的区域大小是2x2,因为第一层的感受野是3x3,stride是1,所以第二层的输出在输入层的映射为4x4,则第二层关于输入层的感受野是4x4

从上图应该能比较直观地看出。

感受野计算公式:V = ((V‘-1) * stride)+ ksize

计算是由最深层往浅层计算

V‘是当前层相对于前一层的感受野,大小是:VxV,stride是前一层卷积核的步长,ksize前一层滤波器的size。

所以VGG16里面用3个3x3的卷积核代替了一个7x7的卷积核,两者的感受野是一样的V1 = (3 - 1) * 1 + 3 = 5

V2 = (5 - 1)*1 + 3 = 7


什么是权值共享?

神经网络处理图像的参数很多,例如上面说的一幅100*100的图片有100个神经元,则共有参数(100*100*100)个参数,太多了,假如一个神经元的感受野是10x10,每个神经元只需要和10*10的局部图像连接,则每个神经元对于局部图像的参数是10*10+1(包括偏置项b),但是全局图像是100*100,10*10的只是局部图像,如果全局图像中各个局部图像之间权值共享的话,即10*10+1个参数在不同局部图像上参数应用相同的话,则在全局图像上通过全局共享则全局只需要10*10+1个参数;然而如果有1000个神经元,那么参数数量是1000*(10*10+1),还是很多,所以要是所有的神经元都共享这(10*10+1)个参数的话,神经元再多参数还是(10*10+1),所以通过权值共享之后,无论图像再大,神经元个数再多参数都是(感受野大小+1)个参数。

一种滤波器也就是一种卷积核就是提取图像一种特征,例如某个方向的边缘。那么我们需要提取不同特征就要多加几个滤波器了。若有N个滤波器,每个滤波器的参数不一样,表示提取输入图像不同特征,例如不同边缘。这样不同滤波器去卷积图像就得到不同特征的放映,我们称之为Feature Map,所以N个卷积核就有N个Feature Map,这100个Feature Map就组成了一层神经元。参数数为:N*(感受野大小+1)

  • 8
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值