randomized作者
10年2个月前修改于 10年1个月前IP:广东
826731
2楼
代码使用指南-test.cpp

test.cpp是一份用于测试该库性能的代码,使用MINST对其进行测试。

   printf("===========\nMINST_READ\n===========\n");
   printf("--\nReading training images.\n");
   ImgArr train_img = read_Img("./MINST/train-images.idx3-ubyte");
   printf("Read training images finished.\n");
   printf("Training images data:\n");
   printf("%d images.\n",train_img->ImgNum);
   printf("--\nReading testing images.\n");
   printf("Size : %d*%d.\n",train_img->ImgPtr[0].c,train_img->ImgPtr[0].r);
   ImgArr test_img = read_Img("./MINST/t10k-images.idx3-ubyte");
   printf("Read testing images finished.\n");
   printf("Testing images data:\n");
   printf("%d images.\n",test_img->ImgNum);
   printf("Size : %d*%d.\n",test_img->ImgPtr[0].c,test_img->ImgPtr[0].r);

   printf("--\nReading training lables.\n");
   LabelArr train_label = read_Lable("./MINST/train-labels.idx1-ubyte");
   printf("Read training lables finished.\n");
   printf("Training lables data:\n");
   printf("%d lables.\n",train_label->LabelNum);
   printf("--\nReading testing lables.\n");
   LabelArr test_label = read_Lable("./MINST/t10k-labels.idx1-ubyte");
   printf("Read testing lables finished.\n");
   printf("Testing lables data:\n");
   printf("%d lables.\n",test_label->LabelNum);

这一段代码用于读取MINST数据集。

CNN.init();

该函数的作用是初始化卷积神经网络。

   for (int i=0;i<train_img->ImgNum;i++){
   	if ((i%25)==0){
   		printf("%d\n",i);
   	}
   	input_minst(train_img->ImgPtr[i]);
   	do {
   		CNN.train(train_label->LabelPtr[i].LabelData,0.0005,0.0005,0.0005);
   		CNN.calculate();
   	}while (sort(train_label->LabelPtr[i].LabelData)!=sort(CNN.FC_9.y));
   	
   }
</train_img->

这是用于训练的代码,在该代码外加一层循环就可以改变训练次数。

   for (int i=0;i<test_img->ImgNum;i++){
   	input_minst(test_img->ImgPtr[i]);
   	CNN.calculate();
   	if (sort(test_label->LabelPtr[i].LabelData)!=sort(CNN.FC_9.y)){
   		right+=1;
   	}
   }
</test_img->

该段代码用于计算正确率。

void input_minst(MinstImg input); 该函数将MINST数据输入到神经网络中;

int sort(float *data); 该函数用于计算输出数组中最大值的序号。

评论
文号 / 826731

百炼成钢
名片发私信
学术分 1
总主题 13 帖总回复 86 楼拥有证书:进士 学者 机友 笔友
注册于 2015/02/04 16:01:09最后登录 2020/07/28 23:48:05
主体类型:个人
所属领域:无
认证方式:手机号
IP归属地:江西

个人简介

暂未填写
笔记
{{note.content}}
{{n.user.username}}
{{fromNow(n.toc)}} {{n.status === noteStatus.disabled ? "已屏蔽" : ""}} {{n.status === noteStatus.unknown ? "正在审核" : ""}} {{n.status === noteStatus.deleted ? '已删除' : ''}}
  • 编辑
  • 删除
  • {{n.status === 'disabled' ? "解除屏蔽" : "屏蔽" }}
我也是有底线的