第7章 卷积神经网络

7.1 整体结构

全连接和CNN的对比

在这里插入图片描述

7.2 卷积层

7.2.1 全连接层存在的问题

MNIST数据集例子中,图片是2828的,但是训练/预测时,将2828的数据排列成一列, 以784个数据的形式输入到神经网络。忽略了数据的“形状”

图像通常是高,长,通道方向上的三位形状。这个形状中包含了重要的空间信息。而全连接神经网络忽视了这个信息。

而卷积层可以保持形状不变。当输入数据是图像时,卷积层会以3维 数据的形式接收输入数据,并同样以3维数据的形式输出至下一层。因此, 在CNN中,可以(有可能)正确理解图像等具有形状的数据。

另外,CNN中,有时将卷积层的输入输出数据称为特征图(feature
map)。其中,卷积层的输入数据称为输入特征图(input feature map),输出 数据称为输出特征图(output feature map)

7.2.2 卷积运算

卷积层进行的处理就是卷积运算。

书中的卷积例子是:输入大小(4, 4),滤波器(核)(3, 3),输出大小是(2, 2)

具体过程:

将各个位置上滤波器的元素核输入的对应元素相乘,然后再求和(乘积累加运算)
在这里插入图片描述

有偏置的情况下

在这里插入图片描述

7.2.3 填充(padding)

在进行卷积层的处理之前,有时要向输入数据的周围填入固定的数据(比如0),这个过程就叫填充

在这里插入图片描述
通过填充,大小为(4, 4)的输入数据变成了(6, 6)的形状。然后,应用大小为(3, 3)的滤波器,生成了大小为(4, 4)的输出数据。

使用填充主要是为了调整输出的大小。比如,对大小为(4, 4)的输入 数据应用(3, 3)的滤波器时,输出大小变为(2, 2),相当于输出大小 比输入大小缩小了2个元素。这在反复进行多次卷积运算的深度网 络中会成为问题。为什么呢?因为如果每次进行卷积运算都会缩小 空间,那么在某个时刻输出大小就有可能变为1,导致无法再应用 卷积运算。为了避免出现这样的情况,就要使用填充。在刚才的例 子中,将填充的幅度设为1,那么相对于输入大小(4, 4),输出大小 也保持为原来的(4, 4)。因此,卷积运算就可以在保持空间大小不变 的情况下将数据传给下一层。

7.2.4 步幅(stride)

应用滤波器的位置间隔称为步幅(stride)。
在这里插入图片描述

输出大小的计算公式

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值