计算机视觉 ————1,卷积之后特征图的大小的计算,2,采取卷积的部分原因。3,卷积网络相关知识

1,全连接层存在的问题:参数量过大。全连接层每个输出要和上一层每一个输入相联系,这样会产生巨大的参数量,自然而然增加了计算量。下图为全连接的示意图,可以直观看到,参数过多。造成问题也会很多(例如硬件上的速度,软件上的过拟合)

2,采取卷积网络的部分原因

    (1)局部相关性:在2D图片上,一个像素点和周围像素点经常会有联系,这就是局部相关性。

    (2)权值共享,每个输出节点,只与感受野中的点相关,(也就是(1)中所说的局部相关性,自己设置的相关性矩阵的大小),所有输出点,从输入到输出,用同一组权值,便是权值共享。

因为这两个原因,可以使得参数量大大减少。

3,卷积神经网络通过充分利用局部相关性和权值共享的思想,大大地减少了网络的参数 量,从而提高训练效率,更容易实现超大规模的深层网络。现在我们来介绍卷积神经网络层的具体计算流程。

以 2D 图片数据为例:

卷积层接受      高、宽分别为   ℎ 、 𝑤,通道数为   C𝑖𝑛的输入特征图  𝑿,

在C𝑜𝑢𝑡个高、宽都为𝑘,通道数为C𝑖𝑛的 卷积核作用下,

生成高、宽分别为 ℎ′ 、 𝑤′,通道数为C𝑜𝑢𝑡的特征图输出。

其中,输入图的尺寸,输出图的尺寸,和  卷积核尺寸 之间的关系如下:

其中,Ph代表,输入图片填充零的行数,k代表卷积核的长度,s代表步长。

在这里面,输出特征图的通道数与卷积核的通道数一样。下面是一个  三通道,二卷积核的示意图:,输出的就是二通道的特征图,(需注意卷积核1也是三通道,卷积核2也是三通道,和输入的通道数是保持一致的)

      

4,卷积的代码实现,

tensorflow中,既可以用 tf.nn.conv2d(X,W,stride='',padding=''),也可以用keras的layer层,Layers.Conv2D(),其中的参数可以具体查找官网,或者在使用时候,直接看函数提示。

需要注意的是,如果stride=1,padding=‘same’的话,那么会trnsorflow会自己填充0,生成与输入图片同样尺寸大小的特征图。

5,卷积的直观算法,下图示例,其余类似:

   

这样既可以求出卷积后的值,其余类似。

6,卷积的变形:空洞卷积,转置卷积。等比较好理解。

空洞卷积示意图:

转置卷积示意图:

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值