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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? 神經(jīng)網(wǎng)絡(luò)bp.txt

?? 是BP神經(jīng)網(wǎng)絡(luò)的改進源程序
?? TXT
?? 第 1 頁 / 共 2 頁
字號:
 m_isOK=true; 
else 
 m_isOK=false; 

} 

void CBpNet::stop() 
{ 
 m_IsStop=true; 
} 

double CBpNet::randab(double a, double b) 
{ //注意,如果應(yīng)用矩陣庫,頭文件matlib.h對rand()函數(shù)重新定義,只產(chǎn)生(0,1) 

  //之間的隨機數(shù) 
  return((b-a)*rand()+a); 
} 

//將數(shù)據(jù)轉(zhuǎn)化到(0,1)區(qū)間 
void CBpNet::normalize() 
{ 
  
 int i,j; 
  //輸入數(shù)據(jù)范圍 
  mInputNormFactor=scope(mSampleInput); 
  //目標數(shù)據(jù)范圍 
  mTargetNormFactor=scope(mSampleTarget); 

 for(i=1;i<=mSampleInput.rows();i++) 
 for(j=1;j<=mSampleInput.cols();j++) 
 mSampleInput.r(i,j)=(mSampleInput.r(i,j)-mInputNormFactor.r(j,1))/(mInputNo
rmFactor.r(j,2)-mInputNormFactor.r(j,1)); 
  
 for(i=1;i<=mSampleTarget.rows();i++) 
 for(j=1;j<=mSampleTarget.cols();j++) 
 mSampleTarget.r(i,j)=(mSampleTarget.r(i,j)-mTargetNormFactor.r(j,1))/(mTarg
etNormFactor.r(j,2)-mTargetNormFactor.r(j,1)); 
  
} 

//前向計算  
void CBpNet::forward(int iSample) 
{//根據(jù)第iSample個樣本,前向計算 
if(iSample<1||iSample>mSampleInput.rows()){ 
MessageBox(NULL,"無此樣本數(shù)據(jù):索引出界!","無此樣本數(shù)據(jù):索引出界!",MB_OK); 
return; 
} 
int i,j; 
double sum=0.0; 

//輸入層數(shù)據(jù) 
for(i=1;i<=iInput;i++) 
mInput.r(i)=mSampleInput.r(iSample,i); 

//隱層數(shù)據(jù) 
     
for(j=1;j<=iHidden;j++){ 
sum=0.0; 
for(i=1;i<=iInput;i++) 
sum+=mInput.r(i)*mWeighti.r(i,j); 

sum-=mThresholdi.r(j);  
mHidden.r(j)=1.0/(1.0+exp(-sum)); 
} 
     
//輸出數(shù)據(jù) 
for(j=1;j<=iOutput;j++){ 
sum=0.0; 
for(i=1;i<=iHidden;i++) 
sum+=mHidden.r(i)*mWeighto.r(i,j); 
sum-=mThresholdo.r(j);  
mOutput.r(j)=1.0/(1.0+exp(-sum)); 
} 
    
} 

//后向反饋 
void CBpNet::backward(int iSample) 
{ 
if(iSample<1||iSample>mSampleInput.rows()){ 
MessageBox(NULL,"無此樣本數(shù)據(jù):索引出界!","無此樣本數(shù)據(jù):索引出界!",MB_OK); 
return; 
} 
    int i,j; 

    //輸出誤差 
for(i=1;i<=iOutput;i++) 
mOutputDeltas.r(i)=mOutput.r(i)*(1-mOutput.r(i))*(mSampleTarget.r(iSample,i)
-mOutput.r(i)); 

//隱層誤差 
double sum=0.0; 
for(j=1;j<=iHidden;j++){ 
sum=0.0; 
for(i=1;i<=iOutput;i++) 
sum+=mOutputDeltas.r(i)*mWeighto.r(j,i); 
mHiddenDeltas.r(j)=mHidden.r(j)*(1-mHidden.r(j))*sum; 
} 
//更新隱層-輸出權(quán)重 

double dblChange; 
for(j=1;j<=iHidden;j++) 
for(i=1;i<=iOutput;i++){ 
dblChange=mOutputDeltas.r(i)*mHidden.r(j); 
mWeighto.r(j,i)=mWeighto.r(j,i)+dblLearnRate2*dblChange+dblMomentumFactor*m
Changeo.r(j,i); 
mChangeo.r(j,i)=dblChange; 
} 
     
//更新輸入-隱層權(quán)重 
    for(i=1;i<=iInput;i++) 
for(j=1;j<=iHidden;j++){ 
dblChange=mHiddenDeltas.r(j)*mInput.r(i); 
            mWeighti.r(i,j)=mWeighti.r(i,j)+dblLearnRate1*dblChange+dblMomentu
mFactor*mChangei.r(i,j);  
mChangei.r(i,j)=dblChange; 
} 
//修改闕值 
for(j=1;j<=iOutput;j++) 
    mThresholdo.r(j)-=dblLearnRate2*mOutputDeltas.r(j);   
for(i=1;i<=iHidden;i++)  
    mThresholdi.r(i)-=dblLearnRate1*mHiddenDeltas.r(i);  
    //計算誤差 
dblErr=0.0; 
for(i=1;i<=iOutput;i++) 
dblErr+=0.5*(mSampleTarget.r(iSample,i)-mOutput.r(i))*(mSampleTarget.r(iSamp
le,i)-mOutput.r(i)); 

    
} 

//求數(shù)據(jù)列的范圍 
Mm CBpNet::scope(Mm mData) 
{Mm mScope; 
 mScope=zeros(mData.cols(),2); 
 double  min,max; 
 for(int i=1;i<=mData.cols();i++){ 
 min=max=mData.r(1,i);  
 for(int j=1;j<=mData.rows();j++){ 
 if(mData.r(j,i)>=max) 
 max=mData.r(j,i); 
 if(mData.r(j,i)<=min) 
 min=mData.r(j,i); 
 } 
 if(min==max) 
 min=0.0; 
 mScope.r(i,1)=min; 
 mScope.r(i,2)=max; 
 } 
 return(mScope); 

} 

//顯示矩陣數(shù)據(jù),方便調(diào)試 
void CBpNet::display(Mm data) 
{CString strData,strTemp; 
 int i=1,j=1; 
 for(i=1;i<=data.rows();i++){ 
 for(j=1;j<=data.cols();j++){ 
 strTemp.Format("%.3f ",data.r(i,j)); 
 strData+=strTemp; 
 } 
 strData=strData+"\r\n"; 
 } 
 ::MessageBox(NULL,strData,"",MB_OK); 

} 

void CBpNet::Serialize(CArchive &ar) 
{CObject::Serialize(ar); 
 /////////////////////////////////////  
if(ar.IsStoring()){ 
     int i,j; 
 double dblData; 
 CString strTemp="Bp"; 
 ar<<strTemp;//寫入標志 
//紀錄神經(jīng)元個數(shù) 
 ar<<iInput<<iHidden<<iOutput; 
    //紀錄權(quán)值 
 for(i=1;i<=iInput;i++) 
 for(j=1;j<=iHidden;j++){ 
 dblData=mWeighti.r(i,j); 
     ar<<dblData; 
 } 
     for(i=1;i<=iHidden;i++) 
 for(j=1;j<=iOutput;j++){ 
 dblData=mWeighto.r(i,j); 
 ar<<dblData; 
 } 

      //記錄權(quán)值變化 
 for(j=1;j<=iHidden;j++) 
for(i=1;i<=iOutput;i++) 
ar<<mChangeo.r(j,i); 

    //輸入-隱層權(quán)重變化 
     for(i=1;i<=iInput;i++) 
for(j=1;j<=iHidden;j++) 
ar<<mChangei.r(i,j); 

      //紀錄闕值 
 for(i=1;i<=iHidden;i++){ 
              dblData=mThresholdi.r(i); 
  ar<<dblData; 
  } 
     for(i=1;i<=iOutput;i++){ 
      dblData=mThresholdo.r(i); 
  ar<<dblData; 
  } 
     //紀錄輸入輸出的極值 
 for(i=1;i<=iInput;i++){ 
  dblData=mInputNormFactor.r(i,1); 
  ar<<dblData; //極小值 
  dblData=mInputNormFactor.r(i,2); 
  ar<<dblData; //極大值 
         } 
 for(i=1;i<=iOutput;i++) 
 {dblData=mTargetNormFactor.r(i,1); 
  ar<<dblData; //輸出數(shù)據(jù)極小值 
  dblData=mTargetNormFactor.r(i,2); 
  ar<<dblData;  
 } 
 //誤差范圍 
 ar<<dblMse;  
 //學習速率 
 ar<<dblLearnRate1<<dblLearnRate2; 
  
} 
          
 else{ 
 int i,j; 
 CString strTemp=""; 
 double dblTemp; 
 ar>>strTemp;//讀入標志 
//讀入神經(jīng)元個數(shù) 
 ar>>iInput>>iHidden>>iOutput; 
 mChangei=zeros(iInput,iHidden); 
     mChangeo=zeros(iHidden,iOutput); 
 mWeighti=zeros(iInput,iHidden); 
 mWeighto=zeros(iHidden,iOutput); 
    //讀入權(quán)值 
 for(i=1;i<=iInput;i++) 
  for(j=1;j<=iHidden;j++) 
  { ar>>dblTemp; 
    mWeighti.r(i,j)=dblTemp; 
  } 
     
     for(i=1;i<=iHidden;i++) 
 for(j=1;j<=iOutput;j++) 
 { ar>>dblTemp; 
   mWeighto.r(i,j)=dblTemp; 
 } 

 //讀入權(quán)值變化 
 for(j=1;j<=iHidden;j++) 
for(i=1;i<=iOutput;i++) 
ar>>mChangeo.r(j,i); 

     //輸入-隱層權(quán)重 
     for(i=1;i<=iInput;i++) 
for(j=1;j<=iHidden;j++) 
ar>>mChangei.r(i,j); 

     //讀入闕值 
     mThresholdi=zeros(1,iHidden); 
 for(i=1;i<=iHidden;i++) 
 {ar>>dblTemp; 
  mThresholdi.r(i)=dblTemp; 
 } 
 mThresholdo=zeros(1,iOutput); 
     for(i=1;i<=iOutput;i++) 
 {ar>>dblTemp; 
  mThresholdo.r(i)=dblTemp; 
 } 
     //讀入輸入輸出的極值 
     mInputNormFactor=zeros(iInput,2); 
 for(i=1;i<=iInput;i++){ 
  ar>>dblTemp; 
  mInputNormFactor.r(i,1)=dblTemp; //極小值 
  ar>>dblTemp; 
  mInputNormFactor.r(i,2)=dblTemp; //極大值 
         } 
 mTargetNormFactor=zeros(iOutput,2); 
 for(i=1;i<=iOutput;i++) 
 {ar>>dblTemp; 
      mTargetNormFactor.r(i,1)=dblTemp; //輸出數(shù)據(jù)極小值 
  ar>>dblTemp; 
  mTargetNormFactor.r(i,2)=dblTemp;  
 } 
 //讀入誤差范圍 
 ar>>dblMse;  
 //讀入學習速率 
 ar>>dblLearnRate1>>dblLearnRate2; 
  

 //創(chuàng)建計算用的單個樣本矩陣 
     mInput=zeros(1,iInput); 
     mHidden=zeros(1,iHidden); 
     mOutput=zeros(1,iOutput); 
 //誤差矩陣 
 mOutputDeltas=zeros(iOutput); 
 mHiddenDeltas=zeros(iHidden); 
      
 } 

} 

//如果不是新網(wǎng)絡(luò),比如從文件恢復的網(wǎng)絡(luò),調(diào)用此函數(shù)構(gòu)建學習樣本 
void CBpNet::LoadPattern(Mm mIn, Mm mOut) 
{ if(mIn.cols()!=iInput||mOut.cols()!=iOutput){ 
::MessageBox( NULL,"學習樣本格式錯誤!","錯誤",MB_OK); 
return; 
} 
  mSampleInput=zeros(mIn.rows(),mIn.cols()); 
  mSampleTarget=zeros(mOut.rows(),mOut.cols());   
  mSampleInput=mIn; 
  mSampleTarget=mOut; 
     
  m_isOK=false; 
  m_IsStop=false; 
  lEpochs=0; 
  dblMomentumFactor=0.95; 
  dblError=1.0; 
} 

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久久久久久久免费| 国产一区二区三区日韩| 久草中文综合在线| aa级大片欧美| 26uuu欧美日本| 亚洲一区二区三区视频在线| 国产高清无密码一区二区三区| 在线观看日韩电影| 亚洲国产成人私人影院tom | 欧美一区二区三区四区五区| 国产精品高潮呻吟| 久久精品国产一区二区三区免费看 | 日本成人中文字幕在线视频| 91热门视频在线观看| 日本一区二区三区国色天香| 久久精品99国产精品日本| 欧美日高清视频| 亚洲摸摸操操av| 成a人片亚洲日本久久| 精品理论电影在线| 秋霞成人午夜伦在线观看| 在线日韩av片| 一区二区三区在线播| eeuss国产一区二区三区| 欧美国产精品一区二区| 国产精品中文字幕日韩精品| 2023国产精品| 国产在线一区二区| 久久这里只有精品首页| 韩国v欧美v日本v亚洲v| 久久蜜桃av一区精品变态类天堂| 日本美女一区二区三区视频| 欧美一级国产精品| 日本不卡一二三| 日韩视频一区在线观看| 麻豆精品国产91久久久久久| 欧美成人一级视频| 国产乱子轮精品视频| 国产日韩欧美综合一区| 成人免费视频播放| 亚洲视频一区在线| 色婷婷亚洲一区二区三区| 亚洲最大色网站| 91 com成人网| 极品瑜伽女神91| 国产日韩成人精品| 色欧美88888久久久久久影院| 亚洲精品水蜜桃| 欧美日韩精品电影| 久久精品国产99| 亚洲国产精品av| 91久久精品国产91性色tv| 亚洲成人三级小说| 中文字幕av在线一区二区三区| 国产激情91久久精品导航| 国产精品二区一区二区aⅴ污介绍| 不卡大黄网站免费看| 一区二区欧美精品| 日韩一级完整毛片| 国产激情一区二区三区四区 | 久久综合九色综合97_久久久| 国产老女人精品毛片久久| 亚洲欧美一区二区不卡| 91麻豆精品久久久久蜜臀| 日本精品一区二区三区高清| 亚洲综合免费观看高清完整版 | 国产一区二区免费视频| 国产精品少妇自拍| 欧美专区亚洲专区| 国内久久精品视频| 一区二区三区日韩精品| 亚洲精品一区二区三区精华液| 99精品热视频| 国产综合久久久久久鬼色| 中文字幕一区在线| 日韩免费看的电影| 91视频在线看| 精品系列免费在线观看| 一区二区三区四区视频精品免费 | 欧美日韩精品一区二区三区四区 | 经典三级视频一区| 久久久亚洲国产美女国产盗摄 | 国产激情精品久久久第一区二区| 国产精品国产精品国产专区不蜜 | 麻豆精品视频在线观看免费| 亚洲美女电影在线| 国产拍揄自揄精品视频麻豆| 欧美理论片在线| 一本色道久久综合亚洲精品按摩| 精品一区二区三区在线播放视频 | 天天综合天天做天天综合| 国产精品福利电影一区二区三区四区 | 99国产欧美另类久久久精品| 国产精品一区二区你懂的| 奇米精品一区二区三区四区 | 国产精品一区二区三区乱码| 日韩中文字幕av电影| 成人免费视频在线观看| 国产网站一区二区| 精品国产百合女同互慰| 91精品国产色综合久久久蜜香臀| 99re成人精品视频| eeuss鲁片一区二区三区在线看| 韩国av一区二区三区在线观看| 日本va欧美va欧美va精品| 午夜欧美一区二区三区在线播放| 国产精品国产成人国产三级 | 久久久91精品国产一区二区精品 | 国产精品五月天| 国产欧美一区视频| 国产性色一区二区| 国产亚洲综合性久久久影院| 精品国产区一区| 久久久亚洲高清| 久久久91精品国产一区二区精品| ww久久中文字幕| 久久精品夜色噜噜亚洲aⅴ| 久久精品视频在线免费观看| xvideos.蜜桃一区二区| 国产亚洲欧洲997久久综合| 国产网红主播福利一区二区| 国产精品午夜电影| 亚洲欧美激情小说另类| 亚洲天堂网中文字| 亚洲免费观看高清完整 | 亚洲视频一区在线| 亚洲一区在线电影| 日本成人中文字幕在线视频| 久久国产欧美日韩精品| 韩国三级中文字幕hd久久精品| 国产呦萝稀缺另类资源| 国产一区二区三区美女| 成人免费毛片app| 色婷婷综合久久| 欧美丰满嫩嫩电影| 精品国产乱码久久久久久图片| 日本一区二区视频在线| 亚洲黄色尤物视频| 日韩不卡一区二区三区| 国产精品自拍三区| 日本高清不卡一区| 欧美大白屁股肥臀xxxxxx| 国产三级一区二区| 亚洲精品国产视频| 青青青爽久久午夜综合久久午夜 | 欧美在线不卡视频| 日韩三级在线观看| 国产农村妇女毛片精品久久麻豆| 亚洲免费观看高清完整版在线观看熊 | 久久精品免费在线观看| 一区二区三区成人| 久久99精品一区二区三区三区| 国产不卡视频在线观看| 欧美日韩国产高清一区| 一区二区三区中文免费| 久久国产精品无码网站| 99精品热视频| 精品免费视频.| 亚洲人成人一区二区在线观看 | 日韩国产在线观看| 成人免费高清在线观看| 91精品国产欧美日韩| 国产精品久久久久精k8| 男男gaygay亚洲| 91视频xxxx| 久久综合久久综合久久| 亚洲高清视频的网址| 成人免费看视频| 精品国产污网站| 亚洲国产毛片aaaaa无费看| 国产成人精品影院| 91精品国产全国免费观看 | 另类调教123区 | 午夜不卡av在线| 99视频有精品| 久久九九影视网| 奇米777欧美一区二区| 欧美日韩一本到| 亚洲激情校园春色| 成人免费高清在线观看| 久久影院午夜片一区| 日韩在线一区二区三区| 欧美色综合久久| 亚洲激情在线播放| 91亚洲精品久久久蜜桃| 国产精品午夜久久| 福利一区二区在线观看| 精品电影一区二区三区| 日韩有码一区二区三区| 欧美日韩国产中文| 亚洲制服丝袜在线| 色吧成人激情小说| 亚洲少妇屁股交4| 成人黄色小视频在线观看| 国产午夜精品一区二区三区嫩草| 另类调教123区| 精品日韩一区二区| 久久99久久99小草精品免视看| 日韩免费视频一区| 国产在线播放一区|