欢迎来到天天文库
浏览记录
ID:55129005
大小:303.50 KB
页数:11页
时间:2020-04-28
《基于BP神经网络的英文字母识别.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、基于BP神经网络的英文字母识别摘要:本报告主要介绍了利用BP神经网络进行英文字母的识别,并在模式识别的过程中考虑了噪声干扰的存在,能够使得网络具有一定的容错能力,用MATLAB模拟实现英文字母的识别结果。关键词:BP神经网络,模式识别,噪声干扰,MATLAB一、模式识别与BP神经网络1.1模式识别与神经网络的特点1.1.1模式识别的基本原理模式识别系统的结构如图1所示,下面对各部分进行简要说明。图1模式识别系统的构成(1)信息获取:为了使计算机能够对各种现象进行分类识别,要用计算机可以运算的符号来表示所研究的对象。通常输入对象的信息有二维图像、一
2、维波形、物理参量和逻辑值三种类型。通过测量采样和量化,可以用矩阵或向量表示二维图像或一维波形。这就是数据获取的过程。(2)预处理:去噪声,提取有用信息,并对输入测量仪器或其它因素所造成的退化现象进行复原(3)特征值提取与选择:由图像或波形所获得的数据量是相当大的。例如,一个文字图像可以有几千个数据,一个卫星遥感图像的数据量就更大。为了有效的实现分类识别,就要对原始数据进行变换,得到最能反映分类本质的特征[1]。1.1.2神经网络的特点(1)它具有自组织和自学习能力,能够直接输入数据并进行学习。(2)神经网络具有推广能力。(3)网络是非线性的,即它
3、可以找到系统输入变量之间复杂的相互作用。1.2BP神经网络1.2.1BP网络简介20世纪80年代中期,学者Rumelhart、McClelland和他们的同事提出了多层前馈网络MFNN(MutltilayerFeedforwardNeuralNetworks)的反向传播学习算法,简称BP网络(BackPropagationNetwork)学习算法[2]。BP神经网络是一种神经网络学习算法。其由输入层、中间层、输出层组成的阶层型神经网络,中间层可扩展为多层。相邻层之间各神经元进行全连接,而每层各神经元之间无连接,网络按有教师示教的方式进行学习,当一
4、对学习模式提供给网络后,各神经元获得网络的输入响应产生连接权值(Weight)。然后按减小希望输出与实际输出误差的方向,从输出层经各中间层逐层修正各连接权,回到输入层。此过程反复交替进行,直至网络的全局误差趋向给定的极小值,即完成学习的过程。BP网络主要作用于以下几个方面: (1)函数逼近:用输入矢量和相应的输出矢量训练一个网络来逼近一个函数; (2)模式识别:用一个特定的输出矢量将它与输入矢量联系起来; (3)分类:把输入矢量以所定义的合适的方式进行分类; (4)数据压缩:减少输出矢量的维数以便于数据传输或存储。1.2.2BP网络模型B
5、P网络是一种单向传播的多层前向网络,每一层节点的输出只影响下一层节点的输出,其网络结构如图2所示,其中X和Y分别为网络输入、输出向量,每个节点表示一个神经元。网络是由输入层、隐层和输出层节点构成,隐层节点可为一层或多层,同层节点没有任何耦合,前层节点到后层节点通过权连接。输入信号从输入层节点依次传过各隐层节点到达输出层节点。图2BP神经网络模型1.2.3BP网络算法思想BP算法的基本思想是,学习过程由信号的正向传播与误差的反向传播两个过程组成。正向传播时,输入样本从输入层传入。经各层逐层处理后,传向输出层。若输出层的实际输出与期望的输出(教师信号
6、)不符,则转入误差的反向传播阶段。误差反传是将输出误差以某种形式通过隐层向输入层逐层反传、并将误差分摊给各层的所有单元,从而获得各层单元的误差信号,此误差信号即作为修正各单元权值的依据。这种信号正向传播与误差反向传播的各层权值调整过程,是周而复始的进行的。权值不断调整的过程,也就是网络的学习训练过程。此过程一直进行到网络输出的误差减少到可接受的程度,或进行到预先设定的学习次数为止。二、字母识别问题的描述模式识别应用的领域非常广泛,其中字母识别是常研究的一个课题。而对英文字母的识别方法也很多,由于条件不同解决的方法也不同,这里讨论利用BP神经网络对
7、26个英文字母的识别。在对字母进行识别之前,首先必须将字母进行预处理[3],即将待识别的26个字母中的每一个字母都通过的方格形式进行数字化处理,其有数据的位置设为1,其他位置设为0。如图2给出了字母A、B和C的数字化过程,然后用一个1×35的向量表示。例如图3中字母A的数字化处理结果所得对应的向量为: LetterA=[01]图3数字化字母由此可得每个字母由35个元素组成一个向量。由26个标准字母组成的输入向量被定义为一个输入向量矩阵alphabet,即神经网络的样本输入为一个35×26的矩阵。其中alphabet=[letterA,lette
8、rB,lettereC,……letterZ]。网络样本输出需要一个对26个输入字母进行区分输出向量,对于任意一个输入字母,网络输出在字母
此文档下载收益归作者所有