BP神经网络算法在数字识别中的应用.pdf

上传人:b****1 文档编号:3175491 上传时间:2022-11-19 格式:PDF 页数:7 大小:148.57KB
下载 相关 举报
BP神经网络算法在数字识别中的应用.pdf_第1页
第1页 / 共7页
BP神经网络算法在数字识别中的应用.pdf_第2页
第2页 / 共7页
BP神经网络算法在数字识别中的应用.pdf_第3页
第3页 / 共7页
BP神经网络算法在数字识别中的应用.pdf_第4页
第4页 / 共7页
BP神经网络算法在数字识别中的应用.pdf_第5页
第5页 / 共7页
点击查看更多>>
下载资源
资源描述

BP神经网络算法在数字识别中的应用.pdf

《BP神经网络算法在数字识别中的应用.pdf》由会员分享,可在线阅读,更多相关《BP神经网络算法在数字识别中的应用.pdf(7页珍藏版)》请在冰豆网上搜索。

BP神经网络算法在数字识别中的应用.pdf

西北纺织工学院学报JournalofNorthwestInstituteofTextileScienceandTechnology第l4卷第4期(总56期)Z000年12月Vo|14,No4(SumN056)BP神经网络算法在数字识别中的应用弓(:

l?

贺兴时t,刘宇z(1西北纺织工学院救理景陕西西安710048-2西北纺织工学院计算机系陕西西安710048)摘要:

介绍BP神经网络算法的理论和方法,并在MATLAB环境下给出了BP神经网络算法在数字目像识别系统中的应用M丹TLA哆1锈芎关键词:

丝璺;附加动量法;垦皇翌圭3f),因缘鑫碳剥|诡中冒分类号:

1P18文献标识码:

A文章编号:

1001730(2000)04035607。

、一。

f0弓I言丁f)3、tpf一一自1985年Rundhrt提出BP算法以来,神经网络发展迅逮并渗透割各个学科,多层前向型网络成为用途最为广泛的网络之一神经网络算法已不再是只供研究而在实际的生产中开始了广泛的应用如:

数据库系统的数据挖掘、产品的自动分捡系统的图像识别荨对应地在计算机辅助设计的软件开发中,神经网络算法的设计也越来越多,但基本的神经网络算法比较复杂,且其理论也不十分完善有些参数需要凭经验因此,软件开发者对于神经网络解法对实际要解决的同题的可行性及效率并没有什么把握如何选取BP神经网络的隐古层数厦节点数,耳前尚无准确的理论和方法,必须傲大量的实验所以,如果一开始就编写基本的神经网络算法,将把大部分的精力都投人到算法的实现和调试上了,不能专注于调整网络参数和结掏的设计MATLAB提供了一个安全可靠的神经网络工具箱,包括现阶段基本的典型的神经网络算法并且在训练过程中可以方便地用曲线将学习率的变化和误差的变化表现出来以便于分析开发者可以用MATLAB设计自己的算法或调整网络参数和结构,进行快速原型设计,试用各种参数并通过多次实验选定适合的参数和结构1BP网络基础知识1BP算法是一种有监督式的学习算法其主要思想是精人学习样本使用反向传播算法对网络的权值和偏差进行反复的调整训练使宣出的向量与期望向量尽可能地接近,当网络输出层的误差平方和小于指定的误差时训练完成保存网络的权值和偏差收稿日期2000-09-04作者简介。

贺对(1960-)男,陕西省富平县西北纺织工学院副教授从事随机过程与救学熏攥等方面的研究维普资讯http:

/第4期BP神经舟络算法在数字识别中的应用357BP算法由两部分组成:

信息的正向传递与误差的反向传播在正向传播过程中输入信息从输入层经隐吉层逐层计算传向输出层,每一层神经元的状态只影响下一层神经元的状态如果在输出层没有得到期望的输出,则计算输出层的误差变化值然后转向反向传播,通过阿络将误差信号沿原来注的连接通路反传回来嫠改各层神经元的权值直至达到期望耳标图l为两层回络的简化图J=1,2t;l=12j1=12,2匿1简化的两层网络图设输人为P=(A,A,舟),r为输入神经元的个数,第一层的权矩阵wl=()眦,sl为臆吉层神经元个数,教活函数为,1,W2=()m2为输出层神经元个数,对应的澈活函数厂2耳标矢量为T=(,:

)臆吉层神经元的输出矢量Al=(al。

,al:

,d1。

),输出层神经元的输出矢量A2=(d2;,42一,茈),隐吉层神经元的偏差B1=(bl。

6l:

,1。

),输出层神经元的偏差B2=(62。

占2“,62)t则在信息的正向传递过程中:

(1)隐吉层中第个神经元的输出为:

口Il,1(u,1。

向-t-61),(=1,2,sl#=1,2,r)

(2)输出层第个神经元的输出为:

a2=2(-口1+b2】一1,2,s2;,一l,2,s1)1三(3)定义误差函数为;E(w)=寺(“一d2),其中W=谢,;口=6162,在误差的反向传播过程中:

(1)输出屡的权值变化对从第个输入到第个输出的权值有:

龇-=一篡=-r差一r(“一同理可得:

姚=一蓑=一ZE=rC一,z

(2)慧舍层的权值变化对从第个输入到第个输出的权值有:

叫。

最一差一娄c一比-向同理可得一一差一-娄c一出比其中学习率为指定的常数对于线性激活函数,()=其导数为:

,()=1;对于对觳S型激活函数,

(一)一(1-t-e-),e为自然数,其导数为;)一一1一卜1一维普资讯http:

/358西北纺织工学院学报第14卷在MATLABT具箱中提供了函数可以方便地完成上面的公式(见裘1)寰iMA1乙工具箱中苗鼓的意义函数名意义函数名意义purdin线性墩括函数de)mlin对T-e的函数劬g正切s垂潋括函数deI乜】对lg的函数】g对效S型蠹括函熬ddb乜n对amg的函数sL1mr误差函数】锄反向传播学习规刚2改进的BP反向传播算法为了加快网络收敛,减少训练时间,MAIIEB提供了其他函鼓

(1)初始权值的选取对于非线性系统,初始值的选取十分重要,它直接影响到学习是否能够收敛及训练时间的长短初始值过大,使加权后的输入和落人S型激活函效的饱和区,使调节过程几乎停顿所以,一般初始权值是(一1,1)之问的随机效威得罗等人提出了一策略选取权值的量级为,其中S1为第一层神经元的数目,可以在较少的训练次数得到满意的训练结果MATLAB工具箱中用函数logm实现

(2)学习率学习率决定每次循环4练中所产生的权值变化量太的学习辜可能导致系统不稳定、的学习率导致较长的训练时间所以,好的办法是系统自动调节学习率(3)附加动量法附加动量法使弼络在修正其权值,不仅考虑误差在梯度上的作用,而且考虑在误差曲面上变化趋势的影响,其作用如同一个低通澹渡器在投有附加动量的作用下,网络可能陷人局部极小值,利用附加动量的作用则可能滑过这些极小值MATL4B工具箱中带的训练算法见表2寰2MA1u工其辖串带的训塔算法函数名意义aJnbp口乱nbonbm采用反向传播法的训练带甜加动量法曲反向传播洼训练带自适应学习率的反向传播法训练带拜加动量法和自适直学习率的反向传播洼调练3用神经网络进行数字图像识别在自动化的生产线上,需要根据商品的编号自动分捡,由于摄像的光线和角度的影响,图像经二值化处理后,字体总有一些变形,所以识别算法要有一定的容错性本文作者采用3层352010的BP网络识别

(1)特枉的提取将实际问题抽象转化为神经网络可以接受的数蠢输入,经神经网络计算后,再把网络的输出转化为实际问题的解确定输入、输出数据(匿2中对鼓字目像识别,所以图像的太小以像素为单位)把一个3图2样率图数字横向分为5份,纵向分为7份,如图2所示分别求得每个小方格内黑色像素的个数占这个小方格内总像素的百分比(用小数表示),形成一个75的矩阵(元素的取值范围为0,1维普资讯http:

/第4期BP神经舟络算法在数字识剐中的应用359之闻)依次取每行元素转化为35x1的矩阵,作为神经网络的辖数据图像是以像素为单位的,所以在横向、纵向上不能保证完全等分图2中,图像高rll,l13=34像素,如果每个小格高4像素,将丢失354*7=6行像素;如果每个小格高5像素,5*7;35将超出图像范围采用近似等分的办法,前nLIITrood7个小格高numH7+1像素,以后的小格高numl7个像素上面的图像7个小格的高度分别为5,5,5,5,5,5,4同理在横向上图像宽nwnW也采用近似等分的办法特征提取的算法如下:

Getcharactcrr玎(函数文件)fm-,c6onyan1rowG哪d蚰c讶(pu6g)nu1H,numW=(;pu6ng)lv-add=Olhadd=0Ilear曲=mod(numl-1,7)l】eav=rood(nnW,5)lfc*=】;7smceh=f

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 其它课程

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1