资源描述:
《人工智能神经网络实验报告.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、神经网络实验报告一.实验目的(1)熟悉Matlab/Simulink的使用. (2)掌握BP神经网络的基本原理和基本的设计步骤. (3)了解BP神经网络在实际中的应用. (4)针对简单的实际系统, 能够建立BP神经网络控制模型. 二、实验内容BP神经网络神经网络的概念、原理和设计是受生物、特别是人脑神经系统的启发提出的.神经网络由大量简单的处理单元来模拟真实人脑神经网络的机构和功能以及若干基本特性,是一个高度复杂的非线性自适应动态处理系统.BP网络是1986年由Rinehart和
2、McCelland为首的科学家小组提出,是一种按误差逆传播算法训练的多层前馈网络,是目前应用最广泛的神经网络模型之一.BP网络能学习和存贮大量的输入-输出模式映射关系,而无需事前揭示描述这种映射关系的数学方程.它的学习规则是使用最速下降法,通过反向传播来不断调整网络的权值和阈值,使网络的误差平方和最小.BP神经网络模型拓扑结构包括输入(input)、隐层(hidelayer)和输出层(outputlayer),如图1所示.三、 基于BP神经网络的手写数字识别3.1 输入向量与目标向量首先对手写数字图像
3、进行预处理,包括二值化、去噪、倾斜校正、归一化和特征提取,生成BP神经网络的输入向量Alphabet和目标向量Tar2get.其中Alphabet选取40×10的矩阵,第1列到第10列代表0~9的数字.Target为10×10的单位矩阵,每个数字在其所排顺序位置输出1,其他位置输出0.3.2 BP神经网络的构建BP算法由数据流的前向计算(正向传播)和误差信号的反向传播两个过程构成.正向传播时,传播方向为输入层→隐层→输出层,每层神经元的状态只影响下一层神经元.若在输出层得不到期望的输出,则转向误差信号
4、的反向传播流程.通过这两个过程的交替进行,在权向量空间执行误差函数梯度下降策略,动态迭代搜索一组权向量,使网络误差函数达到最小值,从而完成信息提取和记忆过程.首先考虑正向传播,设输入层有n个节点,隐层有p个节点,输出层有q个节点.输入层与隐层之间的权值为vki,隐层与输出层之间的权值为wjk.隐层的传递函数为f1(x),输出层的传递函数为f2(x),则隐层节点的输出为输出层节点的输出为通过式(1)和(2)可得BP神经网络完成n维到q维的映射.其次考虑反向传播.在反向传播中,需要对不理想的权值进行调整,
5、BP神经网络的核心要务即在于调权.定义误差函数,设输入P个学习样本,用x1,x2,⋯,xp来表示.第p个样本输入网络得到输出ypj(j=1,2,⋯,q),其误差为式中为期望输出.P个样本的全局误差为将式(3)代入得输出层权值的变化采用累计误差BP算法调整wjk使全局误差E变小,即式(5)中η为学习率.现定义误差信号为将式(3)代入可得第一项为第二项为输出层传递函数f2(x)的偏微分将式(7)和(8)代入可得误差信号为则输出层各神经元权值△wjk调整公式将式(9)代入可定义为在得到输出层权值调整公式后,
6、需要定义隐层权值△vki调整公式根据输出层各神经元权值△wjk调整公式推导过程,可得△vki为3.3 网络的训练神经网络的训练过程是识别字符的基础,十分重要,直接关系到识别率的高低.输送训练样本至BP神经网络训练,在梯度方向上反复调整权值使网络平方和误差最小.为使网络对输入向量有一定鲁棒性,可先用无噪声的样本对网络进行训练,直到其平方和误差最小,再用含噪声的样本进行训练,保证网络对噪声不敏感.训练完毕,把待识别数字送BP神经网络中进行仿真测试.三、实验结果与分析权值初始化为(-1,1)之间的随机数,期
7、望误差为0.01,最大训练步数5000,动量因子为0.95,隐层和输出层均采用“logsig”函数,手写数字的识别结果如图2(a)~(e)所示,以数字4为例给出处理过程对1000个手写数字(每个数字取100幅不同的图像)进行识别,其识别结果如表1所示.四、 结论针对传统的手写数字识别中识别率和可靠性不高的情况,提出了将BP神经网络应用于数字识别,并通过实验,证实BP神经网络算法识别率较高,具备可行性.