卷积神经网络实例

  • 经典卷积网络
  • LeNet-5,1980年代的。
  • AlexNet
  • VGG-16
  • 残差网络
  • 1*1卷积
  • Inception网络


经典卷积网络

LeNet-5,1980年代的。

该网络可以识别图片中的手写数字,是针对灰度图像训练的

AlexNet

首先使用一张2272273的图片做输入,第一层使用96个1111的过滤器,步长s为4,得到555596的输出,然后用33的过滤器,步长为2,进行最大池化操作,输出卷积层尺寸为272796,接着在使用55的过滤器,padding之后,输出的结果是2727256,然后在进行最大池化,33的过滤器,步长为2,得到1313256的输出,在进行padding操作,在进行池化,循环往复,最后得到一个66256的尺寸输出,将其展开得到一个包含9216数的向量,然后是一些全连接层,最后是一个softmax函数。

神经网络应用实例图 神经网络经典实例_神经网络

VGG-16

假设输入2242243的图片,使用64个33的过滤器,步长为1,进行两次卷积操作,输出结果是22422464.,然后池化层,将图像缩小到了11211264.然后又是128个过滤器,进行两次卷积操作得到112112128尺寸的输出,接着是池化层得到56 56128,接着用256个过滤器进行三次卷积操作,得到5656*256的输出。循环往复,最后得到的输出如下:

神经网络应用实例图 神经网络经典实例_深度学习_02

残差网络

  • ResNet是由残差块构成的。其内部的残差块使用了跳跃连接,缓解了在深度神经网络中增加深度带来的梯度消失问题
  • 残差块:如下图所示,是一个两层神经网络,在第l层进行激活,得到a(l+1)再次进行激活,最后得到a(l+2)。

    然后有时a【l】还会直接跳到第l+2层进行计算,于是便得到了a【l+2】=g【z【l+2】+a【l】】。这种连接方式,称为跳远连接(skip connection),或简称为捷径(short cut),这就构成了残差块。

    最后形成的残差网络就是使用很多的残差块在普通神经网络中,如下所示,会有一些a【l】进行跳跃到后边的神经网络层中进行运算。下图中共有5个残差块。

1*1卷积

假设使用下图所示11的过滤器,里边的数字是2,相当于对输入66的矩阵乘以数字2,很明显用处不大。

神经网络应用实例图 神经网络经典实例_pytorch_03


如果是一张6632的图片,使用1*1的过滤器进行卷积效果更好。相当于给32个信道应用了全连接。

神经网络应用实例图 神经网络经典实例_神经网络应用实例图_04

Inception网络

inception模块的作用是代替人工来确定卷积层中的过滤器类型。或者确定是否需要创建卷积层或池化层。