什么是卷积神经网络?

引入

  全连接神经网络处理图像最大的问题在于全连接层的参数太多。参数增多除了导致计算速度减慢,还很容易导致过拟合问题。所以需要一个更合理的神经网络结构来有效地减少神经网络中参数的数目——卷积神经网络

1. 卷积神经网络概述

  一类包含卷积计算且具有深度结构的前馈神经网络,是深度学习的代表算法之一,采用监督方式训练面向两维形状不变性(平移不变)识别的特定多层感知机。
  默认输入是图像,可以让我们把特定的性质编码输入网络结构,使我们的前馈函数更加有效率,并减少了大量参数;且其卷积核参数共享和层间连接的稀疏性使得卷积神经网络能够以较小的计算量对格点化特征,例如像素和音频进行学习、有稳定的效果且对数据没有额外的特征工程要求。
  三个关键操作:一是局部连接,二是参数共享,三是pooling层,有效的减少了网络的参数个数,缓解了模型的过拟合问题。
  维度应用:一维卷积神经网络主要用于序列类的数据处理,二维卷积神经网络常应用于图像类文本识别,三维卷积神经网络主要应用于医学图像以及视频类数据识别。

2. 卷积神经网络结构概述

  卷积神经网络整体架构:卷积神经网络是一种多层的监督学习神经网络,通常分为输入层、卷积层、池化层、全连接层,其中卷积层和池化层是实现卷积神经网络特征提取功能的核心模块。

在这里插入图片描述

2.1 输入层

  一般代表一张图片的像素矩阵。图中最左侧是输入的三维矩阵图片,三维矩阵的长、宽代表了图像的大小,而三维矩阵的深度代表了图像的色彩通道。黑白图片的深度为 1,RGB 色彩模式下,图片的深度为 3

2.2 卷积层

  与全连接层不同,卷积层中每一个节点的输入只是上一层神经网络中的一小块,这个小块常用的大小有 3×3 或 5×5。一般来说,通过卷积层处理过的节点矩阵会变的更深。

2.3 池化层

  池化层不改变三维矩阵的深度,但是可以缩小矩阵的大小。池化操作可以认为是将一张分辨率高的图片转化为分辨率较低的图片。通过池化层,可以进一步缩小最后全连接层中节点的个数,从而到达减少整个神经网络参数的目的。池化层本身没有可以训练的参数

2.4 全连接层

  经过多轮卷积层和池化层的处理后,在CNN的最后一般由1到2个全连接层来给出最后的分类结果。几轮卷积和池化操作,可以认为图像中的信息已经被抽象成了信息含量更高的特征。即可以把卷积和池化看成自动图像提取的过程,在特征提取完成后,使用全连接层来完成分类任务。

2.5 全连接层和卷积层互转换

  ※对于任意一个卷积层,转成全连接只需展平;
  ※任何一个全连接转换成卷积,如:一个K=4096的FC,输入层大小为7×7×512,它可以等价为一个F(卷积核)=7,P(像素)=0,S(步长)=1,K = 4096的卷积层,卷积之后的特征图大小为1× 4096。

3. 卷积神经网络的特点

  局部连接:卷积层输出矩阵上的某个位置只与部分输入矩阵有关,而不是全部的输入矩阵。卷积层输出的某个特征可能只和输入图片的某一部分相关,和其它位置的信息没有任何关联,局部连接可以让特征只关注其应该关注的部分。同时也减少了神经网络的参数。
  参数共享:同一卷积层中 filter 的参数是共享的,一个 filter 无论在哪个位置进行卷积操作,filter 矩阵中的值都是一样的。(同一层不同的 filter 参数不一样,不同层之间 filter 的参数也不一样。)共享 filter 的参数可以使得图像中的内容不受位置的影响。

4. 卷积神经网络总结

  卷积神经网络主要用来识别位移、缩放及其他形式扭曲不变性的二维图形。

  本质是一种输入到输出的映射,能够学习大量的输入与输出之间的映射关系,不需要任何输入和输出之间的精确的数学表达式,只需用已知的模式对卷积网络加以训练,网络就具有输入输出对之间的映射能力。

  卷积核的通道数与输入特征矩阵的通道数相同,即输入是3维,那么卷积核也是3维的;卷积后输出特征矩阵通道数与卷积核个数相同,即用2个卷积核,那么输出矩阵的深度就是2

  同一特征映射面上的神经元权值相同,网络可以并行学习。布局更接近于实际的生物神经网络,参数共享降低了网络的复杂性,特别是多维输入向量的图像可以直接输入网络这一特点避免了特征提取和分类过程中数据重建的复杂度。

  以上是对卷积神经网络的理论初步介绍,卷积核心的卷积层和池化层详见本栏目卷积神经网络的详解。

猜你喜欢

转载自blog.csdn.net/m0_58807719/article/details/128210501