资源描述:
《基于人工神经网络的数字卡片识别》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、基于人工神经网络的数字卡片识别一、作业要求对小卡片上的数字进行奇偶数识别。数字卡为奇数时,输出1;数字卡为偶数时,输出0。要求使用matlab软件编程。二、人工神经网络背景人工神经网络(ArtificialNeuralNetwork,即ANN),是20世纪80年代以来人工智能领域兴起的研究热点。它从信息处理角度对人脑神经元网络进行抽象,建立某种简单模型,按不同的连接方式组成不同的网络。在工程与学术界也常直接简称为神经网络或类神经网络。神经网络是一种运算模型,由大量的节点(或称神经元)之间相互联接构成。每个节点代表一种特定的输出函数,称为激
2、励函数(activationfunction)。每两个节点间的连接都代表一个对于通过该连接信号的加权值,称之为权重,这相当于人工神经网络的记忆。网络的输出则依网络的连接方式,权重值和激励函数的不同而不同。而网络自身通常都是对自然界某种算法或者函数的逼近,也可能是对一种逻辑策略的表达。图1人工神经元模型在上图中,X1,X2……,Xn是神经元的输入,即是来自前级n个神经元的轴突的信息:θi是i神经元的阀值:Wil,Wi2,……Win分别是i神经元对Xl,X2……,Xn的权系数,也即突触的传递效率;Yi是i神经元的输出;f[·]是激活函数,它决
3、定i神经元受到输人X1,X2,……,Xn的共同刺激达到阀值时以何种方式输出。上述的神经元模型,其数学模型表达式:n??ui??wijxj??ij?1??y?f(u)i?i其中,Ui又被称为诱导局部域。激活函数f[·]通过诱导局部域Ui定义神经元的输出。图2算法框图三、代码及其作用:1.【CardMatrix.m】此文件的作用是输出数字卡片的格式。functionY=CardMatrix(num)switchnumcase0Y=[01110;10001;10001;10001;01110];case1Y=[00100;01100;00100
4、;00100;01110];case2Y=[01110;10001;00110;01000;11111];case3Y=[01110;10001;00111;10001;01110];case4Y=[00110;01010;10010;11111;00010];case5Y=[01111;01000;01110;00001;01110];case6Y=[00110;01000;11111;10001;01110];case7Y=[11111;00001;00010;00100;00100];case8Y=[01110;10001;0111
5、0;10001;01110];case9Y=[01110;10001;01111;00001;01110];otherwiseY=zeros(5);end2.【UnitStep.m】此文件是一个单位阶跃函数,用来供给阈值函数调用。functiony=UnitStep(x)ifx<=0y=0;elsey=1;end3.【ThresholdFunc.m文件】此文件是就阈值函数,用来模拟单个神经元的人工神经网络。functiony=ThresholdFunc(X,W)X=double(X);v=0;fori=1:5forj=1:5v=v+
6、X(i,j)*W(i,j);endendy=UnitStep(v);4.【NNstudy.m】此文件的作用是神经网络的学习,确定权值矩阵。当神经网络在不超过最大训练次数的情况下完成学习后,程序会自动退出,并返回所经过的训练次数。functionW=NNstudy(n,t_max)W=ones(5)*0.1;d=[0101010101];fork=1:t_maxFlag_adj=0;fornum=0:9y=ThresholdFunc(CardMatrix(num),W);ify~=d(num+1)Flag_adj=1;card=double
7、(CardMatrix(num));fori=1:5forj=1:5W(i,j)=W(i,j)+n*(d(num+1)-y)*card(i,j);endendendendifFlag_adj==0break;endenddisp(sprintf('Trainingtimes:%d',k));5.【NumberDiscriminate.m】此文件为主文件,用来区别奇偶数卡片。functionNumberDiscriminate(num,W)ifnum<0
8、
9、num>9disp('Error!Thein
10、putnumbershouldrangefrom1to9.');return;endy=ThresholdFunc(CardMatrix(num),W);disp(''