基于深度卷积神经网络的图像分类(共24页).docx
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《基于深度卷积神经网络的图像分类(共24页).docx》由会员分享,可在线阅读,更多相关《基于深度卷积神经网络的图像分类(共24页).docx(24页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上SHANGHAI JIAO TONG UNIVERSITY论文题目:基于卷积神经网络的自然图像分类技术研究姓名: 高小宁专业:控制科学与工程专心-专注-专业基于卷积神经网络的自然图像分类技术研究摘要:卷积神经网络已在图像分类领域取得了很好的效果,但其网络结构及参数的选择对图像分类的效果和效率有较大的影响。为改善卷积网络的图像分类性能,本文对卷积神经网络模型进行了详细的理论分析,并通过大量的对比实验,得出了影响卷积网络性能的因素。结合理论分析及对比实验,本文设计了一个卷积层数为8层的深度卷积网络,并结合Batch Normalization、dropout等方法,在CI
2、FAR-10数据集上取得了88.1%的分类精度,有效地提高了卷积神经网络的分类效果。关键词:卷积神经网络,图像分类,Batch Normalization,DropoutResearch on Natural Image Classification Based on Convolution Neural NetworkAbstract: Convolution neural network has achieved very good results in image classification, but its network structure and the choice of pa
3、rameters have a greater impact on image classification efficiency and efficiency. In order to improve the image classification performance of the convolution network, a convolutional neural network model is analyzed in detail, and a large number of contrastive experiments are conducted to get the fa
4、ctors that influence the performance of the convolution network. Combining the theory analysis and contrast experiment, a convolution layer depth convolution network with 8 layers is designed. Combined with Batch Normalization and dropout, 88.1% classification accuracy is achieved on CIFAR-10 datase
5、t. Which improves the classification effect of convolution neural network.Key Words: Convolution neural network(CNN), image classification, Batch Normalization, Dropout目录1 引言1986 年, Rumelhart 等提出人工神经网络的反向传播算法 (Back propagation, BP), 掀起了神经网络在机器学习中的研究热潮。但是由于BP神经网络存在容易发生过拟合、训练时间长的缺陷, 90年代兴起的基于统计学习理论的支持
6、向量机具有很强的小样本学习能力。学习效果也优于BP神经网络,导致了神经网络的研究再次跌入低估。2006 年, Hinton 等人在 Science 上提出了深度学习. 这篇文章的两个主要观点是: 1) 多隐层的人工神经网络具有优异的特征学习能力, 学习到的数据更能反映数据的本质特征,有利于可视化或分类;2) 深度神经网络在训练上的难度, 可以通过逐层无监督训练有效克服。理论研究表明为了学习到可表示高层抽象特征的复杂函数, 需要设计深度网络。深度网络由多层非线性算子构成, 典型设计是具有多层隐节点的神经网络。但是随着网络层数的加大, 如何搜索深度结构的参数空间成为具有挑战性的任务。近年来, 深度
7、学习取得成功的主要原因有:1) 在训练数据上, 大规模训练数据的出现 (如ImageNet), 为深度学习提供了好的训练资源; 2) 计算机硬件的飞速发展 (特别是 GPU 的出现) 使得训练大规模神经网络成为可能。卷积神经网络 (Convolutional neural networks, CNN) 是一种带有卷积结构的神经网络, 卷积结构采用权值共享的方式减少了深层网络占用的内存量, 也减少了网络的参数个数, 缓解模型的过拟合问题。为了保证一定程度的平移、 尺度、 畸变不变性, CNN 设计了局部感受野、共享权重和空间或时间下采样, 提出用于字符识别的卷积神经网络LeNet-5。LeNet
8、-5 由卷积层、下采样层、全连接层构成, 该系统在小规模手写数字识别中取得了较好的结果。2012 年, Krizhevsky等采用称为AlexNet 的卷积网络在 ImageNet 竞赛图像分类任务中取得了最好的成绩, 是 CNN 在大规模图像分类中的巨大成功。AlexNet 网络具有更深层的结构, 并设计了ReLU (Rectified linear unit) 作为非线性激活函数以及 Dropout 来避免过拟合。在 AlexNet 之后, 研究者由提出了网络层数更深的神经网络,例如Google设计的GoogLeNet和MSRA设计的152层的深度残差网络等。表 1 是 ImageNet
9、竞赛历年来图像分类任务的部分领先结果,可以看出,层数越深的网络往往取得的分类效果更好。为了更好地改进卷积神经网络, 本文在CIFAR10数据集上研究了不同的网络层设计、损失函数的设计、激活函数的选择、正则化等对卷积网络在图像分类效果方面的影响,本文引入了Batch Normalization与dropout结合的方法,通过加深卷层神经网络的层数,有效地提高了卷积神经网络在图像分类准确率。表1-1 ImageNet历年图像分类任务结果公布时间机构Top-5错误率(%)网络名称网络深度 2015.12.10MSRA3.57ResNet1522014.8.18Google6.66GoogLeNet2
10、22013.11.14NYU7.33Clarifai102012.10.13U.Toronto11.7Alexnet82 卷积神经网络的模型分析2.1网络基本拓扑结构卷积神经网络与其他神经网络模型最大的区别是卷积神经网络在神经网络的输入层前面连接了卷积层,这样卷积层就变成了卷积神经网络的数据输输入。 LeNet-5是Yan Lecun开发的用于手写字符识别的经典卷积神经网络模型,图2-1是其结构图。 图2-1 LeNet-5结构图LeNet-5的体系结构有7层,其中有3个卷积层。第一卷积层由6个特征图 (Feature Maps, FM)组成,故C1包含156可训练参数(6个5X5内核加上6偏
11、值)来创建 (156* (28*28) -122, 304)个连接。在C1层FM的尺寸为28 x 28,由于边界条件,第二卷积层,C3包含1500权重和16偏置,C3层共有1516个可训练参数以及个连接。S2和C3之间的连接如表2-1所示。Lecun设计这些连接最大化的特征由C3提取的数目,同时减少权重的数目。在最后的卷积层C5包含120个FM,输出尺寸为1X1。LeNet-5的体系结构还包含有两个子采样层:S2和S4,S2包含6个特征图和S4有16个特征图。层S2有12个可训练的参数与5880连接,而层S4有32个可训练参数与连接。表2-1 S2与S3之间的连接总结LeNet-5的网络结构,
12、我们得到卷积神经网络的基本结构可以分为四个部分:输入层,卷积层,全连接层和输出层四个部分:输入层:卷积输入层可以直接作用于原始输入数据,对于输入是图像来说,输入数据是图像的像素值。卷积层:卷积神经网络的卷积层,也叫做特征提取层,包括二个部分。第一部分是真正的卷积层,主要作用是提取输入数据特征。每一个不同的卷积核提取输入数据的特征都不相同,卷积层的卷积核数量越多,就能提取越多输入数据的特征。第二部分是pooling层,也叫下采样层(Subsamping),主要目的是在保留有用信息的基础上减少数据处理量,加快训练网络的速度。通常情况下,卷积神经网络至少包含二层卷积层(这里把真正的卷积层和下采样层统
13、称为卷积层),即卷积层-pooling层-卷积层-pooling层。卷积层数越多,在前一层卷积层基础上能够提取更加抽象的特征。全连接层:可以包含多个全连接层,实际上就是多层感知机的隐含层部分。通常情况下后面层的神经节点都和前一层的每一个神经节点连接,同一层的神经元节点之间是没有连接的。每一层的神经元节点分别通过连接线上的权值进行前向传播,加权组合得到下一层神经元节点的输入。输出层:输出层神经节点的数目是根据具体应用任务来设定的。如果是分类任务,卷积神经网络输出层通常是一个分类器,通常是Softmax分类器。2.2卷积和池化2.2.1卷积卷积,一般利用卷积核对图像进行特征提取,其中最重要的就是卷
14、积核。卷积核的设计一般涉及卷积核的大小(size),卷积核的数目(number)以及卷积核的步长(stride)。从理论上来说,卷积核的个数表示从上层中通过卷积滤波得到特征图的个数,提取的特征图越多,网络表示特征空间就越大,学习能力也就越强,最后识别结果就比较准。但卷积核太多(特征图太多),增大网络的复杂度,增加参数的个数,加大了计算的复杂度,易出现过拟合现象,所以有时候卷积核也不并是越多越好,而应根据具体的数据集图像的大小确定卷积核的个数。图像卷积特征提取,通过设定的一个卷积核尺寸为的滤波器,步长(stride)为个像素,对一幅新的图像进行卷积处理,得到一个大小为 的特征图,如图2-2所示。
15、一般来说卷积核尺寸越小,特征提取的质量也就越高,具体大小还应根据输入图像的尺寸决定。图2-2 图像卷积示意图2.2.2池化对输入的图像邻域进行卷积处理得到图像的邻域特征图(Feature Map),再通过亚采样层使用池化(pooling)技术将小邻域内进行下采样得到新的特征。通过对上层池化,特征结果可以使得参数减少(降低了特征维数),且增强特征使得最后的特征表达保持了某些不变性(旋转、平移、伸缩等),所以说池化的本质是一个降纬的过程。常用的有均值采样(mean- pooling )、最大采样( max - pooling)。据相关理论,特征提取的误差主要来自两个方面:(1)邻域大小受限造成的估
16、计值方差增大;(2)卷积层参数误差造成估计均值的偏移。一般来说,mean-pooling能减小第一种误差,更多的保留图像的背景信息,max-pooling能减小第二种误差,更多的保留纹理信息。2.3激活函数在神经网络中经常使用的激活函数有Sigmoid函数、Tanh函数、ReLu函数等,前两种激活函数在传统的BP神经网络使用的较多,ReLu函数在深度学习中使用的较多。ReLu ( rectified finear unit)函数是Hinton提出的修正线性单元(Relu) ,CNNs在利用ReLu函数进行训练几次之后明显比传统的sigmoid和tanh函数更快。假设一个神经单元的激活函数为,其
17、中i表示隐含层单元的个数,表示隐含单元的权值,那么ReLu函数的表达式为: (2-1)其函数图像如图2-3所示:图2-3 ReLu函数图像由于ReLu函数具有线性的、非饱和的形式,单侧抑制,相对宽阔的兴奋边界,稀疏激活性,所以在卷积神经网络中的使用效果好于sigmoid和tanh函数。2.4 Softmax分类器与代价函数在卷积神经网络应用于图像分类任务时,我们在神经网络最后一层全连接层后接一个Softmax分类器用于图像标签的预测。在softmax回归中,我们解决的是多分类问题(相对于 logistic 回归解决的二分类问题),类标可以取个不同的值(而不是2个)。因此,对于训练集,我们有。(
18、注意此处的类别下标从 1 开始,而不是0)。对于给定的测试输入 ,我们想用假设函数针对每一个类别j估算出概率值。也就是说,我们想估计的每一种分类结果出现的概率。因此,我们的假设函数将要输出一个维的向量(向量元素的和为1)来表示这个估计的概率值。具体地说,我们的假设函数形式如下:(2-2)为了方便起见,我们同样使用符号来表示全部的模型参数。在实现Softmax回归时,将用一个的矩阵来表示会很方便,该矩阵是将按行罗列起来得到的,如下所示: (2-3)由上式子可得样本属于的概率为:(2-4)当每个样本所属类别的条件概率都最大时,分类器识别率最高,此时等价于最大化如下的似然函数:(2-5)为了降低计算
19、量和防止溢出, 对似然函数取对数,并适当变形得:(2-6)其中1.称为示性函数,表达的功能为:1 true =1,1false= 0。此时最大化似然函数等价于最小化代价函数,故使用梯度下降法求解的最小值,从而确定参数。代价函数的梯度为: (2-7)在实际应用中,我们为了防止过拟合问题,我们通常在代价函数后加正则化项(L2正则化),这样代价函数变为:(2-8)上式中的第二项它会对偏大的参数值进行惩罚,又称权值衰减项。适当的可以降低权值的数量级,从而控制网络参数的取值,在一定程度上防止了过拟合。2.5学习算法在神经网络的学习中我们主要利用反向传播算法来进行梯度计算,并且用梯度执行参数更新,主要的方
20、法有随机梯度下降法(Stochastic Gradient Decent, SGD),自适应矩估计法(Adaptive Moment Estimation,Adam)。通常情况下我们的训练数据集会比较大,如何一次性装载所有训练样本进行训练,往往会出现内存溢出问题,所以我们实际中常常采用数据集的一个微型集(mini-batch,数量为N|D|,此时的代价函数为: (2-9)2.5.1 随机梯度下降随机梯度下降法每次输入一个微型集(mini-batch)对网络进行训练,由于每次的微型集都是随机选取的,所以每次迭代的代价函数会不同,当前bacth的梯度对网络参数的更新影响较大,为了减少这种影响,我们
21、通常情况下会引入动量系数对传统的随机梯度下降法进行改进。momentum即动量,它模拟的是物体运动时的惯性,即更新的时候在一定程度上保留之前更新的方向,同时利用当前batch的梯度微调最终的更新方向。这样一来,可以在一定程度上增加稳定性,从而学习地更快,并且还有一定摆脱局部最优的能力。加动量的随机梯度下降算法迭代公式如下: (2-10)(2-11)其中是上一次的权值更新量,为动量系数,表示要在多大程度上保留原来的更新方向,这个值在0-1之间,为学习率。特点如下: 下降初期时,使用上一次参数更新,下降方向一致,乘上较大的能够进行很好的加速 下降中后期时,在局部最小值来回震荡的时候,使得更新幅度增
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 深度 卷积 神经网络 图像 分类 24
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内