200字范文,内容丰富有趣,生活中的好帮手!
200字范文 > 【caffe】mnist数据集lenet训练与测试

【caffe】mnist数据集lenet训练与测试

时间:2022-01-01 23:28:52

相关推荐

【caffe】mnist数据集lenet训练与测试

在上一篇中,费了九牛二虎之力总算是把Caffe编译通过了,现在我们可以借助mnist数据集,测试下Caffe的训练和检测效果。

准备工作:在自己的工作目录下,新建一个文件夹,命名为mnist_test(根据自己的习惯设定)。同时,建议大家安装文本编辑神器Notepad++,用它来编辑各种格式的文本真的很方便!这里用于打开和编辑用到的各种文件。

1、mnist手写数字数据集下载(/exdb/mnist/)。

将下图中的4个文件均下载到mnist_test文件夹下,并解压到当前文件夹,得到如下4个文件:t10k-labels.idx1-ubyte,train-labels.idx1-ubyte,t10k-images.idx3-ubyte,train-images.idx3-ubyte。

2、lmdb格式训练集和测试集转换。

2.1 在mnist_test文件夹下新建两个文本文件,分别命名为:create_minist_trainlmdb.bat和create_minist_testlmdb.bat。

2.2 向create_minist_trainlmdb.bat中添加如下内容,并保存:

D:\Libraries\caffe\msvc_64\bin\convert_mnist_data.exe train-images.idx3-ubyte train-labels.idx1-ubyte mnist_train_lmdb pause

convert_mnist_data.exe位于caffe安装目录的bin文件夹下,无需将其拷到当前目录,只要制定其绝对路径即可。注意输入的文件名要正确,否则找不到,会报错!

2.3 向create_minist_testlmdb.bat中添加如下内容,并保存:

D:\Libraries\caffe\msvc_64\bin\convert_mnist_data.exe t10k-images.idx3-ubyte t10k-labels.idx1-ubyte mnist_test_lmdb pause

双击执行这两个.bat文件,会在当前文件夹下生成如下两个文件夹,里面分别保存着lmdb格式的训练集和测试集。

3、训练caffemodel并测试。

在caffe源码目录下有一个examples文件夹,在examples文件夹下有一个mnist文件夹,将该文件夹下如下三个文件:lenet.prototxt、lenet_solver.prototxt和lenet_train_test.prototxt,拷贝到mnist_test文件夹下。

打开lenet_solver.prototxt,将net的值改为lenet_train_test.prototxt,同时可以修改solver_mode,可以是CPU,也可以是GPU,其他参数也可以做适当调整,这里不再调整。

再打开lenet_train_test.prototxt,将对应的内容按照指定的格式进行修改,如下图所示:

新建一个文本文件,重新命名为train.bat,添加如下内容:

D:\Libraries\caffe\msvc_64\bin\caffe.exe train --solver=lenet_solver.prototxtpause

保存,双击执行,运行界面如下:

运行完毕,会在当前文件夹下生成如下四个文件(即训练出来的模型):

下面进行测试,在当前文件夹下新建一个文本文件,重新命名为test.bat,添加如下内容:

D:\Libraries\caffe\msvc_64\bin\caffe.exe test --model lenet_train_test.prototxt -weights=lenet_iter_10000.caffemodelpause

保存,双击打开,执行结果如下:

至此caffe模型训练完毕,下面使用图片进行实测。

4、计算mean.binaryproto。

在进行实测之前,我们需要计算模型的均值,具体方法如下。

4.1 打开之前的lenet_train_test.prototxt,作进一步修改,添加如下两处内容:

4.2 新建一个文本文件,重命名为computer_image_mean.bat,向其中添加如下内容:

D:\Libraries\caffe\msvc_64\bin\compute_image_mean.exe mnist_train_lmdb mean.binaryproto --backend=lmdbpause

保存,双击执行,会在当前目录下生成文件mean.binaryproto。

5、实际图片分类测试。

5.1 测试图片

有些博客介绍了如何生成测试图片(/zb1165048017/article/details/52217772),这里就不做多的介绍了。可以直接将下面的这个图片保存到当前目录下,供测试使用。

5.2 新建一个文本文档,命名为label.txt,添加如下内容:

5.3 新建一个文本文档,重新命名为classification.bat,添加如下内容:

D:\Libraries\caffe\msvc_64\bin\classification.exe lenet.prototxt lenet_iter_10000.caffemodel mean.binaryproto label.txt 5.pngpause

保存,双击执行,如下:

这里,我们也可以使用leveldb格式的文件进行测试,只需要将相应配置选项由lmdb转换成leveldb即可。

参考资料:

[1]/yixuan-xu/p/5858595.html;

[2]/zb1165048017/article/details/52217772;

.07.19

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。