卷积神经网络——卷积层计算

卷积神经网络——卷积层计算

卷积层计算

卷积层关键操作:

  • 局部关联:每个神经元看作一个滤波器filter,局部数据权值共享。
  • 滑动窗口:对一个filter内的数据进行计算。

关键参数:

  • 深度depth:filter的个数
  • 步长stride:单个filter一次滑动的长度
  • 填充值zero-padding:对输入数据进行填充

在这里插入图片描述

填充值的作用:对于一个像素为5x5的输入图片,如果滑动窗口的大小为2x2,步长为2,则存在一列数据无法处理,此时需要添加0填充值,以保证所有数据都能被遍历到。

在这里插入图片描述

卷积具体的计算方式,如下图所示:

在这里插入图片描述

上图中的蓝色矩阵为输入的图像,维度为[5, 5, 3],经过0值填充后(灰色值为0部分),维度变为[7, 7, 3],粉色矩阵为卷积层的神经元,这里有两个神经元(w0, w1),每个神经元的维度为[3, 3, 3],步长设置为2,即每个窗口滑动的长度。

蓝色矩阵的输入数据,与filter(粉色矩阵)的权重数据进行矩阵内积计算,将结果与偏置值bias相加,得到的结果为绿色输出矩阵中的一个值。

以第一个窗口计算为例:

[0x1+0x1+0x(-1)+0x(-1)+0x0+1x1+0x(-1)+0x(-1)+1x0] + [0x(-1)+0x0+0x(-1)+0x0+1x0+1x(-1)+0x1+0x(-1)+2x0] + [0x0+0x1+0x0+0x1+2x0+0x1+0x0+0x(-1)+0x1] + 1 = 1

若输入数据维度为WxW,填充值P,Filter大小FxF,步长S,输出数据维度为NxN,则有如下计算公式:
N = ( W - F + 2P)/ S + 1

参数共享机制

卷积层中,每个神经元连接的数据窗权重是固定的,每个神经元只关注一个特性。神经元就是图像处理中的滤波器,卷积层中的每个滤波器都会有自己所关注的一个图像特征,比如垂直边缘,水平边缘,颜色,纹理等。这些所有神经元加在一起就像整张图像的特征提取器集合。

在这里插入图片描述

总结

没有学习过图像处理,卷积在我理解来看就是y = Wx + B的线性乘加操作。只不过相对全连接层,局部窗口内的数据共用一组相同权重W(参数共享),使得需要计算的权重数据量大幅度减少。。

本文参考:https://www.jianshu.com/p/1ea2949c0056,侵删。

后记

本文写于回南京的高铁上,农历新年之后第一篇博客,希望今年收获能远大于去年,路漫漫其修远~

  • 8
    点赞
  • 36
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值