backprop.h

来自「用VC编写神经网络的程序」· C头文件 代码 · 共 45 行

H
45
字号
#ifndef _BACKPROP_H_
#define _BACKPROP_H_
#define BIGRND 0X7fffffff
/*********************************************************************
   神经网络的数据结构。网络为一个全连接的三层前向结构,每层单元0是阈值,
   所以真正的神经元编号为1-n
*********************************************************************/
typedef struct{
	int input_n;   //输入层神经元个数
	int hidden_n;
	int output_n;

    double *input_units;//输入层神经元
	double *hidden_units;
    double *output_units;

    double *hidden_delta;//隐含层的误差
	double *output_delta;

	double *target;      //目标向量

	double **input_weights;//输入层到隐含层的连接权
	double **hidden_weights;//隐含层到输出层的连接权

	double **input_prev_weights;//前次输入层到隐藏层权值的改变
	double **hidden_prev_weights;
}BPNN;

 /*用户接口(functions)*/

/*初始化随机数种子*/
   void bpnn_initialize(int seed);
/*创建BP网络*/
   BPNN *bpnn_create(int n_in,int n_hidden,int n_out);
/*释放BP网络所占内存空间*/
   void bpnn_free(BPNN *net);
/*训练BP网络*/
   void bpnn_train(BPNN *net,double eta,double momentum,double *eo,double *eh);
/*前向运算*/
   void bpnn_feedforward(BPNN *net);
/*保存BP网络到文件中*/
   void bpnn_save(BPNN *net,char *filename);
/*从文件中读取BP网络参数*/
   BPNN *bpnn_read(char *filename);
#endif

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?