【原创】问题解决--怎么让BP安静的训练
			 
			 
			
		
		
		
			
			在BP训练时,训练窗口在每次训练的时候总不断的弹出,当程序循环建模时搞的计算机无法使用,现在我找到了问题的根源。 
 
在BP程序调用 train--> feval --> trainscg --> plotperf ,这样一个调用链,解决的地方也就在最后一个函数。我的存放地址是:toolbox\nnet\nnet\nnplot\plotperf.m 
里面有一句代码,如下 
 
% Special case 2: Delete plot if zero epochs 
if (epoch == 0) | isnan(tr.perf(1)) 
  fig = find_existing_figure; 
  if (fig) delete(fig); 
  end 
  if (nargout) stop = 0; end 
  return 
end 
 
经分析试验得知,其中  if (fig) delete(fig);  的意思是当一次模型完毕,或者当一次模型要开始建立,要先删除原建模时的训练图(当然后期好要再建立一个),这就形成了训练窗口不断更新不断出现的情况,所以,只要把delete(fig) 注释掉就ok了! 
 
经验证,bp训练起来变乖, 不会搞得你总的最下化窗口了。
		 
		
		
		
		
		
		
		
	 |