深度学习之CNN一 卷积与池化

首先给大家推荐一下我老师大神的人工智能教学网站。教学不仅零基础,通俗易懂,而且非常风趣幽默,还时不时有内涵黄段子!点这里可以跳转到网站

1 卷积

连续:
一维卷积:
二维卷积:
离散:
一维卷积:
二维卷积:

卷积具有交换性,即

编程实现中:
二维卷积:
这个定义就不具有交换性

卷积

上面的称为核,有时候称为特征映射。

2 卷积神经网络

卷积神经网络主要利用3个思想:稀疏连接、参数共享、平移不变性。

  • 稀疏连接

    一个神经元的感知视野是指能够影响该神经元的其他神经元。如上图中的感知视野是。深度卷经网络中,深层单元的感知视野比浅层单元的大。
  • 参数共享
    稀疏连接和参数共享都能显著减少参数。
  • 平移不变性
    参数共享会导致平移不变性。称对是不变的,如果。例如是一张图像,,则。

池化导致的平移不变性
stride
池化

池化(pooling)
池化输出的是邻近区域的概括统计量,一般是矩形区域。池化有最大池化、平均池化、滑动平均池化、范数池化等。
池化能使特征获得平移不变性。如果我们只关心某些特征是否存在而不是在哪里时,平移不变性就很有用了。卷积也会产生平移不变性,注意区分,卷积对输入平移是不变的,池化对特征平移是不变的。

池化能显著地减少参数,若滑动距离stride大小为,则参数量减少倍

池化能解决不同规格的输入的问题。如下图池化时,将图片区域四等分,不管图片的大小。

CNN1

完整的CNN结构:

CNN2

由上面的两幅图可以看到,为了提取不同的特征,每个卷积层都有多种卷积(通道, channel)。
一般来说,输入并不只是一张灰度图,更多的是彩图,这样输入就是一个三维张量(tensor),表示第个通道的行列的值。则通过卷积得到的特征可表示为:
其中是一个四维张量,表示卷积层的第个通道与输入的第个通道在行偏、列偏时的权重系数。式子中-1是因为C和Python中 下标是从0开始的。
滑动长度为的卷积

补零

神经网络在实现中还要注意输入的补零方式。如果不补零的话,由于卷积核的关系,特征的大小(size)总是小于输入的大小,致使整个网络的深度是有限的。

如上图所示,补零的方式有两种:
valid:也就是不补零。
same:在图像边缘补零,使得输入和输出大小相同。

点这里可以跳转到人工智能网站

发表评论