模式识别Word格式.docx
- 文档编号:18483124
- 上传时间:2022-12-17
- 格式:DOCX
- 页数:26
- 大小:715.85KB
模式识别Word格式.docx
《模式识别Word格式.docx》由会员分享,可在线阅读,更多相关《模式识别Word格式.docx(26页珍藏版)》请在冰豆网上搜索。
答辩
合计
2周
指导教师签名:
年月日
系主任(或责任教师)签名:
目录
摘要I
ABSTRACTII
1数字识别1
2神经网络在数字识别中的应用1
3模式识别3
3.1模式识别方法概述3
3.2神经网络模式识别3
4BP网络在数字识别中算法的实现5
4.1数字识别常规预处理步骤简介5
4.1.1数值化5
4.1.2二值化5
5基于神经网络的数字识别预处理6
6BP算法7
6.1BP算法原理7
6.2BP网络的数学推导过程8
6.2.1BP网络的前馈计算8
6.2.2BP网络权系数的调整规则9
7BP网络的设计12
7.1网络的层数12
7.2隐函数的神经元数13
7.3初始值的选取13
7.4学习速率13
7.5期望误差的选取14
7.6BP神经网络的限制与不足14
8仿真结果及分析15
心得与体会21
参考文献22
附录:
23
摘要
数字识别是多年来研究的热点,是模式识别中一个很重要的问题,有着广泛的应用。
随着神经网络和模糊逻辑技术的发展,人们对这一问题的研究又采用了许多新的方法和手段。
目前国际上有相当多的学者在研究这一课题,它包括了模式识别领域中所有典型的问题:
数据的采集、处理及选择、输入样本表达的选择、模式识别分类器的选择以及用样本集对识别器的有指导的训练。
人工神经网络为数字识别提供了新的手段。
正是神经网络所具有的这种自组织自学习能力、推广能力、非线性和运算高度并行的能力使得模式识别成为目前神经网络最为成功的应用领域。
数字识别系统的优点表现在识别精度、可靠性、效率及速度等方面。
由于数字识别难于建立精确的数学模型,所以本文采用带隐层的BP神经网络对这一问题进行处理。
神经网络模式识别的一个关键步骤是预处理和特征提取。
为此我们采用了一种基于字符像素的特征提取方法,并用程序实现了这一特征提取过程。
本文还训练出了具体的用于数字识别的神经网络,用程序模拟了整个识别过程。
关键词:
BP神经网络,模式识别,数字识别,特征提取
ABSTRACT
Numberrecognitionisahighlightofstudyforyears,andisaspecialissueofcharacterrecognition.Numberrecognitionhasbroadapplication.Asthedevelopmentofthetechniqueofthenervenetworkandtheillegibilitylogic,peoplehaveadoptedmanynewmethods.Currently,manyinternationallearnersaredevotedtothestudyofthistopic,whichincludesallthetypicalissuesoftheillegibilityidentificationfieldssuchasthepickupofthedata,transactionandselectionofthedata,selectionoftheinputsample,modelidentificationclassifieranditstrainingbythesamplecollection.Manpowernervenetworkprovidesthenewwaytoidentifythenumbers.Itistheabilityofitselfmotivatedstudy,promoting,nonlinearandsimultaneouscalculationthatpermitsthemodelidentificationtobethemostsuccessfulapplicationfieldofthenervenetwork.
Itisdifficulttosetanaccuratemathematicsmodelfornumberrecognition,soaBPneuralnetworkisinusehere.Thekeystepsofneuralnetworkspatternrecognitionarepreprocessingandfeature.Inthispaper,analgorithmoffeaturedetectionbasedontheedge-outlineofcharacterisadoptedandrealizedbyprogram.AtreelayerBPneuralnetworkforhandwrittennumberrecognitionhasbeentrained.
KeyWords:
BPneuralnetwork,patternrecongnition,numberrecongnition,preprocess
1数字识别
模式识别是六十年代初迅速发展起来的一门学科。
由于它研究的是如何用机器来实现人(及某些动物)对事物的学习、识别和判断能力,因而受到了很多科技领域研究人员的注意,成为人工智能研究的一个重要方面。
字符识别是模式识别的一个传统研究领域。
从50年代开始,许多的研究者就在这一研究领域开展了广泛的探索,并为模式识别的发展产生了积极的影响。
数字识别是多年来的研究热点,也是字符识别中的一个特别问题,它是本文研究的重点。
数字识别在特定的环境下应用特别广泛,如邮政编码自动识别系统,税表和银行支票自动处理系统等。
一般情况下,当涉及到数字识别时,人们往往要求识别器有很高的识别可靠性,特别是有关金额的数字识别时,如支票中填写的金额部分,更是如此。
因此针对这类问题的处理系统设计的关键环节之一就是设计出高可靠性和高识别率的数字识别方法。
然而可以说还没有哪个数字识别器达到完美的识别效果。
在过去的数十年中,研究者们提出了许许多多的识别方法。
按使用的特征不同,这些方法可以分为两类:
基于结构特征的方法和基于统计特征的方法。
结构特征通常包括圆、端点、交叉点、笔划、轮廓等:
统计特征通常包括点密度的测量、矩、特征区域等;
一般来说,两类特征各有优势。
例如,使用统计特征的分类器易于训练,而且对于使用统计特征的分类器,在给定的训练集上能够得到相对较高的识别率:
而结构特征的主要优点之一是能描述字符的结构,在识别过程中能有效地结合儿何和结构的知识,因此能够得到可靠性较高的识别结果[150-156]。
2神经网络在数字识别中的应用
神经网络模型用于模拟人脑神经元活动的过程。
其中包括对信息的加工、处理、存储、和搜索等过程,它具有如下基本特点:
神经网络具有分布式存储信息的特点。
它存储信息的方式与传统的计算机的思维方式是不同的,一个信息不是存在一个地方,而是分布在不同的位置。
网络的某一部分也不只存储一个信息,它的信息是分布式存储的。
神经网络是用大量神经元之间的连接及对各连接权值的分布来表示特定的信息。
因此,这种分布式存储方式即使当局部网络受损时,仍具有能够恢复原来信息的优点[9-15]。
神经网络对信息的处理及推理的过程具有并行的特点。
每个神经元都可以根据接收到的信息作独立的运算和处理,然后将结果传输出去,这体现了一种并行处理。
神经网络对于一个特定的输入模式,通过前向计算产生一个输出模式,各个输出节点代表的逻辑概念被同时计算出来。
在输出模式中,通过输出节点的比较和本身信号的强弱而得到特定的解,同时排出其余的解。
这体现了神经网络并行推理的特点。
神经网络对信息的处理具有自组织、自学习的特点。
神经网络中各神经元之间的连接强度用权值大小来表示,这种权值可以事先定出,也可以为适应周围环境而不断地变化,这种过程称为神经元的学习过程。
神经网络所具有的自学习过程模拟了人的形象思维方法,这是与传统符号逻辑完全不同的一种非逻辑非语言的方法。
在神经网络研究的历史进程中,它在模式识别方面的应用一直是最活跃和最成功的领域。
神经网络与它在模式识别中的应用是息息相关,密不可分的。
几乎可以说,神经网络模式识别研究的发展史贯穿了整个神经网络的研究历程。
目前,随着计算机的迅速发展,性能价格比的不断提高,模式识别技术己经从理论探讨为主发展到大量的实际应用,人们将更多的注意力开始转向那些用于语音,图像、机器人以及人工智能等的模式识别实际问题。
解决这些问题的关键是需要进行复杂而庞大的实时数据处理,而现有计算机的存贮容量及计算复杂性的局限,使得真正实时化的应用受阻[207-232]。
这种面向实时应用的模式识别问题促使人们开始将并行处理的神经网络应到模式识别,而神经网络模式识别技术又将模式识别实时应用推进了一大步,数字识别就是这种应用的一个很重要的领域。
数字识别是一项极具研究价值的课题,随着神经网络和模糊逻辑技术的发展,人们对这一问题的研究又采用了许多新的方法和手段,也使得这一古老的课题焕发出新的生命力。
3模式识别
在观察各种事物或接受各种客观现象时,人们总是不断地进行模式识别。
各种具有相似的特征又不完全相同的事物和现象组成不同的类别。
在同一类别中,事物和现象不尽相同,但它们总是表现出某些方面的相近之处。
例如,每个人写出来的数字“8”可能千差万别,但它们的共同之处在于,它们都属于数字,..8”这个范畴。
也就是说,这些千差万别的数字“8”的共性是它们具有相同的属性特征[207-232]。
人的思维可以对初次见到的事物进行分类。
比如,即使人们初到一个城市,也可以轻易地辨认出“街道”、“房屋”、“汽车”这样的事物。
同样,看到另外一种写法的“8"
,人们仍然可以清楚地知道它的含义。
正是人脑的这种推广能力,使得人们利用见到过的有限事物和现象,形成各种事物类别的概念。
这些有限的、个别的事物和现象就可以称为模式,而整个类别的现象和事物则可以称为模式类,或者简称为类。
人们根据所见模式的特性,将其划归为某一类的过程,实际上就是模式识别的过程。
模式识别这个词既可以是指人对事物的,一个分析、描述、判断和识别的过程,也可以是指利用计算机对某些物理对象进行分类的这门学科。
模式和集合的概念是分不开的,模式可以看作是集合论中的元素,而类则可以看作是子集。
3.1模式识别方法概述
具体的模式识别是多种多样的,如果从识别的基本方法上划分,传统的模式识别大体分为统计模式识别和句法模式识别,在识别系统中引入神经网络是一种近年来发展起来的新的模式识别方法。
尽管引入神经网络的方法和引入网络的结构可以各不相同,但都可称为神经网络模式识别。
而且这些识别方法在解决传统方法较难处理的某些问题上带来了新的进展和突破,因而得到了人们越来越多的重视和研究。
3.2神经网络模式识别
人工神经元网络(ArtificialNeuralNetwork)简称神经网络是基于日前人们对自然神经系统的认识而提出的一些神经系统的模型,一般是由一系列被称为神经元的具有某种简单计算功能的节点经过广泛连接构成的一定网络结构,而其网络连接的权值根据某种学习规则在外界输入的作用下不断调节,最后使网络具有某种期望的输出特性[9-15]。
神经网络的这种可以根据输入样本学习的功能使得它非常适合于用来解决模式识别问题,这也是神经网络目前最成功的应用领域之一。
神经网络模式识别的基本方法是,首先用己知样本训练神经网络,使之对不同类别的己知样本给出所希望的不同输出,然后用该网络识别未知的样本,根据各样本所对应的网络输出情况来划分未知样本的类别。
神经网络进行模式识别的一般步骤如图所示,分为几个部分:
图3.1神经网络模式识别基本构成
样本获取:
这一步骤主要是为了得到一定数量的用于训练和识别的样本。
常规处理:
其作用相当于传统模式识别中的数据获取和常规处理两步的功能。
即通过对识别对象的有效观测、进行采样量化,获得一系列数据,再经过去除噪声、加强有用信息等工作获得尽量逼真的原始数据。
通过这一步骤,得到了样本的原始表达。
特征变换:
在原始样本表达的基础上,进行适当的变换,得到适合神经网络进行识别的样本的特征表达。
以上两步构成了神经网络模式识别中的预处理过程。
这一步骤与传统模式识别的特征提取选择的位置很相似,不同的是,神经网络可以对原始样本直接进行处理,因此这种变换在神经网络模式识别中不象传统模式识别的特征提取选择那样必不可少,神经网络对预处理的要求与传统模式识别对特征提取选择的要求也有所不同。
神经网络识别:
根据识别对象和研究问题的不同,选用不同的网络结构并采用适当的学习算法,用已知样本作为训练集对神经网络进行训练,使其网络连接的权值不断调整,直到网络的输出特性与期望的相符合。
训练过程结束以后,网络相当于一个固定的映射器,新的输入样木(测试样本)通过网络映射到不同的类别。
神经网络能够应用于模式识别,关键在于它具有一般数学模型所不具有的诸多优点。
(1)分布存储和容错性
(2)大规模并行处理
(3)自学习、组织和自适应性
正是由于神经网络具有这些特点,所以可以处理一些环境信息十分复杂、知识背景不清楚和推理规则不明确的问题。
例如语音识别和识别、医学诊断以及市场估计等,都是具有复杂非线性和不确定性对象的控制。
在那里,信源提供的模式丰富多彩,有的互相间存在矛盾,而判定决策原则又无条理可循。
通过神经元网络学习(按照学习法则),从典型事例中学会处理具体事例,给出比较满意的解答。
4BP网络在数字识别中算法的实现
4.1数字识别常规预处理步骤简介
4.1.1数值化
数字识别时,首先将印在纸上的数字经过光电扫描产生模拟信号。
再通过模数转换变成表示灰度值的数字信号输入计算机。
纸张薄厚、洁白度、光洁度、书写力度和笔划质量都要造成字形的变化,产生污点、飞白、断笔、交连等干扰。
因此,一般由扫描得到的数值化的字符还需要多种进一步的处理。
4.1.2二值化
二值化处理是将数字图像转化为由0和1表示的值像素矩阵形式,最简单也是最原始的作法是将整个数字所在区域用mXn网格划分,然后将数字笔划通过的网格内填1,不通过的网格内填0,这样就将整个数字变为一个由,二值构成的矩阵。
而在采用光电扫描仪对数字进行扫描输入时,通常是将数字转换为带灰度值的数字信号输入计算机。
因而,二值化的工作不再是简单的笔划通过与否。
设像素点(i>
i)的灰度为g(i,j)。
有划的部分g(i,I)小,白背景部分g(i,l)大。
二值化可以通过设定灰度阀值来完成,即当g(i,.l)值比预定阀值大,看成背景,以0表示;
否则看成笔划,以1表示。
这样,经过二值化,各点重新表示为:
i=1,2,…nj=1,2,…n(4-1)
二值化的关键在于阀值T的选择。
考虑到各个样本数字的灰度范围的差别,可以采用不同的二值化阀值进行处理。
常用于文字识别的阀值选择方法有整体阀值二值化、局部阀值二值化和动态阀值二值化等。
根据数字的特点和扫描得到的数字图像的灰度差别,可以分别用上述不同确定阀值的方法进行二值化。
经过上面几个步骤的预处理变换,则可以获得一种简单像素点输入样本表达。
对传统的识别系统,这种样本不能直接进行识别,以上的步骤只是为特征提取选择打下基础。
而对于神经网络识别系统,这种简单样本表达可以直接输入进行模式识别。
但是,这种简单的原始二值表达在代表数字时有下而几点不足:
1)样本维数很大,而中间许多特征不一定有用;
2)没有将那些真正反映数字特点的特征突出出来;
3)对于不同数字的外围或边缘及主千特征并没有考虑进去,这样对一些有相似部分的数字容易出现误识。
由于上面三方面的原因,在神经网络模式识别中,我们要用带污染的输入量去训练神经网络,使其具有一定的抗干扰能力,这样对所要识别的数字,能达到更好的识别率。
5基于神经网络的数字识别预处理
神经网络为数字识别提供一个强有力的手段。
目前,在神经网络模式识别中根据对输入样本的表达方式的选择有一下面两大类:
一类是直接将数字图像经数值化处理之后得到的像素点原始样本作为神经网络的输入;
另一类则是对这种原始像素点构成的原始输入样本再作进一步的预处理或变换。
虽然,在某些情况下,人们采用第一类样本表达获得了较好的识别结果,但这种输入方式,通常使得网络分类器结构的复杂程度大大增加,所以,对原始样本进行预处理,已成为神经网络模式识别成功的一个很重要的方面。
对于数字的预处理,人们己作了许多工作,但归根结底有下面几步:
首先是将数字转化为爪xn像素点矩阵形式,再经二值化处理,可以得到原始的输入表达方式。
接下来,对原始样本表达进行一些常规变换,包括平滑、规格化和细化。
而本文是通过大量的样本训练网络,以达到预期的识别率。
6BP算法
6.1BP算法原理
BP学习算法的基本原理是梯度最速下降法,它的中心思想是调整权值使网络总误差最小。
也就是采用梯度搜索技术,以期使网络的实际输出值与期望输出值的误差均方值为最小。
网络学习过程是一种误差边向后传播边修正权系数的过程。
设有一个m层的神经网络,并在输入层加有样本X;
设第k层的i神经元的输入总和表示为
,输出
;
从第k—1层的第j个神经元到第k层的第i个神经元的权系数为Wij各个神经元的激发函数为f,则各个变量的关系可用下面有关数学式表示:
(6-1)
多层网络运用BP学习算法时,实际上包含了正向和反向传播两个阶段。
在正向传播过程中,输入信息从输入层经隐含层逐层处理,并传向输出层,每一层神经元的状态只影响下一层神经元的状态。
如果在输出层不能得到期望输出,则转入反向传播,反向传播时,把误差信号按原来正向传播的通路反向传回,并对每个隐层的各个神经元的权系数进行修改,以望误差信号趋向最小。
将上一层节点的输出传送到下一层时,通过调整连接权系数来达到增强或削弱这些输出的作用。
除了输入层节点外,隐含层和输出层的节点的净输入是前一层节点输出的加权和。
每个节点的激活程度由它的输入信号,激活函数和节点的偏置(或阀值)来决定。
但对于输入层,输入模式送到输层节点上,这一层节点的输出即等于其输入。
这种网络没有反馈存在,运行方向是单向的,所以它是一种非线性映射关系。
图6.1BP网络模型
6.2BP网络的数学推导过程
6.2.1BP网络的前馈计算
在训练网络的学习阶段,设有N个训练样本,先假定用其中的某一个样本p的输入|输出模式对{Xp}和{Tp}对网络进行训练,隐含层的第i个神经元在样本p的作用下的输入为
.(6-2)
式中,
和
分别为输入节点j在样本p作用时的输入和输出,对输入节点而言两者相当;
为输入层神经元j与隐含层神经元i之间的连接权值;
为隐含层神经元i的阀值;
M为输入层节点数,即输入的个数。
隐含层的第i个神经元的输出为:
(6-3)
式中,g(i)为激活函数。
对于Sigmoid型激活函数
(6-4)
式中,参数
表示偏值,正的
使激活函数水平向左移动;
的作用是调节Sigmoid函数形状的,较小的
使Sigmoid函数逼近一个阶跃限幅函数,而较大的
将使Sigmoid函数变得较为平坦。
隐含层激活函数:
(6-5)
隐含层第i个神经元输出
将通过权系数向前传播到输出层第k个神经元并作为它的输入之一,而输出层第k个神经元的总输入为:
(6-6)
式中,Wki为隐含层神经元i与输出层神经元k之间的连接权值;
为输出层神经元k的阀值;
q为隐含层的节点数。
输出层第k个神经元的实际输出为:
(6-7)
输出层激活函数
的微分函数为
(6-8)
若其输出与给定模式对的期望输出
不一致,则将其误差信号从输出端反向传播回来,并在传播过程中对加权系数不断修正,直到在输出层神经元上得到所需要的期望输出值
为止。
对样本p完成网络权系数的调整后,再送入另一样本模式对进行类似学习,直到完成N个样本的训练学习为止.
6.2.2BP网络权系数的调整规则
对于每一样本p的输入模式对的二次型误差函数为:
(6-9)
则系统对所有N个训练样本的总误差函数为:
(6-10)
式中,N为模式样本对数;
L为网络输出节点数。
一般来说,基于Jp还是基于J来完成加权系数空间的梯度搜索会获得不同的结果。
在Rumelhart等人的学习加权的规则中,学习过程按使误差函数Jp减小最快的方向调整加权系数直到获得满意的加权系数集为止。
这里的加权系数的修正时顺序操作的,网络对各模式对一个一个地顺序输入并不断进行学习,类似于生物神经网络的处理过程,但不是真正的梯度搜索过程。
(1)输出层权系数的调整
权系数应按Jp函数梯度变化的反方向调整,使网络逐渐收敛。
根据梯度法,可得输出层每个神经元权系数的修整公式为
(6-11)
式中,η为学习速率,η>
0。
定义:
(6-12)
因此输出层任意神经元k的加权系数修整公式为:
(6-13)
为输出节点k在样本p作用时的输出;
为隐含节点i在样本p作用时的输出;
为在样本p输入输出对作用时输出节点k的目标值。
2)隐含层权系数的调整
根据梯度法,可得隐含层每个神经元权系数的修整公式为:
(6-14)
(6-15)
由于隐含层一个单元输出的改变会影响与该单元相连接的所有输出单元的输入,即
(6-16)
因此,隐含层的任意神经元i的加权系数修正公式为:
(6-17)
为隐含节点i在样本p作用时的输出,
为输入节点j在样本p作用时的输出,即输入节点j的输入(因对输入节点两者相当)。
输出层的任意神经元k在样本p作用时的加权系数改进公式为:
(6-18)
隐含层的任意神经元i在样本p作用时的加权系数改进公式为:
(6-19)
对于给定的一个样本p,可根据误差要求调整网络的加权系数使其满足要求;
对于给定的另一个样本,再根据误差要求调整网络的加权系数使其满足要求,直到所有样本作用下的误差都满足要求为止。
这种计算过程称为在线学习过程。
如果学习过程按使误差函数J减小最快的方向调整加权系
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 模式识别