📄 pred.h
字号:
//该文件专门保存各个环境变量和输入/输出训练对
static const int Ns=60; //训练样本的个数(无噪声的10个、含噪声的50个)
static const int Nsext=6; //在这里,等于6,即原纯净的样本经加噪后总的训练样本的数目扩为6倍
//一定有 Ns/Nsext等于10
static const int N_P=64; //训练样本的维数。这里为64,即采用8×8共64点阵的字体
static const int N_Layer1=9; //第一层所含神经元个数8/11/9
static const int N_Out=4; //输出层所含神经元个数
static const double PI=3.1415926;
static const double error_accept=0.2; //容许误差值0.02/0.05/0.2
static const double learnspeed=0.25; //学习速度0.04/0.03/0.3
static const int N_Err=15000; //最多迭代计算N_Err次均方误差
static const double rmobp=0.8; //动量因子 must<1
/////////////////////////////////////////////////////////////////////////////
//P_samples存储60组训练样本,其中前10组为纯净不带噪的数据,后50组为随机加噪的数据。每组数据为64维
static double P_samples[Ns][N_P]=
{ {0,0,1,1,1,1,1,0,
0,0,1,0,0,0,1,0,
0,0,1,0,0,0,1,0,
0,0,1,0,0,0,1,0,
0,0,1,0,0,0,1,0,
0,0,1,0,0,0,1,0,
0,0,1,0,0,0,1,0,
0,0,1,1,1,1,1,0},//数字 0
{0,0,0,1,0,0,0,0,
0,0,0,1,0,0,0,0,
0,0,0,1,0,0,0,0,
0,0,0,1,0,0,0,0,
0,0,0,1,0,0,0,0,
0,0,0,1,0,0,0,0,
0,0,0,1,0,0,0,0,
0,0,0,1,0,0,0,0},//数字 1
{0,0,1,1,1,1,0,0,
0,0,0,0,0,1,0,0,
0,0,0,0,0,1,0,0,
0,0,1,1,1,1,0,0,
0,0,1,0,0,0,0,0,
0,0,1,0,0,0,0,0,
0,0,1,0,0,0,0,0,
0,0,1,1,1,1,0,0},//数字 2
{0,0,1,1,1,1,0,0,
0,0,0,0,0,1,0,0,
0,0,0,0,0,1,0,0,
0,0,1,1,1,1,0,0,
0,0,0,0,0,1,0,0,
0,0,0,0,0,1,0,0,
0,0,0,0,0,1,0,0,
0,0,1,1,1,1,0,0},//数字 3
{0,1,0,0,1,0,0,0,
0,1,0,0,1,0,0,0,
0,1,0,0,1,0,0,0,
0,1,0,0,1,0,0,0,
0,1,0,0,1,0,0,0,
0,1,1,1,1,1,0,0,
0,0,0,0,1,0,0,0,
0,0,0,0,1,0,0,0},//数字 4
{0,0,1,1,1,1,0,0,
0,0,1,0,0,0,0,0,
0,0,1,0,0,0,0,0,
0,0,1,1,1,1,0,0,
0,0,0,0,0,1,0,0,
0,0,0,0,0,1,0,0,
0,0,0,0,0,1,0,0,
0,0,1,1,1,1,0,0},//数字 5
{0,0,1,0,0,0,0,0,
0,0,1,0,0,0,0,0,
0,0,1,0,0,0,0,0,
0,0,1,0,0,0,0,0,
0,0,1,1,1,1,0,0,
0,0,1,0,0,1,0,0,
0,0,1,0,0,1,0,0,
0,0,1,1,1,1,0,0},//数字 6
{0,0,1,1,1,1,0,0,
0,0,0,0,0,1,0,0,
0,0,0,0,0,1,0,0,
0,0,0,0,0,1,0,0,
0,0,0,0,0,1,0,0,
0,0,0,0,0,1,0,0,
0,0,0,0,0,1,0,0,
0,0,0,0,0,1,0,0},//数字 7
{0,0,1,1,1,1,1,0,
0,0,1,0,0,0,1,0,
0,0,1,0,0,0,1,0,
0,0,1,1,1,1,1,0,
0,0,1,0,0,0,1,0,
0,0,1,0,0,0,1,0,
0,0,1,0,0,0,1,0,
0,0,1,1,1,1,1,0},//数字 8
{0,1,1,1,1,1,0,0,
0,1,0,0,0,1,0,0,
0,1,0,0,0,1,0,0,
0,1,1,1,1,1,0,0,
0,0,0,0,0,1,0,0,
0,0,0,0,0,1,0,0,
0,0,0,0,0,1,0,0,
0,1,1,1,1,1,0,0}//数字 9
};
static double P_withnoise[60][N_P];
static double T_output[Ns][N_Out]=
{ {0.01, 0.01, 0.01, 0.01},//0
{0.01, 0.01, 0.01, 0.99},//1
{0.01, 0.01, 0.99, 0.01},//2
{0.01, 0.01, 0.99, 0.99},//3
{0.01, 0.99, 0.01, 0.01},//4
{0.01, 0.99, 0.01, 0.99},//5
{0.01, 0.99, 0.99, 0.01},//6
{0.01, 0.99, 0.99, 0.99},//7
{0.99, 0.01, 0.01, 0.01},//8
{0.99, 0.01, 0.01, 0.99} //9
}; //每行代表一个标准期望输出(与P_samples对应)
static double numE[N_Err];
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -