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

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

?? bpn.c

?? C++神經網絡
?? C
?? 第 1 頁 / 共 2 頁
字號:
/******************************************************************************

                      ====================================================
        Network:      Backpropagation Network with Bias Terms and Momentum
                      ====================================================

        Application:  Time-Series Forecasting
                      Prediction of the Annual Number of Sunspots

        Author:       Karsten Kutza
        Date:         17.4.96

        Reference:    D.E. Rumelhart, G.E. Hinton, R.J. Williams
                      Learning Internal Representations by Error Propagation
                      in:
                      D.E. Rumelhart, J.L. McClelland (Eds.)
                      Parallel Distributed Processing, Volume 1
                      MIT Press, Cambridge, MA, pp. 318-362, 1986

 ******************************************************************************/




/******************************************************************************
                            D E C L A R A T I O N S
 ******************************************************************************/


#include <stdlib.h>
#include <stdio.h>
#include <math.h>


typedef int           BOOL;
typedef int           INT;
typedef double        REAL;

#define FALSE         0
#define TRUE          1
#define NOT           !
#define AND           &&
#define OR            ||

#define MIN_REAL      -HUGE_VAL
#define MAX_REAL      +HUGE_VAL
#define MIN(x,y)      ((x)<(y) ? (x) : (y))
#define MAX(x,y)      ((x)>(y) ? (x) : (y))

#define LO            0.1
#define HI            0.9
#define BIAS          1

#define sqr(x)        ((x)*(x))


typedef struct {                     /* A LAYER OF A NET:                     */
        INT           Units;         /* - number of units in this layer       */
        REAL*         Output;        /* - output of ith unit                  */
        REAL*         Error;         /* - error term of ith unit              */
        REAL**        Weight;        /* - connection weights to ith unit      */
        REAL**        WeightSave;    /* - saved weights for stopped training  */
        REAL**        dWeight;       /* - last weight deltas for momentum     */
} LAYER;// struct of NNlayer

typedef struct {                     /* A NET:                                */
        LAYER**       Layer;         /* - layers of this net                  */
        LAYER*        InputLayer;    /* - input layer                         */
        LAYER*        OutputLayer;   /* - output layer                        */
        REAL          Alpha;         /* - momentum factor                     */
        REAL          Eta;           /* - learning rate                       */
        REAL          Gain;          /* - gain of sigmoid function            */
        REAL          Error;         /* - total net error                     */
} NET;//NN


/******************************************************************************
        R A N D O M S   D R A W N   F R O M   D I S T R I B U T I O N S
 ******************************************************************************/

//set seed of ramdom number
void InitializeRandoms()
{
  srand(4711);
}

//produce a ramdom integer number between LOW and HIGH
INT RandomEqualINT(INT Low, INT High)
{
  return rand() % (High-Low+1) + Low;
}      

//produce a rammom real number between LOW and HIGH
REAL RandomEqualREAL(REAL Low, REAL High)
{
  return ((REAL) rand() / RAND_MAX) * (High-Low) + Low;
}      


/******************************************************************************
               A P P L I C A T I O N - S P E C I F I C   C O D E
 ******************************************************************************/


#define NUM_LAYERS    3 //number of layer
#define N             103//number of nerve cell in input layer
#define M             14//number of nerve cell in output layer
INT                   Units[NUM_LAYERS] = {N, 150, M};
//use one demension array records every layer's number of nerve

#define FIRST_YEAR    1700
#define NUM_YEARS     280

#define TRAIN_LWB     (N)
#define TRAIN_UPB     (179)
#define TRAIN_YEARS   (TRAIN_UPB - TRAIN_LWB + 1)
#define TEST_LWB      (180)
#define TEST_UPB      (259)
#define TEST_YEARS    (TEST_UPB - TEST_LWB + 1)
#define EVAL_LWB      (260)
#define EVAL_UPB      (NUM_YEARS - 1)
#define EVAL_YEARS    (EVAL_UPB - EVAL_LWB + 1)

REAL                  Sunspots_[NUM_YEARS];
REAL                  Sunspots [NUM_YEARS] = {

                        0.0262,  0.0575,  0.0837,  0.1203,  0.1883,  0.3033,  
                        0.1517,  0.1046,  0.0523,  0.0418,  0.0157,  0.0000,  
                        0.0000,  0.0105,  0.0575,  0.1412,  0.2458,  0.3295,  
                        0.3138,  0.2040,  0.1464,  0.1360,  0.1151,  0.0575,  
                        0.1098,  0.2092,  0.4079,  0.6381,  0.5387,  0.3818,  
                        0.2458,  0.1831,  0.0575,  0.0262,  0.0837,  0.1778,  
                        0.3661,  0.4236,  0.5805,  0.5282,  0.3818,  0.2092,  
                        0.1046,  0.0837,  0.0262,  0.0575,  0.1151,  0.2092,  
                        0.3138,  0.4231,  0.4362,  0.2495,  0.2500,  0.1606,  
                        0.0638,  0.0502,  0.0534,  0.1700,  0.2489,  0.2824,  
                        0.3290,  0.4493,  0.3201,  0.2359,  0.1904,  0.1093,  
                        0.0596,  0.1977,  0.3651,  0.5549,  0.5272,  0.4268,  
                        0.3478,  0.1820,  0.1600,  0.0366,  0.1036,  0.4838,  
                        0.8075,  0.6585,  0.4435,  0.3562,  0.2014,  0.1192,  
                        0.0534,  0.1260,  0.4336,  0.6904,  0.6846,  0.6177,  
                        0.4702,  0.3483,  0.3138,  0.2453,  0.2144,  0.1114,  
                        0.0837,  0.0335,  0.0214,  0.0356,  0.0758,  0.1778,  
                        0.2354,  0.2254,  0.2484,  0.2207,  0.1470,  0.0528,  
                        0.0424,  0.0131,  0.0000,  0.0073,  0.0262,  0.0638,  
                        0.0727,  0.1851,  0.2395,  0.2150,  0.1574,  0.1250,  
                        0.0816,  0.0345,  0.0209,  0.0094,  0.0445,  0.0868,  
                        0.1898,  0.2594,  0.3358,  0.3504,  0.3708,  0.2500,  
                        0.1438,  0.0445,  0.0690,  0.2976,  0.6354,  0.7233,  
                        0.5397,  0.4482,  0.3379,  0.1919,  0.1266,  0.0560,  
                        0.0785,  0.2097,  0.3216,  0.5152,  0.6522,  0.5036,  
                        0.3483,  0.3373,  0.2829,  0.2040,  0.1077,  0.0350,  
                        0.0225,  0.1187,  0.2866,  0.4906,  0.5010,  0.4038,  
                        0.3091,  0.2301,  0.2458,  0.1595,  0.0853,  0.0382,  
                        0.1966,  0.3870,  0.7270,  0.5816,  0.5314,  0.3462,  
                        0.2338,  0.0889,  0.0591,  0.0649,  0.0178,  0.0314,  
                        0.1689,  0.2840,  0.3122,  0.3332,  0.3321,  0.2730,  
                        0.1328,  0.0685,  0.0356,  0.0330,  0.0371,  0.1862,  
                        0.3818,  0.4451,  0.4079,  0.3347,  0.2186,  0.1370,  
                        0.1396,  0.0633,  0.0497,  0.0141,  0.0262,  0.1276,  
                        0.2197,  0.3321,  0.2814,  0.3243,  0.2537,  0.2296,  
                        0.0973,  0.0298,  0.0188,  0.0073,  0.0502,  0.2479,  
                        0.2986,  0.5434,  0.4215,  0.3326,  0.1966,  0.1365,  
                        0.0743,  0.0303,  0.0873,  0.2317,  0.3342,  0.3609,  
                        0.4069,  0.3394,  0.1867,  0.1109,  0.0581,  0.0298,  
                        0.0455,  0.1888,  0.4168,  0.5983,  0.5732,  0.4644,  
                        0.3546,  0.2484,  0.1600,  0.0853,  0.0502,  0.1736,  
                        0.4843,  0.7929,  0.7128,  0.7045,  0.4388,  0.3630,  
                        0.1647,  0.0727,  0.0230,  0.1987,  0.7411,  0.9947,  
                        0.9665,  0.8316,  0.5873,  0.2819,  0.1961,  0.1459,  
                        0.0534,  0.0790,  0.2458,  0.4906,  0.5539,  0.5518,  
                        0.5465,  0.3483,  0.3603,  0.1987,  0.1804,  0.0811,  
                        0.0659,  0.1428,  0.4838,  0.8127 

                      };

REAL                  Mean;
REAL                  TrainError;
REAL                  TrainErrorPredictingMean;
REAL                  TestError;
REAL                  TestErrorPredictingMean;

FILE*                 f;//point of file


void NormalizeSunspots()
{
  INT  Year;
  REAL Min, Max;
	
  Min = MAX_REAL;
  Max = MIN_REAL;
  for (Year=0; Year<NUM_YEARS; Year++) {
    Min = MIN(Min, Sunspots[Year]);
    Max = MAX(Max, Sunspots[Year]);
  }
  Mean = 0;
  for (Year=0; Year<NUM_YEARS; Year++) {
    Sunspots_[Year] = 
    Sunspots [Year] = ((Sunspots[Year]-Min) / (Max-Min)) * (HI-LO) + LO;
    Mean += Sunspots[Year] / NUM_YEARS;
  }
}

//Change traning sample to input partten,and create a file for save result
void InitializeApplication(NET* Net)
{
  INT  Year, i;
  REAL Out, Err;

  Net->Alpha = 0.5;
  Net->Eta   = 0.05;
  Net->Gain  = 1;

  NormalizeSunspots();
  TrainErrorPredictingMean = 0;
  for (Year=TRAIN_LWB; Year<=TRAIN_UPB; Year++) {
    for (i=0; i<M; i++) {
      Out = Sunspots[Year+i];
      Err = Mean - Out;
      TrainErrorPredictingMean += 0.5 * sqr(Err);
    }
  }
  TestErrorPredictingMean = 0;
  for (Year=TEST_LWB; Year<=TEST_UPB; Year++) {
    for (i=0; i<M; i++) {
      Out = Sunspots[Year+i];
      Err = Mean - Out;
      TestErrorPredictingMean += 0.5 * sqr(Err);
    }
  }
  f = fopen("BPN.txt", "w");
}

//Close the file
void FinalizeApplication(NET* Net)
{
  fclose(f);
}


/******************************************************************************
                          I N I T I A L I Z A T I O N
 ******************************************************************************/

//Create the network,assign space for network 
void GenerateNetwork(NET* Net)
{
  INT l,i;

  Net->Layer = (LAYER**) calloc(NUM_LAYERS, sizeof(LAYER*));
   
  for (l=0; l<NUM_LAYERS; l++) {
    Net->Layer[l] = (LAYER*) malloc(sizeof(LAYER));
      
    Net->Layer[l]->Units      = Units[l];
    Net->Layer[l]->Output     = (REAL*)  calloc(Units[l]+1, sizeof(REAL));
    Net->Layer[l]->Error      = (REAL*)  calloc(Units[l]+1, sizeof(REAL));
    Net->Layer[l]->Weight     = (REAL**) calloc(Units[l]+1, sizeof(REAL*));
    Net->Layer[l]->WeightSave = (REAL**) calloc(Units[l]+1, sizeof(REAL*));
    Net->Layer[l]->dWeight    = (REAL**) calloc(Units[l]+1, sizeof(REAL*));
    Net->Layer[l]->Output[0]  = BIAS;
      
    if (l != 0) {
      for (i=1; i<=Units[l]; i++) {
        Net->Layer[l]->Weight[i]     = (REAL*) calloc(Units[l-1]+1, sizeof(REAL));
        Net->Layer[l]->WeightSave[i] = (REAL*) calloc(Units[l-1]+1, sizeof(REAL));
        Net->Layer[l]->dWeight[i]    = (REAL*) calloc(Units[l-1]+1, sizeof(REAL));
      }
    }
  }
  Net->InputLayer  = Net->Layer[0];
  Net->OutputLayer = Net->Layer[NUM_LAYERS - 1];
  Net->Alpha       = 0.9;
  Net->Eta         = 0.25;
  Net->Gain        = 1;
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品无人码麻豆乱码1区2区| 免费在线观看一区二区三区| 一本大道综合伊人精品热热| 精品噜噜噜噜久久久久久久久试看 | 国产精品久线在线观看| 日韩免费性生活视频播放| 日韩三级伦理片妻子的秘密按摩| 欧美日韩亚洲综合| 色香蕉成人二区免费| 精品国产免费人成在线观看| 久久久久久免费网| 国产亚洲综合av| 国产亚洲精品精华液| 偷拍日韩校园综合在线| 亚洲精品大片www| 亚洲欧美日韩国产综合在线| 欧美色欧美亚洲另类二区| 国产欧美日韩在线视频| 国产精品传媒入口麻豆| 黄色小说综合网站| 成人黄动漫网站免费app| 99re这里只有精品6| 精品视频一区二区不卡| 亚洲手机成人高清视频| 天堂影院一区二区| 国产精品69毛片高清亚洲| 成人激情小说乱人伦| 精品成人一区二区三区| 日本三级韩国三级欧美三级| 成人午夜精品一区二区三区| 欧美在线制服丝袜| 精品国产在天天线2019| 秋霞电影一区二区| 日韩午夜在线影院| 蜜臀91精品一区二区三区| 9久草视频在线视频精品| 51精品久久久久久久蜜臀| 欧美videossexotv100| 日韩不卡免费视频| 日韩欧美亚洲国产精品字幕久久久| 午夜精品久久久| 欧美一区二区三区免费视频| 亚洲视频在线一区二区| 色av成人天堂桃色av| 国产网站一区二区三区| 国产成人av电影在线观看| 777亚洲妇女| 另类的小说在线视频另类成人小视频在线| 99久久99久久精品国产片果冻| 欧美激情在线看| 国产成人综合在线观看| 中文在线免费一区三区高中清不卡| 欧美精品一区二区在线观看| 九色综合狠狠综合久久| 久久美女高清视频| 99re热这里只有精品视频| 亚洲国产精品视频| 国产一区二区三区久久悠悠色av | 国产综合久久久久久鬼色| 精品国产自在久精品国产| 成人午夜av电影| 亚洲精品国久久99热| 日韩视频免费直播| 高清日韩电视剧大全免费| 亚洲精品国产无天堂网2021| 日韩一区二区三区四区五区六区| 国产精品综合二区| 亚洲一区二区三区中文字幕| 不卡的电视剧免费网站有什么| 一区二区高清视频在线观看| 91小宝寻花一区二区三区| 中文无字幕一区二区三区 | 成a人片国产精品| 亚洲福利电影网| 久久久久久影视| 欧美性猛片xxxx免费看久爱| 亚洲乱码国产乱码精品精的特点| 欧美一区二区三级| 91同城在线观看| 精品在线一区二区三区| 伊人性伊人情综合网| 26uuu另类欧美亚洲曰本| 国产一区亚洲一区| 亚洲国产精品一区二区www在线| 久久久99久久精品欧美| 欧美日韩不卡一区| 全国精品久久少妇| 亚洲男人天堂一区| 91在线国产观看| 中文字幕一区二区三区在线播放| 久久一日本道色综合| 国产精一区二区三区| 91精品欧美福利在线观看| 男男成人高潮片免费网站| 中文字幕在线一区| www激情久久| 91精品国产综合久久久蜜臀图片| 99热精品国产| 国产电影精品久久禁18| 美女久久久精品| 午夜久久久影院| 一区二区在线观看免费| 国产精品久久夜| 国产亚洲人成网站| 久久看人人爽人人| 精品久久99ma| 日韩免费高清电影| 3751色影院一区二区三区| 在线免费视频一区二区| 91小视频免费观看| 亚洲乱码国产乱码精品精的特点| 欧美一卡二卡三卡| 99热99精品| 久久免费精品国产久精品久久久久| 欧美日韩一区三区四区| 色94色欧美sute亚洲线路一ni| 粉嫩av一区二区三区| 成人妖精视频yjsp地址| 国产福利91精品一区二区三区| 激情综合色综合久久| 精品在线视频一区| 国产精品亚洲一区二区三区在线| 精品亚洲国产成人av制服丝袜| 精品一区二区三区欧美| 精品一区二区三区免费毛片爱| 久久国产乱子精品免费女| 久久99最新地址| 成人一二三区视频| 波多野结衣亚洲一区| 91香蕉视频污在线| 欧美色综合影院| 日韩欧美一级在线播放| 久久久综合视频| 最新不卡av在线| 亚洲一区二区视频| 裸体健美xxxx欧美裸体表演| 在线日韩av片| 亚洲成人资源网| av激情成人网| 91女神在线视频| 欧美人与禽zozo性伦| 欧美不卡激情三级在线观看| 久久只精品国产| 亚洲欧洲日韩av| 丝袜亚洲另类欧美| 精品综合久久久久久8888| 国产精品18久久久久久久久| 99久久国产综合色|国产精品| 欧美私人免费视频| 精品国产三级a在线观看| 亚洲欧美日韩综合aⅴ视频| 丝袜美腿亚洲色图| 国产成人在线视频网址| 欧美在线一二三四区| 日韩一区二区三区视频在线| 欧美激情一区二区三区| 亚洲第一久久影院| 国产成人亚洲综合色影视| 欧美综合一区二区三区| 26uuu另类欧美| 亚洲第一福利视频在线| 国产成人综合在线| 日韩一区二区三区精品视频| 欧美日韩国产高清一区二区| 久久久国际精品| 亚洲一区二区三区四区的| 久久国产精品99精品国产| aaa亚洲精品| 精品国产乱码久久久久久1区2区| 亚洲欧美偷拍卡通变态| 国产精品影视网| 5月丁香婷婷综合| 亚洲欧美电影院| 国产麻豆日韩欧美久久| 国产精品人成在线观看免费| 美女视频第一区二区三区免费观看网站 | 欧美日韩高清一区二区不卡| 国产欧美一区二区三区在线老狼 | 精品一区二区在线观看| 在线亚洲高清视频| 国产精品久久久久毛片软件| 蜜臂av日日欢夜夜爽一区| 欧美视频三区在线播放| 成人免费在线视频观看| 国产精品88av| 精品国产一区二区在线观看| 亚洲成a人v欧美综合天堂| 91在线国产福利| 热久久免费视频| 亚洲欧美激情一区二区| 丰满亚洲少妇av| 成人免费在线视频观看| 国产精品视频一二| 日韩1区2区日韩1区2区| 欧美美女网站色| aaa亚洲精品| 国产精品视频看| 成人精品电影在线观看| 国产精品入口麻豆原神| va亚洲va日韩不卡在线观看|