【caffe 深度学习】1. mnist手写体数字识别

mnist数据集分类大致分为9步:

1.下载数据集
    http://yann.lecun.com/exdb/mnist/
2.下载的原始数据集为二进制文件,需要转换为LEVELDB或LMDB
3.修改网络模型描述文件caffe-windows\examples\mnist\lenet_train_test.prototxt
4.修改超参数文件caffe-windows\examples\mnist\lenet_solver.prototxt
5.开始训练模型
6.等待模型训练好,准备要测试的图片
7.生成均值文件
8.准备标签

9.测试分类效果

下面分别进行操作:

1.分别下载这四个数据集:


2.下载的原始数据集为二进制文件,需要转换为LEVELDB或LMDB

  (1)转换训练数据

    创建一个windows批处理文件,我这里命名为convert_train_lmdb.bat。用Notepad++修改为:


(批处理文件加参数有两种方法:1.不同参数在同一行用空格隔开。2.如图所示,用空格加^加回车)

    在图示位置新建一个lmdb文件夹(train_lmdb文件夹不能存在),然后运行批处理文件,运行结束后再lmdb文件夹里生产以下文件夹:


打开后:


  (2)转换测试数据

    新建一个批处理文件,这里命名为convert_test_lmdb.bat。用Notepad++修改为:


    运行批处理文件,在lmdb文件夹下生成了以下文件夹:


    打开后:

    


3.修改网络模型描述文件caffe-windows\examples\mnist\lenet_train_test.prototxt

   (1)把刚才生成的mdb训练数据导入模型(注意斜杠方向):


    (2)把刚才生成的mdb测试数据导入模型(注意斜杠方向):



4.修改超参数文件caffe-windows\examples\mnist\lenet_solver.prototxt

传入网络模型描述文件(注意斜杠方向):


在图上位置新建一个model文件夹,生成的网络模型保存到此文件夹,注意:modle后面一定要加反斜杠,博主这里就是开始几次没加反斜杠网络模型一直没生成。下图意思是迭代一万次,每五千次生成网络模型,cpu计算:

   


5.开始训练模型

    首先创建一个批处理文件用来进行模型训练,我这里取名叫train.bat用来调用caffe.exe文件。修改为(注意两行斜杠方向不一样):

    

   执行批处理文件:


等待一段时间后(cpu训练大约得一个小时),在超参数文件里设置好的目标文件夹model里生成以下四个文件:



6.等待模型训练好,准备要测试的图片。

    我这里准备了9张图片放在文件夹里:


    

7.生成均值文件。

    创建一个批处理文件用来调用计算均值的程序computer_image_mean.exe,我这里取名为:mniat_mean.bat。修改为:


    在目标位置创建mean_file文件夹。运行批处理文件后最终会生成mean.binaryproto文件.

    


8.准备标签。

    新建一个txt文件,我这里命名为label.txt。如图所示写入0-9:



9.测试分类效果。

    写一个批处理文件调用我们刚刚训练好的模型对我们准备好的0-9图片进行测试。批处理文件我这里取名为:mnist_classilifcation.bat。修改为:


运行批处理文件,我这里把数字3传入模型,得到的结果如下图:


上图意思是可能性最大的为“3”。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值