卷积神经网络基本概念-LMLPHP
  • 数字1处:一个圈表示一个神经元
  • 数字2处:一个圈表示一个神经元,圈的大小表示感受野的大小

1. 感受野

  • 感受野:表示扫描图片的范围大小
  • 感受野越大,图片扫描的范围越大,感受野越小,图片扫描的范围越小
  • 感受野的大小与卷积核的大小一致

2. 卷积核

  • 卷积核的大小与感受野的大小一致
  • 卷积核是需要求的参数w
  • 卷积核的大小通常为3*35*57*7
  • 卷积核个数根据自己的需求设置

3. 特征图【feature map】

  • 特征图的值相当于从不同的角度观看图片

  • 输出特征图的大小与卷积核的大小一致
    卷积神经网络基本概念-LMLPHP

  • image5*5,相当于是5*5大小的图片

  • filter3*3,表示卷积核的大小为3*3,即感受野为3*3

  • 特征图=卷积核与感受野点积+bias

    • 例如计算4的过程
      x = x 1 ∗ y 1 + x 2 ∗ y 2 + x 3 ∗ y 3 + x 4 ∗ y 4 + x 5 ∗ y 5 + x 6 ∗ y 6 + x 7 ∗ y 7 + x 8 ∗ y 8 + x 9 ∗ y 9 + b i a s = 1 + 0 + 1 + 0 + 1 + 0 + 0 + 0 + 1 + 0 = 4 \begin{aligned} x&=x1*y1+x2*y2+x3*y3+x4*y4+x5*y5+x6*y6+x7*y7+x8*y8+x9*y9+bias \\&=1+0+1+0+1+0+0+0+1+0 \\&=4 \end{aligned} x=x1y1+x2y2+x3y3+x4y4+x5y5+x6y6+x7y7+x8y8+x9y9+bias=1+0+1+0+1+0+0+0+1+0=4

4. 通道【channel】

  • 1个图片的通道有3个,分别为rgb,如果图片还有透明度属性,通道为4,为rgba
  • 一个通道有一个自己2维的卷积核
    卷积神经网络基本概念-LMLPHP
  • 如图,1个图片有三个通道,分别为x[:,:,0],x[:,:,1],x[:,:,2]
  • 一个通道有一个2维卷积核,上图的卷积核大小为3*3*33*3是自己设置的大小,再乘3表示有三个通道
  • 卷积核个数自己设置,上图设置了2个卷积核
  • 上图中6的计算步骤
    x = x w + b i a s = ( 0 + 0 + 0 + 0 + 0 + 0 + 0 + 2 + 2 ) + ( 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 ) + ( 0 + 0 + 0 + 0 + 2 + 0 + 0 − 1 + 0 ) + 1 = 6 \begin{aligned} x&=xw+bias \\&=(0+0+0+0+0+0+0+2+2)+(0+0+0+0+0+0+0+0+0)+(0+0+0+0+2+0+0-1+0)+1 \\&=6 \end{aligned} x=xw+bias=(0+0+0+0+0+0+0+2+2)+(0+0+0+0+0+0+0+0+0)+(0+0+0+0+2+0+01+0)+1=6

5. 填充【padding】

  • zero padding【0填充】
  • VALID
    • 不填充,有可能会忽略图片右侧或底下,这个需要看stride的设置
  • SAME
    • 填充,这种情况下,输出神经元个数等于输入神经元个数除以步长

6. 步长【stride】

  • 扫描图片的步长,当stride为2,表示每次扫描一次平移2个步长

7. 池化【pooling】

  • 目的就是降采样subsample,减少计算负荷,内存使用,参数数量(也可防止过拟合)
  • 减少输入图片大小也使得神经网络可以经受一点图片平移,不受位置的影响
  • 池化神经元没有权重值【不需要计算参数】,它只是聚合输入根据取最大或者是求均值
  • 通常使用最大池化,因为我们就是要保留最大特征,如果用平均池化会把最大特征平均掉,特征会变得不明显,不是我们想要的结果
  • 池化类型
    • 最大池化,取池化核的最大值, 如图,最大值为5
    • 平均池化,取池化核的平均值,如图,平均值就为(1+5+3+2)/4
      卷积神经网络基本概念-LMLPHP

8. dropout

  • 在每一次训练步骤中,每个神经元【包括输入神经元,但是不包括输出神经元】,有一个概率神经元被临时丢掉,意味着它将被忽视在整个这次训练步骤中,但是有可能下次再被激活
  • 超参数dropout rate,一般设置50%,在训练之后,神经元不会再被dropout
11-24 08:59