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

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

?? mybp.cpp

?? 內含基本BP算法C語言程序
?? CPP
字號:
#include "iostream.h"
#include "iomanip.h"
#include "stdlib.h"
#include "math.h"
#include "stdio.h"
#include "time.h"
#include "fstream.h"
#define N 2 //學習樣本個數
#define IN 3 //輸入層神經元數目
#define HN 3 //隱層神經元數目
#define ON 2 //輸出層神經元數目
double P[IN]; //單個樣本輸入數據
double T[ON]; //單個樣本教師數據
double W[HN][IN]; //輸入層至隱層權值
double V[ON][HN]; //隱層至輸出層權值
double X[HN]; //隱層的輸入
double Y[ON]; //輸出層的輸入
double H[HN]; //隱層的輸出
double O[ON]; //輸出層的輸出
double YU_HN[HN]; //隱層的閾值
double YU_ON[ON]; //輸出層的閾值
double err_m[N]; //第m個樣本的總誤差
double a; //輸出層至隱層的學習效率
double b; //隱層至輸入層學習效率

//定義一個放學習樣本的結構
struct {
double input[IN]; //輸入在上面定義是一個	
double teach[ON]; //輸出在上面定義也是一個
}Study_Data[N];//學習樣本
 
///////////////////////////
//初始化權、閾值子程序/////
///////////////////////////
initial()
{
//隱層權、閾值初始化//
	srand( (unsigned)time( NULL ) );

	for(int i=0;i<HN;i++)
	{
		for(int j=0;j<IN;j++)
			W[i][j]= (double)((rand()/32767.0)*2-1); //初始化輸入層到隱層的權值,隨機模擬0 和 1 -1	
	}
	for(int ii=0;ii<ON;ii++)
	{
		for(int jj=0;jj<HN;jj++)
			V[ii][jj]= (double)((rand()/32767.0)*2-1); //初始化隱層到輸出層的權值,隨機模擬0 和 1 -1
	}
	for(int k=0;k<HN;k++)
	{
		YU_HN[k] = (double)((rand()/32767.0)*2-1);  //隱層閾值初始化 ,-0.01 ~ 0.01 之間
	}
	for(int kk=0;kk<ON;kk++)
	{
		YU_ON[kk] = (double)((rand()/32767.0)*2-1); //輸出層閾值初始化 ,-0.01 ~ 0.01 之間
	}
  return 1;
}//子程序initial()結束


////////////////////////////////
////第m個學習樣本輸入子程序///
///////////////////////////////
input_P(int m)
{
for (int i=0;i<IN;i++)
 P[i]=Study_Data[m].input[i];
//獲得第m個樣本的數據
return 1;
}//子程序input_P(m)結束

/////////////////////////////
////第m個樣本教師信號子程序//
/////////////////////////////
input_T(int m)
{
for (int k=0;k<ON;k++)
 T[k]=Study_Data[m].teach[k];
return 1;
}//子程序input_T(m)結束


/////////////////////////////////
//隱層各單元輸入、輸出值子程序///
/////////////////////////////////
H_I_O(){
double sigma;
int i,j;
for (j=0;j<HN;j++){
sigma=0.0;
	for (i=0;i<IN;i++)
		sigma+=W[j][i]*P[i];//求隱層內積
		
X[j]=sigma - YU_HN[i];//求隱層凈輸入,為什么減隱層的閥值
H[j]=1.0/(1.0+exp(-X[j]));//求隱層輸出 siglon算法
}
return 1;
}//子程序H_I_O()結束


///////////////////////////////////
//輸出層各單元輸入、輸出值子程序///
///////////////////////////////////
O_I_O()
{
double sigma;
for (int k=0;k<ON;k++){
 sigma=0.0;
 for (int j=0;j<HN;j++){
 sigma+=V[k][j]*H[k];//求輸出層內積
}
Y[k]=sigma-YU_ON[k]; //求輸出層凈輸入
O[k]=1.0/(1.0+exp(-Y[k]));//求輸出層輸出
}
return 1;
}//子程序O_I_O()結束


////////////////////////////////////
//輸出層至隱層的一般化誤差子程序////
////////////////////////////////////
double d_err[ON];
Err_O_H(int m)
{
double abs_err[ON];//每個樣本的絕對誤差都是從0開始的
double sqr_err=0;//每個樣本的平方誤差計算都是從0開始的
for (int k=0;k<ON;k++){
  abs_err[k]=T[k]-O[k];
//求第m個樣本下的第k個神經元的絕對誤差
sqr_err+=(abs_err[k])*(abs_err[k]);//求第m個樣本下輸出層的平方誤差
d_err[k]=abs_err[k]*O[k]*(1.0-O[k]);//d_err[k]輸出層各神經元的一般化誤差
}
err_m[m]=sqr_err/2;//第m個樣本下輸出層的平方誤差/2=第m個樣本的均方誤差
return 1;
}//子程序Err_O_H(m)結束


////////////////////////////////////
//隱層至輸入層的一般化誤差子程序////
////////////////////////////////////
double e_err[HN];
Err_H_I(){
double sigma;
for (int j=0;j<HN;j++) {
  sigma=0.0;
  for (int k=0;k<ON;k++) {
      sigma=d_err[k]*V[k][j];
}
e_err[j]=sigma*H[j]*(1-H[j]);//隱層各神經元的一般化誤差
}
return 1;
}//子程序Err_H_I()結束


////////////////////////////////////////////////////////
//輸出層至隱層的權值調整、輸出層閾值調整計算子程序//////
////////////////////////////////////////////////////////
Delta_O_H(int m)
{
for (int k=0;k<ON;k++){
		for (int j=0;j<HN;j++)
		{
			V[k][j]+=a*d_err[k]*H[j];//輸出層至隱層的權值調整
		}
YU_ON[k]+=a*d_err[k];//輸出層至隱層的閾值調整
}
return 1;
}//子程序Delta_O_H()結束


/////////////////////////////////////////////////////
//隱層至輸入層的權值調整、隱層閾值調整計算子程序/////
/////////////////////////////////////////////////////
Delta_H_I(int m)
{
for (int j=0;j<HN;j++){
	for (int i=0;i<IN;i++) 
	{
		W[j][i]+=b*e_err[j]*P[i];//隱層至輸入層的權值調整
	}
YU_HN[j]+=b*e_err[j];
}
return 1;
}//子程序Delta_H_I()結束



/////////////////////////////////
//N個樣本的全局誤差計算子程序////
/////////////////////////////////
double Err_Sum()
{
double total_err=0;
for (int m=0;m<N;m++) {
  total_err+=err_m[m];//每個樣本的均方誤差加起來就成了全局誤差
}
return total_err;
}//子程序Err_sum()結束



GetTrainingData()
{
	ifstream GetTrainingData ( "訓練樣本.txt", ios::in );

	for(int m=0;m<N;m++)
	{
		for(int i=0;i<IN;i++)
		{
			GetTrainingData>>Study_Data[m].input[i];  //取得輸入數據
		}
		for(int j=0;j<ON;j++)
		{
			GetTrainingData>>Study_Data[m].teach[j];  //取得輸出數據
		}
	}

	GetTrainingData.close();
	return 1;
}


void savequan()
{
	ofstream outQuanFile( "權值.txt", ios::out );
	ofstream outYuFile( "閾值.txt", ios::out );
	outQuanFile<<"A\n";
	for(int i=0;i<HN;i++)
	{
		for(int j=0;j<IN;j++)
		{
			outQuanFile<<W[i][j]<<"   ";
		}
		outQuanFile<<"\n";
	}
	outQuanFile<<"B\n";
	for(int ii=0;ii<ON;ii++)
	{
		for(int jj=0;jj<HN;jj++)
		{
			outQuanFile<<V[ii][jj]<<"   ";
		}
		outQuanFile<<"\n";
	}
	outYuFile<<"輸出層的閾值為:\n";
	for(int k=0;k<ON;k++)
	{
		outYuFile<<YU_ON[k]<<"  ";  //輸出層閾值寫入文本
	}
	outYuFile<<"\n隱層的閾值為:\n";
	for(int kk=0;kk<HN;kk++)
	{
		outYuFile<<YU_HN[kk]<<"  ";  //隱層閾值寫入文本
	}
	outQuanFile.close();
}
/**********************/
/**程序入口,即主程序**/
/**********************/
void main()
{

double sum_err;
int study;//訓練次數

a = 0.6;
b = 0.6;

study=0; //學習次數
double Pre_error ; //預定誤差
Pre_error = 0.0001;

int Pre_times;
Pre_times = 200;
/*
cout<<"請輸入學習樣本數據\n";

	for (int m=0;m<N;m++){
		cout<<"請輸入第"<<m+1<<"組學習樣本"<<endl; 
		for (int i=0;i<IN;i++)
		   cin>>Study_Data[m].input[i];
		}


	{
	for (int m=0;m<N;m++){
		cout<<"請輸入第"<<m+1<<"組教師樣本"<<endl; 
		for (int k=0;k<ON;k++)
			cin>>Study_Data[m].teach[k];
	}
	}
*/
GetTrainingData();
initial(); //隱層、輸出層權、閾值初始化 (1) 
do
{
++study; 
for (int m=0;m<N;m++) 
{
input_P(m); //輸入第m個學習樣本 (2)
input_T(m);//輸入第m個樣本的教師信號 (3)
H_I_O(); //第m個學習樣本隱層各單元輸入、輸出值 (4)
O_I_O(); //第m個學習樣本輸出層各單元輸入、輸出值 (5)
Err_O_H(m); //第m個學習樣本輸出層至隱層一般化誤差 (6) 
Err_H_I(); //第m個學習樣本隱層至輸入層一般化誤差 (7)
Delta_O_H(m); //第m個學習樣本輸出層至隱層權閾值調整、修改 (8)
Delta_H_I(m); //第m個學習樣本隱層至輸入層權閾值調整、修改 (9)
} //全部樣本訓練完畢
sum_err=Err_Sum(); //全部樣本全局誤差計算 (10)
cout<<"第"<<study<<"次學習的均方誤差為"<<sum_err<<endl;
/*if(20000<study)
{
	a*=1.05;
	b*=1.05;
}
*/
}while (sum_err > Pre_error); 
cout<<"網絡已經學習了"<<study<<"次,學習的均方誤差為"<<sum_err<<endl;
savequan();
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美精品xxxxbbbb| 亚洲精品国产精华液| 亚洲精品日韩综合观看成人91| 亚洲制服丝袜一区| 国内成人免费视频| 成人美女在线观看| 欧美精品一二三区| 中文字幕综合网| 国产精品正在播放| 欧美一级搡bbbb搡bbbb| 亚洲制服欧美中文字幕中文字幕| 国产主播一区二区三区| 欧美精品在线观看一区二区| 中文字幕一区二区三区四区不卡 | 久久青草欧美一区二区三区| 亚洲成人免费在线观看| 97精品超碰一区二区三区| 国产亚洲1区2区3区| 精品一区二区三区免费观看| 3atv在线一区二区三区| 亚洲精品午夜久久久| 99热这里都是精品| 国产婷婷色一区二区三区 | 精品美女一区二区三区| 亚洲h动漫在线| 欧美亚洲丝袜传媒另类| 亚洲电影在线免费观看| 欧美日韩精品二区第二页| 一区二区欧美在线观看| 色婷婷精品久久二区二区蜜臂av| 国产精品久久久久久久岛一牛影视 | 4438成人网| 日本最新不卡在线| 91精品国产91综合久久蜜臀| 日韩福利电影在线| 日韩午夜电影av| 激情综合一区二区三区| 欧美成人video| 精品一区二区三区久久久| 精品乱人伦一区二区三区| 麻豆视频观看网址久久| 日韩欧美一区在线观看| 激情综合色播五月| 久久久九九九九| 99久久精品久久久久久清纯| 亚洲精品免费看| 欧美日韩黄色一区二区| 日本麻豆一区二区三区视频| 欧美一区二区精品在线| 国产黄色91视频| 亚洲欧美激情在线| 在线综合亚洲欧美在线视频| 国产在线精品免费av| 亚洲欧洲精品成人久久奇米网| 在线一区二区观看| 蜜臀久久久99精品久久久久久| 久久久噜噜噜久噜久久综合| 91浏览器打开| 日韩精品五月天| 国产丝袜欧美中文另类| 欧美性xxxxxxxx| 国产一区二区0| 18成人在线观看| 日韩欧美一级二级三级久久久| 国产成人综合网站| 亚洲高清在线视频| 久久久99精品免费观看不卡| 欧美午夜不卡在线观看免费| 国内一区二区在线| 一区二区三区四区在线免费观看| 欧美一级片在线观看| 91丝袜美女网| 国产一区二区三区四区五区入口| 一区二区三区免费网站| 久久久三级国产网站| 欧美视频在线一区二区三区| 国产精品小仙女| 视频精品一区二区| 亚洲欧美在线高清| 欧美精品一区二区在线观看| 欧美三区在线视频| 99精品国产99久久久久久白柏| 狠狠色丁香久久婷婷综合丁香| 亚洲精品视频免费观看| 久久精品亚洲精品国产欧美kt∨ | 久久久夜色精品亚洲| 欧美日韩中文国产| 色综合视频一区二区三区高清| 国产永久精品大片wwwapp| 天天av天天翘天天综合网色鬼国产| 中文字幕av一区二区三区| 欧美电影免费观看高清完整版| 色婷婷激情综合| 菠萝蜜视频在线观看一区| 久久99九九99精品| 日本美女一区二区| 五月激情综合网| 亚洲一区二区三区视频在线 | 色乱码一区二区三区88| 成人在线视频首页| 国产麻豆日韩欧美久久| 国产一区二区视频在线播放| 蜜臀av一区二区在线观看| 亚洲第一av色| 亚洲一区在线电影| 亚洲国产欧美在线| 一区二区三区在线视频观看| 亚洲视频一区二区在线观看| 综合久久久久久| 亚洲人一二三区| 亚洲欧美日本韩国| 亚洲老司机在线| 亚洲一区二区三区中文字幕| 亚洲女同女同女同女同女同69| 日韩一区在线看| 亚洲免费大片在线观看| 亚洲男人的天堂一区二区 | 国产精品嫩草影院av蜜臀| 久久久精品一品道一区| 欧美极品少妇xxxxⅹ高跟鞋| 国产精品久久久久久亚洲毛片| 国产精品久久久久三级| 亚洲精品大片www| 亚洲午夜久久久久久久久电影网| 亚洲一区二区欧美| 日本成人超碰在线观看| 久久精品国产免费看久久精品| 国产精品一区二区91| 91丨porny丨户外露出| 色悠悠久久综合| 3d动漫精品啪啪1区2区免费| xfplay精品久久| 国产精品久久精品日日| 亚洲一区二区黄色| 麻豆久久一区二区| 成人爽a毛片一区二区免费| 色婷婷综合久久久久中文| 在线播放一区二区三区| 久久男人中文字幕资源站| 亚洲欧美日本在线| 美腿丝袜亚洲综合| a级高清视频欧美日韩| 欧美日韩精品一区视频| 国产午夜精品一区二区三区视频| 中文一区在线播放| 午夜一区二区三区视频| 国产999精品久久久久久绿帽| 97se亚洲国产综合自在线| 日韩一区二区三区在线| 亚洲欧洲另类国产综合| 青青国产91久久久久久 | 亚洲美女区一区| 美女视频免费一区| aaa国产一区| 日韩欧美自拍偷拍| 亚洲婷婷综合久久一本伊一区| 天天亚洲美女在线视频| av动漫一区二区| 日韩午夜三级在线| 夜夜精品浪潮av一区二区三区| 久久国产福利国产秒拍| 91高清视频免费看| 久久久国产综合精品女国产盗摄| 亚洲va国产天堂va久久en| 成人黄色综合网站| 久久综合成人精品亚洲另类欧美| 亚洲综合色区另类av| 国产成人在线免费观看| 91麻豆精品国产91久久久使用方法| 国产欧美日韩另类视频免费观看 | 成人污视频在线观看| 日韩午夜激情电影| 亚洲二区在线观看| 色香蕉成人二区免费| 日本一区二区三区电影| 麻豆成人av在线| 欧美视频一区二区在线观看| 日韩伦理免费电影| 老司机精品视频在线| 欧美伦理视频网站| 亚洲综合999| 91视频精品在这里| 中文字幕中文字幕一区| 国产成人av影院| 2019国产精品| 美国十次综合导航| 日韩欧美激情在线| 日韩av中文字幕一区二区| 欧美日韩激情在线| 午夜不卡av免费| 欧美色倩网站大全免费| 亚洲自拍偷拍av| 在线观看91视频| 亚洲国产精品一区二区尤物区| 色呦呦日韩精品| 一区二区高清在线| 欧洲精品在线观看| 亚洲一区二区三区免费视频| 欧美日韩国产大片| 天堂一区二区在线|