神经网络的BP算法最基本实现
//BP算法简单实现,C语言代码可运行,详细注释
//代码存放文件本文用的绝对路径,会报错,请自行更改路径或者改成相对路径 ///
#include
#include
#include
#include
#define input 2 //输入层
#define hidden 10 //隐层
#define output 1 //输出层
#define sampleNum 90 //样本容量
#define test 10 //测试集容量
#define nr 0.1 //学习效率
#define EPS 0.00001
float
x[sampleNum][input],d[sampleNum][output],whi[input][hidden],wij[hidden][output],thi[hidden],thj[output];
//x是输入的值,d是输出的值,whi是权值,
int h,i,j,k,ff;
double testdata[1][2];
float xmin[input],xmax[input],dmin[output],dmax[output];
FILE *fp1,*fp2,*fp3,*fp4;
void init(void);
void startleaning(void);
void testsample(void);
void readw(void);
void readt(void);
void writew(void);
float sigmoid(float a);
double ranu(void);
void init(void)
{
int min,max;
if(fp1==0)
{
system("cls");
printf("Can not find the learning sample file!\n");
exit(0);
}