卷积神经网络基础

Posted 静静子41

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了卷积神经网络基础相关的知识,希望对你有一定的参考价值。

1.卷积神经网络

  卷积神经网络(Convolutional Neural Networks, CNN)是一类包含卷积计算且具有深度结构的前馈神经网络,是深度学习的代表算法之一 。卷积神经网络具有表征学习能力,能够按其阶层结构对输入信息进行平移不变分类,因此也被称为“平移不变人工神经网络” 。

2.全连接层

  卷积神经网络中的全连接层等价于传统前馈神经网络中的隐含层。全连接层位于卷积神经网络隐含层的最后部分,并只向其它全连接层传递信号。特征图在全连接层中会失去空间拓扑结构,被展开为向量并通过激励函数。


  按表征学习观点,卷积神经网络中的卷积层和池化层能够对输入数据进行特征提取,全连接层的作用则是对提取的特征进行非线性组合以得到输出,即全连接层本身不被期望具有特征提取能力,而是试图利用现有的高阶特征完成学习目标。

  在一些卷积神经网络中,全连接层的功能可由全局均值池化取代 ,全局均值池化会将特征图每个通道的所有值取平均,即若有7×7×256的特征图,全局均值池化将返回一个256的向量,其中每个元素都是7×7,步长为7,无填充的均值池化。

3.卷积层

  卷积层的功能是对输入数据进行特征提取,其内部包含多个卷积核,组成卷积核的每个元素都对应一个权重系数和一个偏差量,类似于一个前馈神经网络的神经元。


  多维卷积操作

注意:
  1.卷积核的深度与输入特征层的深度相同。(如上例,输入的是三维的特征层,卷积核的也要使用三维的)

  2.输出的特征矩阵的深度与卷积核个数相同。(如上例,输出的是二维的特征层,而卷积核有两个)

思考:
加上偏移量bias该如何计算?
加上激活函数该如何计算?
如果卷积过程中出现越界的情况该怎么办?

  1. 加上偏移量
  2. 激活函数
      卷积层中包含激励函数以协助表达复杂特征。
  3. 如果卷积过程中出现越界的情况该怎么办?
      在周围进行补0操作:

4.池化层

  在卷积层进行特征提取后,输出的特征图会被传递至池化层进行特征选择和信息过滤。池化层包含预设定的池化函数,其功能是将特征图中单个点的结果替换为其相邻区域的特征图统计量。池化层选取池化区域与卷积核扫描特征图步骤相同,由池化大小、步长和填充控制。

MaxPooling下采样层

AveragePooling下采样层

池化的特点:
  没有训练参数。
  只改变特征矩阵的宽带和高度,不改变深度。
  一般池化和大小和布局相同。(如上平均池化层的例子:池化和大小为2,池化后的大小为2)

以上是关于卷积神经网络基础的主要内容,如果未能解决你的问题,请参考以下文章

卷积神经网络算啥方向

卷积神经网络

卷积层在神经网络中如何运算?

卷积层在神经网络中如何运算?

CNN(卷积神经网络)算法

卷积神经网络