- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于神经网络的手写体数字识别孙竟豪(21160211123)信息科学与工程学院信号与信息处理专业指导老师:程军娜摘要手写体数字识别技术是利用计算机自动辨认手写体阿拉伯数字的一种技术,是光学字符识别的一个分支。因为阿拉伯数字的通用性,并且数字的识别和处理也常常是一些自动化系统的核心和关键,对手写体数字识别研究通用性强,且意义重大。本文主要的研究工作在于图像预处理和选择合适的特征向量,实现一个完整手写体数字识别系统。在本文中利用BP神经网络,实验数据显示本文设计的数字识别系统对手写体阿拉伯数字识别具有较高的识别率。引言输入信号Xi通过中间节点(隐层点)作用于输出节点,经过非线形变换,产生输出信号Yk,网络训练的每个样本包括输入向量X和期望输出量t,网络输出值Y与期望输出值t之间的偏差,通过调整输入节点与隐层节点的联接强度取值Wij和隐层节点与输出节点之间的联接强度Tjk以及阈值,使误差沿梯度方向下降,经过反复学习训练,确定与最小误差相对应的网络参数(权值和阈值),训练即告停止。此时经过训练的神经网络即能对类似样本的输入信息,自行处理输出误差最小的经过非线形转换的信息。1、原理总结BP算法由数据流的前向计算(正向传播)和误差信号的反向传播两个过程构成. 正向传播时,传播方向为输入层→隐层→输出层,每层神经元的状态只影响下一层神经元. 若在输出层得不到期望的输出,则转向误差信号的反向传播流程. 通过这两个过程的交替进行,在权向量空间执行误差函数梯度下降策略,动态迭代搜索一组权向量,使网络误差函数达到最小值,从而完成信息提取和记忆过程.首先考虑正向传播,设输入层有n个节点,隐层有p个节点,输出层有q个节点. 输入层与隐层之间的权值为vk i, 隐层与输出层之间的权值为w jk. 隐层的传递函数为f1 ( x) ,输出层的传递函数为f2 ( x) ,则隐层节点的输出为:输出层节点的输出为:通过式(1) 和(2) 可得BP神经网络完成n维到q维的映射. 其次考虑反向传播. 在反向传播中,需要对不理想的权值进行调整, B P神经网络的核心要务即在于调权.定义误差函数, 设输入P个学习样本,用x1 , x2 , ?, xp来表示. 第p个样本输入网络得到输出ypj ( j = 1, 2, ?, q) ,其误差为:式中为期望输出. P个样本的全局误差为将式(3) 代入得:输出层权值的变化采用累计误差BP算法调整wjk使全局误差E变小,即式(5) 中η为学习率. 现定义误差信号为:将式(3) 代入可得第一项为第二项为输出层传递函数f2 ( x) 的偏微分将式(7) 和(8) 代入可得误差信号为则输出层各神经元权值△wjk调整公式将式(9)代入可定义为在得到输出层权值调整公式后, 需要定义隐层权值△vk i 调整公式根据输出层各神经元权值△wjk调整公式推导过程,可得△vk i 为2、实验步骤2.1实验目的在本文中,实现一个BP(backpropagation)算法,并将之应用到手写的阿拉伯数字(0-9)的自动识别上。训练数据集(training set)如下:一共有5000个训练实例(training instance),每个训练实例是一个400维特征的列向量(20*20 pixel image)。用 X 矩阵表示整个训练集,则 X 是一个 5000*400 (5000行 400列)的矩阵。5000*1的列向量 y ,用来标记训练数据集的结果。2.2模型表示使用三层神经网络:输入层,隐藏层和输出层。两个参数矩阵:Θ(1)?(Theta1)和?Θ(2)?(Theta2)。本文中的数字图片是用一个400维的特征向量代表,输出结果则是0-9的阿拉伯数字,即一共有10种输出。本文中隐藏层单元个数为25个。故参数矩阵Θ(1)?(Theta1)是一个25*401矩阵,行的数目为25,由隐藏层的单元个数决定,列的数目由输入特征数目决定。同理,参数矩阵Θ(2)?(Theta2)是一个10*26矩阵,行的数目由输出结果数目决定,列的数目由隐藏层数目决定。神经网络的结构图如下:2.3可视化图像和正向传播计算h(x)(1)从X中随机挑选一张图像并可视化(2)进行正向传播并计算损失函数和梯度,正向传播过程中没有加入正则化项,以下是损失函数的公式,其中m表示有训练样本集,k表示输出。计算得到的损失误差为0.2876292.4 加入正则化项后,损失函数如下所示:此处为了权衡经验风险和正则化项,所以将λ设为1,计算的得到的损失误差为0.383770。2.5计算sigmoid gradient(1)程序如下:g = sigmoid(z).*(1 - sigmoid(z)).(2)实验结果:Sigmoid gradient evaluated at [1 -0.5 0 0.5 1]
文档评论(0)