概述
定义:
卷积神经网络(Convolutional Neural Networks, CNN)是一类包含卷积计算且具有深度结构的前馈神经网络。是深度学习的代表算法之一 。卷积神经网络具有表征学习能力,能够按其阶层结构对输入信息进行平移不变分类,因此也被称为“平移不变人工神经网络”。
结构:
1、输入层:卷积神经网络的输入层可以处理多维数据,常见地,一维卷积神经网络的输入层接收一维或二维数组,其中一维数组通常为时间或频谱采样;二维数组可能包含多个通道;二维卷积神经网络的输入层接收二维或三维数组;三维卷积神经网络的输入层接收四维数组 。由于卷积神经网络在计算机视觉领域应用较广,因此许多研究在介绍其结构时预先假设了三维输入数据,即平面上的二维像素点和RGB通道。
2、隐含层:卷积神经网络的隐含层包含卷积层、池化层和全连接层3类常见构筑,在一些更为现代的算法中可能有Inception模块、残差块(residual block)等复杂构筑。在常见构筑中,卷积层和池化层为卷积神经网络特有。卷积层中的卷积核包含权重系数,而池化层不包含权重系数,因此在文献中,池化层可能不被认为是独立的层。以LeNet-5为例,3类常见构筑在隐含层中的顺序通常为:输入-卷积层-池化层-全连接层-输出。
卷积核:卷积层的功能是对输入数据进行特征提取,其内部包含多个卷积核,组成卷积核的每个元素都对应一个权重系数和一个偏差量(bias vector),类似于一个前馈神经网络的神经元(neuron)。
卷积层参数:卷积核中RGB图像的按0填充 。卷积层参数包括卷积核大小、步长和填充,三者共同决定了卷积层输出特征图的尺寸,是卷积神经网络的超参数 。其中卷积核大小可以指定为小于输入图像尺寸的任意值,卷积核越大,可提取的输入特征越复杂
卷积层计算:
垂直边缘检测(卷积核) 水平边缘检测
1 0 -1 1 1 1
1 0 -1 0 0 0
1 0 -1 -1 -1 -1
周围灰色属于填充
3、池化层(pooling layer)
在卷积层进行特征提取后,输出的特征图会被传递至池化层进行特征选择和信息过滤。池化层包含预设定的池化函数,其功能是将特征图中单个点的结果替换为其相邻区域的特征图统计量。
构筑与算法:
一维构筑:时间延迟网络
二维构筑:
LeNet-5
LeNet-5是一个应用于图像分类问题的卷积神经网络,其学习目标是从一系列由32×32×1灰度图像表示的手写数字中识别和区分0-9。LeNet-5的隐含层由2个卷积层、2个池化层构筑和2个全连接层组成,按如下方式构建:
-
(3×3)×1×6的卷积层(步长为1,无填充),2×2均值池化(步长为2,无填充),tanh激励函数
-
(5×5)×6×16的卷积层(步长为1,无填充),2×2均值池化(步长为2,无填充),tanh激励函数
-
2个全连接层,神经元数量为120和84
VGG-16的隐含层由13个卷积层、3个全连接层和5个池化层组成,按如下方式构建:
-
(3×3)×3×64的卷积层(步长为1,相同填充,ReLU),(3×3)×64×64的卷积层(步长为1,相同填充,ReLU),2×2极大池化(步长为2、无填充)
-
(3×3)×64×128的卷积层(步长为1,相同填充,ReLU),(3×3)×128×128的卷积层(步长为1,相同填充,ReLU),2×2极大池化(步长为2、无填充
-
(3×3)×128×256的卷积层(步长为1,相同填充,ReLU),(3×3)×256×256的卷积层(步长为1,相同填充,ReLU),(3×3)×256×256的卷积层(步长为1,相同填充,ReLU),2×2极大池化(步长为2、无填充)
-
(3×3)×256×512的卷积层(步长为1,相同填充,ReLU),(3×3)×512×512的卷积层(步长为1,相同填充,ReLU),(3×3)×512×512的卷积层(步长为1,相同填充,ReLU),2×2极大池化(步长为2、无填充)
-
(3×3)×512×512的卷积层(步长为1,相同填充,ReLU),(3×3)×512×512的卷积层(步长为1,相同填充,ReLU),(3×3)×512×512的卷积层(步长为1,相同填充,ReLU),2×2极大池化(步长为2、无填充)
-
3个全连接层,神经元数量为4096、4096和1000
VGGNet构筑中仅使用3×3的卷积核并保持卷积层中输出特征图尺寸不变,通道数加倍,池化层中输出的特征图尺寸减半,简化了神经网络的拓扑结构并取得了良好效果
残差神经网络(Residual Network, ResNet)
ResNet来自微软的人工智能团队Microsoft Research,是2015年ILSVRC图像分类和物体识别算法的优胜者,其表现超过了GoogLeNet的第三代版本Inception v3 [25] 。ResNet是使用残差块建立的大规模卷积神经网络,其规模是AlexNet的20倍、VGG-16的8倍,在ResNet的原始版本中,其残差块由2个卷积层、1个跳跃连接、BN和激励函数组成,ResNet的隐含层共包含16个残差块。
-
(7×7)×3×64的卷积层(步长为2,无填充,ReLU,BN),3×3的极大池化(步长为2,相同填充)
-
3个残差块:3×3×64×64卷积层(步长为1,无填充,ReLU,BN),3×3×64×64卷积层(步长为1,无填充)
-
1个残差块:3×3×64×128(步长为2,无填充,ReLU,BN),3×3×128×128(步长为1,无填充,ReLU,BN)
-
3个残差块:3×3×128×128(步长为1,无填充,ReLU,BN),3×3×128×128(步长为1,无填充,ReLU,BN)
-
1个残差块:3×3×128×256(步长为2,无填充,ReLU,BN),3×3×256×256(步长为1,无填充,ReLU,BN)
-
5个残差块:3×3×256×256(步长为1,无填充,ReLU,BN),3×3×256×256(步长为1,无填充,ReLU,BN)
-
1个残差块:3×3×256×512(步长为2,无填充,ReLU,BN),3×3×512×512(步长为1,无填充,ReLU,BN)
-
2个残差块:3×3×512×512(步长为1,无填充,ReLU,BN),3×3×512×512(步长为1,无填充,ReLU,BN)
-
全局均值池化,1个全连接层,神经元数量为1000
最后
以上就是踏实书包为你收集整理的卷积神经网络的全部内容,希望文章能够帮你解决卷积神经网络所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复