比较两个神经原网络的效率

源代码在线查看: bp网络的两个matlab程序的效率比较.txt

软件大小: 2 K
上传用户: mtzhy2
关键词: 比较 效率 网络
下载地址: 免注册下载 普通下载 VIP

相关代码

				%%fast.m 快的程序,用train训练
				% BP网络初始化
				% 训练样本 P,T
				% 输入神经元数 R  5
				% 隐含神经元数 S1 10
				% 输出神经元数 S2 2 
				
				P=[  0.392   0.583   0.139   0.239   0.10;
				0.383   0.568   0.139   0.240   0.10;
				  0.368   0.552   0.146   0.241   0.10;
				  0.378   0.520   0.169   0.252   0.125]';
				
				T=[  0.3500   0.5075;
				  0.3452   0.4912;
				  0.3404   0.4749;
				  0.367   0.500]';
				
				[R,Q]=size(P);
				[S2,Q]=size(T);
				S1=10;
				
				[W1, B1]=rands(S1,R);
				[W2, B2]=rands(S2,S1); 
				%以上是相同部分
				
				%以下是用方法一训练%%%%%%%%%%%%%
				net=newff(minmax(P),[R,S1,S2],{'tansig','tansig','purelin'},'trainlm');
				% BP网络训练的参数设置
				net.LW{2,1}=W1;
				net.LW{3,2}=W2;
				net.b{2,1}=B1;
				net.b{3,1}=B2;
				
				%设置训练参数
				net.trainParam.show=1;
				net.trainParam.lr=1;
				net.trainParam.epochs=50;
				net.trainParam.goal=0.001;
				%训练网络
				net=train(net,P,T);
				
				% 仿真结果
				TT=sim(net,P,[],[])
				
				%%slow.m 慢的程序,用trainbp训练
				% BP网络初始化
				% 训练样本 P,T
				% 输入神经元数 R    5
				% 隐含神经元数 S1 10
				% 输出神经元数 S2 2 
				
				P=[  0.392   0.583   0.139   0.239   0.10;
				0.383   0.568   0.139   0.240   0.10;
				  0.368   0.552   0.146   0.241   0.10;
				  0.378   0.520   0.169   0.252   0.125]';
				
				T=[  0.3500   0.5075;
				  0.3452   0.4912;
				  0.3404   0.4749;
				  0.367   0.500]';
				
				[R,Q]=size(P);
				[S2,Q]=size(T);
				S1=10;
				
				[W1, B1]=rands(S1,R);
				[W2, B2]=rands(S2,S1);
				%以上是相同部分 
				
				%以下是用方法二训练%%%%%%%%%%%%%%
				% BP网络训练的参数设置
				disp_fqre=100; max_epoch=5000; err_goal=0.001; lr=0.01;
				TP=[disp_fqre max_epoch err_goal lr];
				[W1,B1,W2,B2,te,tr]=trainbp(W1,B1,'tansig',W2,B2,'purelin',P,T,TP);
				
				TT=simuff(P,W1,B1,'tansig',W2,B2,'purelin')
				toc % 结束计时
							

相关资源