卷积神经网络论文版Word文档下载推荐.docx
《卷积神经网络论文版Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《卷积神经网络论文版Word文档下载推荐.docx(17页珍藏版)》请在冰豆网上搜索。
神经认知机能够利用位移恒定能力从激励模式中学习,并且可识别这些模式的变化形,在其后的应用研究中,Fukushima将神经认知机主要用于手写数字的识别。
随后,国内外的研究人员提出多种卷积神经网络形式,在邮政编码识别和人脸识别方面得到了大规模的应用。
通常神经认知机包含两类神经元,即承担特征抽取的S-元和抗变形的C-元。
S-元中涉及两个重要参数,即感受野与阈值参数,前者确定输入连接的数目,后者则控制对特征子模式的反应程度。
许多学者一直致力于提高神经认知机的性能的研究:
在传统的神经认知机中,每个S-元的感光区中由C-元带来的视觉模糊量呈正态分布。
如果感光区的边缘所产生的模糊效果要比中央来得大,S-元将会接受这种非正态模糊所导致的更大的变形容忍性。
我们希望得到的是,训练模式与变形刺激模式在感受野的边缘与其中心所产生的效果之间的差异变
得越来越大。
为了有效地形成这种非正态模糊,Fukushima提出了带双C-元层的改进型神经认知机。
Trotin等人提出了动态构造神经认知机并自动降低闭值的方法[1],初始态的神经认知机各层的神经元数目设为零,然后会对于给定的应用找到合适的网络规模。
在构造网络过程中,利用一个反馈信号来预测降低阈值的效果,再基于这种预测来调节阈值。
他们指出这种自动阈值调节后的识别率与手工设置阈值的识别率相若,然而,上述反馈信号的具体机制并未给出,并且在他们后来的研究中承认这种自动阈值调节是很困难的【8】。
Hildebrandt将神经认知机看作是一种线性相关分类器,也通过修改阈值以使神经认知机成为最优的分类器。
Lovell应用Hildebrandt的训练方法却没有成功。
对此,Hildebrandt解释的是,该方法只能应用于输出层,而不能应用于网络的每一层。
事实上,Hildebrandt没有考虑信息在网络传播中会逐层丢失。
VanOoyen和Niehuis为提高神经认知机的区别能力引入了一个新的参数。
事实上,该参数作为一种抑制信号,抑制了神经元对重复激励特征的激励。
多数神经网络在权值中记忆训练信息。
根据Hebb学习规则,某种特征训练的次数越多,在以后的识别过程中就越容易被检测。
也有学者将进化计算理论与神经认知机结合【9】,通过减弱对重复性激励特征的训练学习,而使得网络注意那些不同的特征以助于提高区分能力。
上述都是神经认知机的发展过程,而卷积神经网络可看作是神经认知机的推广形式,神经认知机是卷积神经网络的一种特例。
卷积神经网络本身可采用不同的神经元和学习规则的组合形式。
其中一种方法是采用M-P神经元和BP学习规则的组合,常用于邮政编码识别中。
还有一种是先归一化卷积神经网络,然后神经元计算出用输入信号将权值和归一化处理后的值,再单独训练每个隐层得到权值,最后获胜的神经元输出活性,这个方法在处理二值数字图像时比较可行,但没有在大数据库中得到验证。
第三种方法综合前两种方法的优势,即采用McCulloch-Pitts神经元代替复杂的基于神经认知机的神经元。
在该方法中,网络的隐层和神经认知机一样,是一层一
层训练的,但是回避了耗时的误差反向传播算法。
这种神经网络被称为改进的神经认知机。
随后神经认知机和改进的神经认知机作为卷积神经网络的例子,广泛用于各种识别任务中,比如大数据库的人脸识别和数字识别。
下面详细介绍卷积神经网络的原理、网络结构及训练算法。
2卷积神经网络
2.1网络结构
卷积神经网络是一个多层的神经网络,每层由多个二维平面组成,而每个平面由多个独立神经元组成。
网络中包含一些简单元和复杂元,分别记为S-元和C-元。
S-元聚合在一起组成S-面,S-面聚合在一起组成S-层,用Us表示。
C-元、C-面和C-层(Us)之间存在类似的关系。
网络的任一中间级由S-层与C-层串接而成,而输入级只含一层,它直接接受二维视觉模式,样本特征提取步骤已嵌入到卷积神经网络模型的互联结构中。
一般地,Us为特征提取层,每个神经元的输入与前一层的局部感受野相连,并提取该局部的特征,一旦该局部特征被提取后,它与其他特征间的位置关系也随之确定下来;
Uc是特征映射层,网络的每个计算层由多个特征映射组成,每个特征映射为一个平面,平面上所有神经元的权值相等。
特征映射结构采用影响函数核小的sigmoid函数作为卷积网络的激活函数,使得特征映射具有位移不变性。
此外,由于一个映射面上的神经元共享权值,因而减少了网络自由参数的个数,降低了网络参数选择的复杂度。
卷积神经网络中的每一个特征提取层(S-层)都紧跟着一个用来求局部平均与二次提取的计算层(C-层),这种特有的两次特征提取结构使网络在识别时对输入样本有较高的畸变容忍能力【10】。
网络中神经元的输出连接值符合“最大值检出假说”【15】,即在某一小区域内存在的一个神经元集合中,只有输出最大的神经元才强化输出连接值。
所以若神经元近旁存在有输出比其更强的神经元时,其输出连接值将不被强化。
根据上述假说,就限定了只有一个神经元会发生强化。
卷积神经网络的种元就是某S-面上最大输出的S-元,它不仅可以使其自身强化,而且还控制了邻近元的强化结果。
因而,所有的S-元渐渐提取了几乎所有位置上相同的特征。
在卷积神经网络早期研究中占主导的无监督学习中,训练一种模式时需花费相当长的时间去自动搜索一层上所有元中具有最大输出的种元,而现在的有监督学习方式中,训练模式同它们的种元皆由教师设定。
图1是文献[12]中卷积神经网络的典型结构图。
将原始图像直接输入到输入层(Uc1),原始图像的大小决定了输入向量的尺寸,神经元提取图像的局部特征,因此每个神经元都与前一层的局部感受野相连。
文中使用了4层网络结构,隐层由S-层和C-层组成。
每层均包含多个平面,输入层直接映射到Us2层包含的多个平面上。
每层中各平面的神经元提取图像中特定区域的局部特征,如边缘特征,方向特征等,在训练时不断修正S-层神经元的权值。
同一平面上的神经元权值相同,这样可以有相同程度的位移、旋转不变性。
S-层中每个神经元局部输入窗口的大小均为5x5,由于同一个平面上的神经元共享一个权值向量,所以从一个平面到下一个平面的映射可以看作是作卷积运算,S-层可看作是模糊滤波器,起到二次特征提取的作用。
隐层与隐层之间空间分辨率递减,而每层所含的平面数递增,这样可用于检测更多的特征信息。
图1卷积神经网络结构图
Fig.1Thestructureofconvolutionalneuralnetwork
2.2神经元模型
在卷积神经网络中,只有S-元间的输入连接是可变的,而其他元的输入连接是固定的。
用Usl(kl,n)表示第l级,第kl个S-面上,一个S-元的输出,用Ucl(kl,n)表示在该级第kl个C-面上一个C-元的输出。
其中,n是一个二维坐标,代表输入层中神经元的感受野所在位置,在第一级,感受野的面积较小,随后随着l的增大而增加。
(2.1)
式(2.1)中al(v,kl-1,k)和bl(k)分别表示兴奋性输入和抑制性输入的连接系数;
rl(k)控制特征提取的选择性,其值越大,对噪音和特征畸变的容错性越差,它是一常量,它控制着位于每一S-层处的单个抑制子平面中每个神经元的输入:
rl(k)的值越大,与抑制性成比例的兴奋性就得越大,以便能产生一个非零输出,换句话说就是相当好的匹配才一能激活神经元,然而因为rl(k)还需乘以φ(),所以rl值越大就能产生越大的输出,相反,小的rl(k)值允许不太匹配的神经元兴奋,但它只能产生一个比较小的输出;
φ(x)为非线性函数。
v是一个矢量,表示处于n感受野中的前层神经元n的相对位置,Al确定S神经元要提取特征的大小,代表n的感受野。
所以式中对v的求和也就包含了指定区域当中所有的神经元;
外面对于勺kl-1的求和,也就包含了前一级的所有子平面,因此在分子中的求和项有时也被称作兴奋项,实际上为乘积的和,输入到n的神经元的输出都乘上它们相应的权值然后再输出到nc。
(2.2)
式(2.2)表示的是指定某级(第l级)、某层(S-层)、某面(第kl个S-面)、某元(向量为n处)的一个输出。
对于一个S-元的作用函数可分为两部分,即兴奋性作用函数和抑制性作用函数。
兴奋性作用使得膜电位上升,而抑制性作用起分流作用。
兴奋性作用为:
(2.3)
S-元与其前一级C-层的所有C-面均有连接,所连接的C-元个数由该S-级的参数感受野Al唯一确定。
网络中另一个重要的神经元是假设存在的抑制性神经元V-元Uvl(n),它位于S-面上满足以下三个条件:
环元的抑制作用影响整个网络的运作;
C-元与V-元间存在着固定的连接;
V-元的输出事先设为多个C-元输出的平均值。
可以用它来表示网络的抑制性作用,发送一个抑制信号给Usl(kl,n)神经元,从与Usl(kl,n)类似的元接收它的输入连接值,并输出:
(2.4)
权cl(v)是位于V—元感受野中的v处的神经元相连的权值,不需要训练这些
值,但它们应随着│v│的增加而单调减小。
因此,选择式2.5的归一化权值。
(2.5)
式2.5中的归一化常量C由式2.6给出,其中:
r(v)是从v处到感受野中心的
归一化距离:
(2.6)
C神经元的输出由式2.7给出:
(2.7)
上式中ψ(x)为:
(2.8)
式中β为一常量。
kl是第l级中的S子平面的数量。
Dl是C—元的感受野。
因此,它和特征的大小相对应。
dl(v)是固定兴奋连接权的权值,它是│v│的单调递减函数。
如果第kl个S神经元子平面从第kl-1子平面处收到信号,那么jl(kl,kl-1)的值为,1否则为0。
最后,S_层的Vs神经元的输出为
(2.9)
图2为卷积神经网络中不同神经元之间的连接关系图,从图中可以很清楚地看出各种不同神经元之间的连接关系。
图2卷积神经网络中不同神经元间的连接
Fig.2Theconnectionsconvolutionalneuralnetworkamongdifferentneurons
2.3卷积网络的训练过程
神经网络用于模式识别的主流是有指导学习网络,无指导学习网络更多的是用于聚类分析。
对于有指导的模式识别,由于任一样本的类别是已知的,样本在空间的分布不再是依据其自然分布倾向来划分,而是要根据同类样本在空间的分布及不同类样本之间的分离程度找一种适当的空间划分方法,或者找到一个分类边界,使得不同类样本分别位于不同的区域内。
这就需要一个长时间且复杂的学习过程,不断调整用以划分样本空间的分类边界的位置,使尽可能少的样本被划分到非同类区域中。
由于本文主要是检测图像中的人脸,所以可将样本空间分成两类:
样本空间和非样本空间,因而本文所使用的学习网络也是有指导的学习网络。
卷积网络在本质上是一种输入到输出的映射,它能够学习大量的输入与输出之间的映射关系,而不需要任何输入和输出之间的精确的数学表达式,只要用已知的模式对卷积网络加以训练,网络就具有输入输出对之间的映射能力。
卷积网络执行的是有导师训练,所以其样本集是由形如:
(输入向量,理想输出向量)的向量对构成的。
所有这些向量对,都应该是来源于网络即将模拟的系统的实际“运行”结果。
它们可以是从实际运行系统中采集来的。
在开始训练前,所有的权都应该用一些不同的小随机数进行初始化。
“小随机数”用来保证网络不会因权值过大而进入饱和状态,从而导致训练失败;
“不同”用来保证网络可以正常地学习。
实际上,如果用相同的数去初始化权矩阵,则网络无能力学习。
训练算法主要包括4步,这4步被分为两个阶段:
第一阶段,向前传播阶段:
①从样本集中取一个样本(X,Yp),将X输入网络;
②计算相应的实际输出Op。
在此阶段,信息从输入层经过逐级的变换,传送到输出层。
这个过程也是网络
在完成训练后正常运行时执行的过程。
在此过程中,网络执行的是由式(2.7)计算:
Op=Fn(…(F2(F1(XpW
(1))W
(2))…)W(n))
第二阶段,向后传播阶段
①计算实际输出Op与相应的理想输出Yp的差;
②按极小化误差的方法调整权矩阵。
这两个阶段的工作一般应受到精度要求的控制,在这里,用式(2.8)计算Ep。
作为网络关于第p个样本的误差测度。
而将网络关于整个样本集的误差测度定义为:
E=∑Ep。
如前所述,之所以将此阶段称为向后传播阶段,是对应于输入信号的正常传播而言的。
因为在开始调整神经元的连接权时,只能求出输出层的误差,而其他层的误差要通过此误差反向逐层后推才能得到。
有时候也称之为误差传播阶段。
为了更清楚地说明本文所使用的卷积神经网络的训练过程,首先假设输入层、中间层和输出层的单元数分别是N、L和M。
X=(x0,x1,…,xN)是加到网络的输入矢量,H=(h0,h1,…,hL)是中间层输出矢量,Y=(y0,y1,…,yM)是网络的实际输出矢量,并且用D=(d0,d1,…,dM)来表示训练组中各模式的目标输出矢量输出单元i到隐单元j的权值是Vij,而隐单元j到输出单元k的权值是Wjk。
另外用θk和φj来分别表示输出单元和隐含单元的阈值。
于是,中间层各单元的输出为式(2.9):
而输出层各单元的输出是式(2.10):
(2.10)
其中f(*)是激励函数采用S型函数式(2.11):
(2.11)
在上述条件下,网络的训练过程如下:
1)选定训练组。
从样本集中分别随机地选取300个样本作为训练组。
2)将各权值Vij,Wjk和阈值φj,θk置成小的接近于0的随机值,并初始化
精度控制参数ε和学习率α。
3)从训练组中取一个输入模式X加到网络,并给定它的目标输出矢量D。
4)利用式(2.9)计算出一个中间层输出矢量H,再用式(2.10)计算出网络的实际输出矢Y。
5)将输出矢量中的元素yk与目标矢量中的元素dk进行比较,计算出M个输出误差项式(2.12):
(2.12)
对中间层的隐单元也计算出L个误差项式(2.13):
(2.13)
6)依次计算出各权值的调整量式(2.14)和式(2.15):
(2.14)
(2.15)
和阈值的调整量式(2.16)和(2.17):
(2.16)
(2.17)
7)调整权值式(2.18)和式(2.19):
(2.18)
(2.19)
调整阈值式(2.20)和(2.21):
(2.20)
(2.21)
8)当k每经历1至M后,判断指标是否满足精度要求:
E≤ε,其中E是
总误差函数,且
。
如果不满足,就返回(3),继续迭代。
如果满
足就进入下一步。
9)训练结束,将权值和阈值保存在文件中。
这时可以认为各个权值已经达稳
定,分类器形成。
再一次进行训练时,直接从文件导出权值和阈值进行训练,不需
要进行初始化。
2.4卷积神经网络的优点
卷积神经网络CNN主要用来识别位移、缩放及其他形式扭曲不变性的二维图形。
由于CNN的特征检测层通过训练数据进行学习,所以在使用CNN时,避免了显示的特征抽取,而隐式地从训练数据中进行学习;
再者由于同一特征映射面上的神经元权值相同,所以网络可以并行学习,这也是卷积网络相对于神经元彼此相连网络的一大优势。
卷积神经网络以其局部权值共享的特殊结构在语音识别和图像处理方面有着独特的优越性,其布局更接近于实际的生物神经网络,权值共享降低了网络的复杂性,特别是多维输入向量的图像可以直接输入网络这一特点避免了特征提取和分类过程中数据重建的复杂度。
流的分类方式几乎都是基于统计特征的,这就意味着在进行分辨前必须提取某些特征。
然而,显式的特征提取并不容易,在一些应用问题中也并非总是可靠的。
卷积神经网络,它避免了显式的特征取样,隐式地从训练数据中进行学习。
这使得卷积神经网络明显有别于其他基于神经网络的分类器,通过结构重组和减少权值将特征提取功能融合进多层感知器。
它可以直接处理灰度图片,能够直接用于处理基于图像的分类。
卷积网络较一般神经网络在图像处理方面有如下优点:
a)输入图像和网络的拓扑结构能很好的吻合;
b)特征提取和模式分类同时进行,并同时在训练中产生;
c)权重共享可以减少网络的训练参数,使神经网络结构变得更简单,适应性更强。
3卷积神经网络的应用
3.1基于卷积网络的形状识别
物体的形状是人的视觉系统分析和识别物体的基础,几何形状是物体的本质特征的表现,并具有平移、缩放和旋转不变等特点,所以在模式识别领域,对于形状的分析和识别具有十分重要的意义,而二维图像作为三维图像的特例以及组成部分,因此二维图像的识别是三维图像识别的基础。
物体形状的识别方法可以归纳为如下两类,其中,第一类是基于物体边界形状的识别,这种边界的特征主要有周长、角、弯曲度、宽度、高度、直径等,第二类是基于物体所覆盖区域的形状识别,这种区域的特征主要有面积、圆度、矩特征等,上述两类方法都适用于物体形状的结构或区域的识别。
卷积神经网络也是一种基于物体边界形状的识别,它既可以识别封闭形状同时对不封闭形状也有较高的识别率。
图3试验用卷积神经网络的结构图
Fig.3Thestructureofconvolutionalneuralnetwork
图3是所用的网络结构,U0是输入层,Uc4是识别层。
Us为特征提取层,Us1的输入是光感受器的像素位图,该层只是提取一些相对简单的像素特征,随后几层的S-元提取一些更为复杂的像素特征,随着层数的增加,提取的特征也相应递增;
Uc是特征映射层,提取高阶特征,提取这些高阶特征时不需要提取像简单特征那样的精确位置信息。
网络中S-元的闭值是预先设定值,训练时权值的更新基于Fukushima提出
的增强型学习规则,如式(2.10)所示,网络的训练方式采用的是无监督学习方式。
图4与图5是部分实验样本图
图4部分训练样本图
Fig.4Partofthetrainingsampleplans
图5部分测试样本图
Fig.5Partofthetestsampleplans
样本分为三角形,四边形,八边形,圆形四类,每类10个共80个样本,实验训练时采用40个样本,测试时采用剩余的40个样本,最终的识别结果如表2所示。
表1训练后网络参数
Table1Networkparametersaftertraining
级数
S-层包含的S-面数
S-元数
第一级
16
32
第二级
19
290
第三级
15
272
第四级
7
89
表2识别结果
Table3.2Recognitionresults
待识别形状
识别结果
三角形
10个全对
四边形
八边形
圆形
对9个,另一个错识成四边形
识别错误样本如图6所示:
图6测试出错样本
Fig.6Thesampleerrorintest
识别错误的原因是由于训练所用样本模式较少,不能覆盖所有的圆形模式,以至于该测试模式输入网络时,与之相近的四边形模式获胜,最终得到错误的输出结果。
这里采用卷积神经网络进行形状识别目的主要是为了验证卷积神经网络的模式识别能力,所以虽然采用的样本图片较少,但已经能够说明卷积网。
络在形状识别时有较高的识别率和抗畸变性,而识别前的车牌字符由于前期处理(定位、分割)能力的局限性,具有一定的噪声和变形,因此可以将卷积神经网络应用于车牌识别系统。
3.2基于卷积网络的人脸检测
卷积神经网络与传统的人脸检测方法不同,它是通过直接作用于输入样本,用样本来训练网络并最终实现检测任务的。
它是非参数型的人脸检测方法,可以省去传统方法中建模、参
数估计以及参数检验、重建模型等的一系列复杂过程。
本文针对图像中任意大小、位置、姿势、方向、肤色、面部表情和光照条件的人脸,提出了一种基于卷积神经网络(ConvolutionalNeuralNetworks,简称CNN)的人脸检测方法。
设计了一个输入层节点数为400、输出层节点数为2、四层隐藏层的CNN网络。
网络结构如图7。
图7卷积网络结构
Fig.1Thestructureofconvolutionalneuraln