win10环境下cpu版本caffe训练mnist数据集的心得 openmv机器学习卷积神经网络训练步骤二

win10环境下cpu版本caffe训练mnist数据集的心得 openmv机器学习卷积神经网络训练步骤二

Caffe快速上手 mnist数据集分类

1.下载数据集

yann.lecun.com/exdb/mnist/ (网络要求高,另附以下下载方式)
链接:https://pan.baidu.com/s/1ADDhMGx5QBYydY84G7dshw
提取码:4f74
在这里插入图片描述
将所下载的4个(压缩包)二进制数据集放入caffe目录下example下的mnist下新建的mnist_data文件下,并解压到该文件下,如下图
在这里插入图片描述

2.将下载的二进制文件转换成LEVELDB或LMDB格式的文件
之前编译输出的文件下caffe-windows ->Build->x64 ->Dubug目录下有一个convert_mnist_data.exe文件,此文件可实现文件格式转换功能
在这里插入图片描述

在caffe-windows ->example->mnist文件夹下新建bat文件,再bat文件夹下新建convert_train_lmdb.bat,用notepad++编辑如下文字

%执行数据转换程序%
%传入训练图片%
%传入训练图片的标签%
%转换后的数据存放在此目录%

E:\caffe-cpu\caffe-windows\Build\x64\Debug\convert_mnist_data.exe ^
E:\caffe-cpu\caffe-windows\examples\mnist\MNIST_data\train-images.idx3-ubyte ^
E:\caffe-cpu\caffe-windows\examples\mnist\MNIST_data\train-labels.idx1-ubyte ^
E:\caffe-cpu\caffe-windows\examples\mnist\lmdb\train_lmdb

文件的路径需要根据自己的存放路径进行修改
注意:第四行需要在mnist文件夹下新建lmdb文件,但是不需要在lmdb文件下新建train_lmdb,此文件会自动生成。修改好之后保存,然后双击此bat文件即可执行该文件,执行完之后的结果时lmdb文件夹下会创建一个train_lmdb的文件如下图
在这里插入图片描述
同理,在在caffe-windows ->example->mnist ->bat文件夹下新建convert_test_lmdb.bat,用notepad++编辑如下文字

> %执行数据转换程序%
>  %传入测试图片% 
>  %传入测试图片的标签% 
>  %转换后的数据存放在此目录%
> 
> E:\caffe-cpu\caffe-windows\Build\x64\Debug\convert_mnist_data.exe ^
> E:\caffe-cpu\caffe-windows\examples\mnist\MNIST_data\t10k-images.idx3-ubyte ^
> E:\caffe-cpu\caffe-windows\examples\mnist\MNIST_data\t10k-labels.idx1-ubyte ^ 
> E:\caffe-cpu\caffe-windows\examples\mnist\lmdb\test_lmdb pause

文件的路径也是需要自己根据自己的存放路径进行修改的,同样test_lmdb不需要自己新建,保存好之后,双击convert_test_lmdb.bat文件运行,得到如下图:
在这里插入图片描述

3.修改网络模型描述文件
在mnist文件夹下会有一个lenet_train_test.prototxt文件,需要对其进行修改
在这里插入图片描述
使用notepad++打开进行编辑
在这里插入图片描述
主要是把刚刚生成的lmdb的路径进行修改,train_lmdb和test_lmdb注意复制过来的路径斜杠是这样的\,需要把\变成/,切记。
之后打开mnist下的lenet_solver.prototxt文件,对其进行修改
在这里插入图片描述
也主要是路径的修改
在这里插入图片描述
Net路径修改成刚刚那个lenet_train_test.prototxt,注意修改成反斜杠/
max_iter:10000 总共训练10000次
Snapshot:5000 每5000次输出一次
模型文件存放目录snapshot_prefix:需要自己设定
Solver_model: cpu 使用CPU训练
4.训练模型
在bat文件夹下新建train.bat文件
进行修改

> %train训练数据% 
>  %超参数文件%
> 
> E:\caffe-cpu\caffe-windows\Build\x64\Debug\caffe.exe train ^
> -solver=E:/caffe-cpu/caffe-windows/examples/mnist/lenet_solver.prototxt
> pause

注意:修改为自己的路径,第一行斜杠为\,第二行斜杠为/。修改完成后就可以训练了,一般情况下cpu训练一个小时左右(i7-9750H亲测48分钟)
Pause是训练结束后会停住
按照我的教程,训练好的文件会存放到mnist文件下
在这里插入图片描述
在mnist文件下新建model文件,把这四个文件放进去。
5.准备好要测试的图片
下载链接:
链接:https://pan.baidu.com/s/1Zw3Ji0rwN9ETlWn7A2xDsw
提取码:sycr
下载好之后放入到mnist_data文件夹下,文件名为0-9,里边有10张28*28像素的图片,在bat文件夹下新建一个mnist_mean.bat文件,并进行编辑

> %计算均值程序% 
> %train_lmdb% 
> %均值文件存放路径%
> 
> E:\caffe-cpu\caffe-windows\Build\x64\Debug\compute_image_mean.exe ^
> E:\caffe-cpu\caffe-windows\examples\mnist\lmdb\train_lmdb ^
> E:\caffe-cpu\caffe-windows\examples\mnist\mean_file\mean.binaryproto
> Pause

路径修改成自己的路径,需要在mnist文件夹下新建mean_file文件,不需要新建mean.binaryproto,否则会报错,保存之后运行,运行完会在mean_file文件夹下生成一个mean.binaryproto文件
在这里插入图片描述
6.准备标签并测试分类效果
在mnist文件夹下新建label文件夹,新建label.txt,对其进行编辑如下并保存
在这里插入图片描述
在bat文件夹下新建mnist_classification.bat并进行编辑

> %分类可执行程序% 
> %网络结构% 
> %训练好的模型%
>  %均值文件% 
>  %标签% 
>  %要分类的图片%
> 
> E:\caffe-cpu\caffe-windows\Build\x64\Debug\classification.exe ^
> E:\caffe-cpu\caffe-windows\examples\mnist\lenet.prototxt ^
> E:\caffe-cpu\caffe-windows\examples\mnist\models\lenet_iter_10000.caffemodel ^
>  E:\caffe-cpu\caffe-windows\examples\mnist\mean_file\mean.binaryproto ^ 
> E:\caffe-cpu\caffe-windows\examples\mnist\label\label.txt ^
> E:\caffe-cpu\caffe-windows\examples\mnist\MNIST_data\0-9\5.bmp Pause

更改成自己的路径,随意选取一张图片,以5为例

运行结果如下,即为5的准确率为100%

在这里插入图片描述
慢慢来,这只是安装好之后的测试,如果需要训练自己的模型,首先需要采集照片,大概一个类别至少800张,需要后边的教程,博客第二次写,第一次写的惨不忍睹,这次希望有点进步

  • 6
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值