亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? bptrain.java

?? bp人工神經(jīng)網(wǎng)絡算法的實現(xiàn)
?? JAVA
字號:
package bp;
import structure.*;
/**
 * 用BP算法訓練多層神經(jīng)網(wǎng)絡<p>
 * 改進型,動量方法<p>
 * 由于輸出層激活函數(shù)采用的是sigmoid函數(shù),因此輸出范圍在[0,1]之間<p>
 * 因此被逼近的函數(shù)的值域應該在[0,1]     
 * */
public class BPTrain {
	private Net         net;
	private ReadSample  rs;
	double[] res;
	/**
	 * 誤差反向傳播訓練
	 * @param net 待訓練的多層網(wǎng)絡
	 * */
	public void train(Net net){
		rs=new ReadSample(); 
		int    n      =1;
		double testErr=0;                        //神經(jīng)網(wǎng)絡的誤差
		double err    =Parameter.getInstance().minErr;
		this.net      =net;
		//double[] res;
		rs.read();
		res=rs.getResult();
		do{
			testErr=testNet();
			if(n%10000==0)
			    System.out.println(n+"testErr:"+testErr);
			if (testErr<err||n>100000) {
				Layer outLayer=net.layers[net.layers.length-1];
				for(int i=0;i<rs.getRow();i++){    
					net.compute(rs.getInput()[i]);
					//System.out.println("input:"+rs.getInput()[i][0]+"  output:"+net.getOutput()[0]+
					//		"  err:"+(net.getOutput()[0]-res[i])+"  res:"+res[i]);
				}
				break;
			}
			n++;
			trainNet();
		}while(true);
	}
	/**
	 * 測試網(wǎng)絡
	 * @return 返回所有樣本測試的均方差
	 * */
	private double testNet(){
		double testErr=0,e;
		double    n      =rs.getRow();           //樣本數(shù)目
		for(int i=0;i<n;i++){    
			net.compute(rs.getInput()[i]);
			testErr+=Math.abs(computeOutErr(res[i]));
		}
		e=1/n;
		return 0.5*e*testErr;
	}
	/**
	 * 訓練網(wǎng)絡
	 * */
	private void trainNet(){
		for(int i=0;i<rs.getRow();i++){    
			net.compute(rs.getInput()[i]);
			backPropagateNet(res[i]);
			adjust(rs.getInput()[i]);
		}
	}
	/**
	 * 計算每個層的誤差
	 * */
	private void backPropagateNet(double res){
		Parameter para=Parameter.getInstance();
		int       n   =para.nodeNum.length-1;    //取得輸出層的位置
		for(int i=n-1;i>=0;i--){
			if(i==n-1)                           //如果是計算輸出層的誤差
				backPropagateLayer(net.layers[i],null,res);
			else
				backPropagateLayer(net.layers[i],net.layers[i+1],0);
		}
	}
	/**
	 * 計算某一層的誤差
	 * @param layer     層
	 * @param nextLayer 下一層(輸出層是隱層的下一層)
	 * */
	private void backPropagateLayer(Layer layer,Layer nextLayer,double res){
		double out;
		double err;
		double weight;                           //該層的一個神經(jīng)元到下一層某個神經(jīng)元的連接的權重
		if (nextLayer==null){                    //計算輸出層的誤差
			for(int i=0;i<layer.neurons.length;i++){
				out=layer.neurons[i].output;
				layer.neurons[i].err=(out-res)*out*(1-out);
			}
			return;
		}
		for(int i=0;i<layer.num;i++){            //計算其他層的誤差
			err=0;
			for(int j=0;j<nextLayer.num;j++){
				weight=nextLayer.neurons[j].weight[i];
				err+=nextLayer.neurons[j].err*weight;
			}
			out=layer.neurons[i].output;
			layer.neurons[i].err=out*(1-out)*err;
		}
	}
	/**
	 * 計算輸入一個樣本后的輸出誤差
	 * <p>可以是多輸出
	 * */
	private double computeOutErr(double res){
		double   err     =0;
		int      n       =Parameter.getInstance()
		                 .nodeNum.length-1;      //輸出層的位置
		Layer    outLayer=net.layers[n-1];
		for(int i=0;i<outLayer.neurons.length;i++){
			//err+=Math.abs(net.getOutput()[0]-res);
			//System.out.println(i+" out:"+net.getOutput()[0]+" res:"+res);
			err+=0.5*sqr(outLayer.neurons[i].output-res);
		}
		return err;
	}
	/**
	 * 調(diào)整權值和偏置值
	 * @param in   當前的輸入
	 * */
	private void adjust(double[] in){
	    Parameter para =Parameter.getInstance();
		double    eta  =para.eta;
		double    alpha=para.alpha;
		double    dw;
		Layer     layer,lastLayer;
		Neuron    neuron;
		double[]  lastLayerOut;                  //上一層的輸出
		for(int i=0;i<net.layers.length;i++){
			layer=net.layers[i];
			if(i==0){                            //當上一層是輸入層
			    lastLayerOut=in;
			}else{
				lastLayer=net.layers[i-1];	
				lastLayerOut=new double[lastLayer.num];
				for(int j=0;j<lastLayer.num;j++){
					lastLayerOut[j]=lastLayer.neurons[j].output;
				}
			}
			for(int j=0;j<layer.neurons.length;j++){
				neuron=layer.neurons[j];
				for(int k=0;k<neuron.dweight.length;k++){
					dw=eta*neuron.err*lastLayerOut[k]+alpha*neuron.dweight[k];
					//System.out.print("調(diào)整前 w"+k+""+j+"="+neuron.weight[k]);
					neuron.weight[k]+=-dw;
					neuron.dweight[k]=dw;
					neuron.bias-=eta*neuron.err;
					//System.out.println("  調(diào)整后 w"+k+""+j+"="+neuron.weight[k]);
				}
			}
		}
	}
	private double sqr(double n){
		return n*n;
	}
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久久久久久免费视频了| 亚洲综合自拍偷拍| 亚洲一区二区三区四区五区中文| 亚洲日本va午夜在线影院| 日韩精品久久久久久| 国产91对白在线观看九色| 欧美巨大另类极品videosbest | 亚洲第一综合色| 国产成人av在线影院| 538在线一区二区精品国产| 国产欧美日韩三区| 日韩电影一区二区三区| 成人国产一区二区三区精品| 日韩午夜中文字幕| 亚洲一区二区视频在线观看| 成人激情免费视频| 精品国内二区三区| 性做久久久久久久免费看| 成人午夜大片免费观看| 日韩久久免费av| 亚洲成av人片| 色综合视频一区二区三区高清| 久久久影院官网| 日本欧美一区二区在线观看| 日本久久精品电影| 中文字幕亚洲精品在线观看| 国产一区二区精品久久91| 8x福利精品第一导航| 一个色在线综合| 91在线视频观看| 中文乱码免费一区二区| 国产精品一区二区黑丝| 欧美精品一区二区在线播放| 蜜桃视频在线观看一区| 欧美另类z0zxhd电影| 亚洲成人av中文| 欧美三级三级三级爽爽爽| 亚洲精品高清视频在线观看| 色综合久久久久综合| 亚洲人成人一区二区在线观看 | 亚洲黄色尤物视频| av不卡在线观看| 国产精品久久久久久亚洲毛片 | 亚洲二区视频在线| 欧美日韩一区在线观看| 午夜视频在线观看一区二区| 欧美日韩色综合| 成人午夜激情影院| 亚洲视频在线一区二区| 一本一道久久a久久精品| 亚洲情趣在线观看| 欧美日韩在线播放三区四区| 日韩精品色哟哟| 日韩精品中午字幕| 国产福利一区二区三区视频| 国产精品区一区二区三区| 不卡电影一区二区三区| 亚洲欧美日韩国产另类专区| 欧美午夜不卡在线观看免费| 日本不卡123| 久久久久久久久伊人| jlzzjlzz亚洲女人18| 亚洲国产美国国产综合一区二区| 777午夜精品视频在线播放| 久久av中文字幕片| 亚洲国产成人一区二区三区| 日本韩国一区二区三区| 蜜桃视频免费观看一区| 国产精品无码永久免费888| 在线观看精品一区| 青青草视频一区| 国产精品久久久久7777按摩| 欧美三级乱人伦电影| 国产一区二区女| 亚洲国产视频直播| 久久久久青草大香线综合精品| 不卡的电影网站| 日本三级韩国三级欧美三级| 亚洲国产精品v| 欧美剧情片在线观看| 国产成人av电影在线观看| 一区二区三区91| 久久久99精品免费观看不卡| 91国偷自产一区二区三区观看| 久久99精品国产麻豆不卡| 亚洲欧洲99久久| 欧美mv日韩mv国产网站| 91美女视频网站| 精品在线免费观看| 亚洲一区二区三区四区在线 | 国产99精品国产| 亚洲午夜久久久| 国产精品久久久99| 日韩免费高清av| 在线免费视频一区二区| 高清在线不卡av| 精品一区二区三区免费| 一区二区成人在线视频| 欧美激情在线观看视频免费| 日韩免费观看2025年上映的电影| 色妹子一区二区| 国产成人高清在线| 极品尤物av久久免费看| 日韩av不卡在线观看| 亚洲午夜电影网| 亚洲品质自拍视频| 国产精品三级av| 中文字幕免费一区| 久久精品日韩一区二区三区| 欧美电视剧免费观看| 欧美日本国产视频| 欧美亚一区二区| 欧美在线制服丝袜| 色狠狠av一区二区三区| 99re成人精品视频| 成人激情免费视频| 成人禁用看黄a在线| 岛国一区二区在线观看| 国产成人精品免费在线| 国产成人av在线影院| 国产福利一区二区三区视频在线| 国产精品18久久久久久久久| 国产一区二区调教| 国产精品中文欧美| 国产很黄免费观看久久| 国产成+人+日韩+欧美+亚洲| 成人免费视频一区| 波多野结衣精品在线| 91在线观看美女| 色综合视频在线观看| 色8久久人人97超碰香蕉987| 欧洲一区二区av| 欧美精品99久久久**| 在线播放欧美女士性生活| 欧美一级二级在线观看| 精品国产乱码久久久久久免费| 久久久久久免费网| 国产精品免费人成网站| 亚洲视频一二三区| 亚洲 欧美综合在线网络| 奇米色777欧美一区二区| 久久97超碰色| bt欧美亚洲午夜电影天堂| 欧洲一区二区三区在线| 欧美精品777| 久久人人97超碰com| 国产精品国产三级国产a | 久久色中文字幕| 国产欧美一区二区在线| 亚洲精品免费在线观看| 日韩国产精品91| 国产精品白丝av| 91国模大尺度私拍在线视频| 日韩午夜av电影| 国产精品美女久久久久久久网站| 亚洲成人自拍网| 国产精品中文字幕欧美| 欧美色视频在线| 精品福利视频一区二区三区| 亚洲日本成人在线观看| 蜜臀久久久久久久| jlzzjlzz国产精品久久| 欧美一卡二卡在线| 18欧美亚洲精品| 美女脱光内衣内裤视频久久影院| 99精品视频一区| 日韩精品一区二区三区swag| 亚洲美女电影在线| 久久国产麻豆精品| 91国偷自产一区二区三区成为亚洲经典 | 亚洲欧美综合色| 麻豆精品一二三| 色噜噜狠狠成人中文综合 | 日本高清无吗v一区| 精品福利av导航| 亚洲一区二区三区美女| 国产激情视频一区二区三区欧美| 欧美影院一区二区| 国产欧美精品国产国产专区| 日本伊人午夜精品| 日本丶国产丶欧美色综合| 国产亚洲精品超碰| 日本中文在线一区| 在线欧美日韩国产| 亚洲欧美在线视频观看| 国产美女在线精品| 日韩你懂的在线观看| 亚洲妇熟xx妇色黄| 99久久er热在这里只有精品15| 欧美不卡激情三级在线观看| 午夜国产不卡在线观看视频| 99久久精品99国产精品| 国产精品色哟哟网站| 国产一区二区三区黄视频| 日韩欧美一区二区三区在线| 亚洲6080在线| 欧美乱熟臀69xxxxxx| 亚洲va韩国va欧美va精品| 欧美亚洲愉拍一区二区| 亚洲精品乱码久久久久久久久 |