理论-基础知识1-卷积神经网络

1. 全连接网络与卷积网络

  • 全连接网络的问题
    • 丢失输入数据的空间信息
    • 模型参数过多,容易过拟合
  • 卷积网络的优势
    • 保留空间信息:在卷积运算中,计算范围是在像素点的空间邻域内进行的,它代表了对空间邻域内某种特征模式的提取。对比全连接层将输入展开成一维的计算方式,卷积运算可以有效学习到输入数据的空间信息。
    • 局部连接:保证了训练后的滤波器能够对局部特征有最强的响应,使神经网络可以提取数据的局部特征。同时,由于使用了局部连接,隐含层的每个神经元仅与部分图像相连,相较于全连接层,参数量减少。
    • 权重共享:同样大为减少了模型的参数量,从而降低了网络的训练难度。

2. 卷积基本概念

  • 卷积核(kernel):也被叫做滤波器(filter),假设卷积核的高和宽分别为\(k_{h}\)\(k_{w}\),则称其为\(k_{h}\times{k_{w}}\)卷积。比如某卷积核高为3, 宽为5,则叫做\(3\times{5}\)卷积。卷积核中数值即进行卷积计算时所采用的权重。
  • 特征图(feature map):卷积滤波结果。

  • 感受野(Receptive Field):特征图上的点所对应得输入图像上的区域。

  • 填充(padding):输入图像的边缘像素因处于边缘位置无法参与卷积运算。填充是指在边缘像素点周围填充“0”(即0填充),使得输入图像的边缘像素也可以参与卷积计算。

    • 如果在输入图片第1行之前和最后1行之后填充\(p_h\)行,在输入图片第1列之前和最后1列之后填充\(p_w\)列,则填充之后的图片尺寸为\((H+2p_h)\times{(W+2p_w)}\)。经过大小为\(k_{h}\times{k_{w}}\)的卷积核操作之后,输出图片的尺寸为:

      \[H_{out}=H+2p_h-k_h+1 \]

      \[W_{out}=W+2p_w-k_w+1 \]

    • 为了便于padding,卷积核大小通常使用奇数,这样如果使用的填充大小为\(p_h=\frac{k_h-1}{2},p_w=\frac{k_w-1}{2}\),则可以使得卷积之后图像尺寸不变。

  • 步长(stride):在卷积操作时,通常希望输出数据维度与输入数据维度相比会逐渐减少,这可以通过改变卷积核在输入图像中移动步长大小实现。\(stride=k\)表示卷积核移动跳过的步长是k。

    • 当输入数据尺寸为\(H\times{W}\),卷积核大小为\(k_{h}\times{k_{w}}\),填充分别为\(p_h,p_w\),步长分别为\(s_h,s_w\)时,输出特征图尺寸为:

      \[H_{out}=\frac{H+2p_h-k_h}{s_h}+1 \]

      \[W_{out}=\frac{W+2p_w-k_w}{s_w}+1 \]

3. 批量计算

  • 多输入:当输入数据有多个通道时,对应的卷积核也具有相同的通道数。假设输入数据的通道数为\(C_{in}\),输入数据的形状为\(C_{in}\times{H_{in}\times{W_{in}}}\)
    *

参考链接:

听六小桨讲AI第1期:卷积概念及计算

听六小桨讲AI第2期:卷积的批量计算及应用案例

听六小桨讲AI第3期:优化器及其三种形式BGD、SGD以及MBGD
论文阅读笔记:各种Optimizer梯度下降优化算法回顾和总结

听六小桨讲AI第4期:优化器合集

听六小桨讲AI第5期:卷积的变体之转置卷积

听六小桨讲AI第6期:卷积的变体之空洞卷积

听六小桨讲AI第7期:3D卷积和分组卷积

听六小桨讲AI第8期:可分离卷积

附录1-解卷积

https://github.com/vdumoulin/conv_arithmetic/blob/master/README.md

附录2-编辑推荐

https://www.cnblogs.com/boostwei/p/15195643.html

posted @ 2021-07-03 23:55  tensor_zhang  阅读(209)  评论(0编辑  收藏  举报