目录
Task04
4 CNN
卷积神经网络也是一种前馈神经网络,是受到生物学上感受野(感受野主要是指听觉系统、本体感觉系统和视觉系统中神经元的一些性质)的机制而提出的(在视觉神经系统中,一个神经元的感受野是指视网膜上的特定区域,只有这个区域内的刺激才能够激活该神经元)。
4.1卷积
卷积:(f*g)(n)成为 f 和 g 的卷积,连续卷积和离散卷积可以表达为如下形式:
4.2CNN基本原理
4.2.1卷积层
卷积层的作用是提取一个局部区域的特征,不同的卷积核相当于不同的特征提取器。卷积层的神经元和全连接网络一样都是一维结构。由于卷积网络主要应用在图像处理上,而图像为二维结构,因此为了更充分地利用图像的局部信息,通常将神经元组织为三维结构的神经层,其大小为高度𝑀×宽 度𝑁×深度𝐷,由𝐷个𝑀 × 𝑁 大小的特征映射构成。
4.2.2激活函数
激活函数是用来加入非线性因素,提高网络表达能力,卷积神经网络中最常用的是ReLU,Sigmoid使用较少。
4.2.3池化层
(1)池化的定义
池化操作使用某位置相邻输出的总体统计特征作为该位置 的输出,常用最大池化**(max-pooling)和均值池化(average- pooling)**。
池化层不包含需要训练学习的参数,仅需指定池化操作的核大小、操作步幅以及池化类型。(2)池化的作用
①减少网络中的参数计算量,从而遏制过拟合。
②增强网络对输入图像中的小变形、扭曲、平移的鲁棒性(输入里的微 小扭曲不会改变池化输出——因为我们在局部邻域已经取了最大值/ 平均值)
③帮助我们获得不因尺寸而改变的等效图片表征。这非常有用,因为 这样我们就可以探测到图片里的物体,不管它在哪个位置
4.2.4全连接层
(1)对卷积层和池化层输出的特征图(二维)进行降维
(2)将学到的特征表示映射到样本标记空间的作用
4.2.5输出层
(1)对于分类问题:使用Softmax函数
(2)对于回归问题:使用线性函数
4.2.6卷积神经网络的训练
Step 1:用随机数初始化所有的卷积核和参数/权重
Step 2:将训练图片作为输入,执行前向步骤(卷积, ReLU,池化以及全连接层的前向传播)并计算每个类别的对应输出概率。
Step 3:计算输出层的总误差
Step 4:反向传播算法计算误差相对于所有权重的梯度,并用梯度下降法更新所有的卷积核和参数/权重的值,以使输出误差最小化
注:卷积核个数、卷积核尺寸、网络架构这些参数,是在 Step 1 之前就已经固定的,且不会在训练过程中改变——只有卷 积核矩阵和神经元权重会更新。
4.3经典CNN
4.3.1LeNet-5
LeNet-5由LeCun等人提出于1998年提出,主要进行手写数字识别和英文字母识别。经典的卷积神经网络,LeNet虽小,各模块齐全,是学习 CNN的基础。
LeNet-5网络结构
4.3.2AlexNet
AlexNet[Krizhevsky et al., 2012] 是第一个现代深度卷积网络模型,其首次 使用了很多现代深度卷积网络的技术方法,比如使用 GPU 进行并行训练,采用 了 ReLU 作为非线性激活函数,使用 Dropout 防止过拟合,使用数据增强来提高 模型准确率等.AlexNet赢得了2012年ImageNet图像分类竞赛的冠军.
AlexNet的结构如图所示,包括5个卷积层、3个汇聚层和3个全连接层 (其中最后一层是使用 Softmax 函数的输出层).因为网络规模超出了当时的单 个GPU的内存限制,AlexNet将网络拆为两半,分别放在两个GPU上,GPU间只 在某些层(比如第3层)进行通信.
AlexNet网络结构
4.3.3VGGNet
VGGNet由牛津大学计算机视觉组合和Google DeepMind公司研究员一起研发的深度卷积神经网络。它探索了卷积神经网络的深度和其性能之间的关系,通过反复的堆叠3*3的小型卷积核和2*2的最大池化层,成功的构建了16~19层深的卷积神经网络。VGGNet获得了ILSVRC 2014年比赛的亚军和定位项目的冠军,在top5上的错误率为7.5%。目前为止,VGGNet依然被用来提取图像的特征。
4.3.4InceptionNet
在卷积网络中,如何设置卷积层的卷积核大小是一个十分关键的问题。在 Inception 网络中,一个卷积层包含多个不同大小的卷积操作,称为Inception 模块。Inception网络是由有多个Inception模块和少量的汇聚层堆叠而成。
InceptionNet v1的网络结构
4.3.5ResNet
残差网络(Residual Network,ResNet)通过给非线性的卷积层增加直连边(Shortcut Connection)(也称为残差连接(Residual Connection))的方式来提高信息的传播效率。
一个简单的残差单元结构
4.3.6DenseNet
相比ResNet,DenseNet提出了一个更激进的密集连接机制:即互相连接所有的层,具体来说就是每个层都会接受其前面所有层作为其额外的输入。图1为ResNet网络的连接机制,作为对比,图2为DenseNet的密集连接机制。可以看到,ResNet是每个层与前面的某层(一般是2~3层)短路连接在一起,连接方式是通过元素级相加。而在DenseNet中,每个层都会与前面所有层在channel维度上连接(concat)在一起(这里各个层的特征图大小是相同的,后面会有说明),并作为下一层的输入。
DenseNet网络结构
4.4CNN主要应用
4.4.1图像处理领域主要应用
(1)图像分类(物体识别):整幅图像的分类或识别
(2)物体检测:检测图像中物体的位置进而识别物体
(3)图像分割:对图像中的特定物体按边缘进行分割
(4)图像回归:预测图像中物体组成部分的坐标
4.4.2自然语言处理领域主要应用
(1)情感分析:分析文本体现的情感(正负向、正负中或多态度类型)
参考资料
(1)Document
(2)神经网络与深度学习