前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >相信吗,caffe上不写代码就可以运行mnist数据集训练与测试....

相信吗,caffe上不写代码就可以运行mnist数据集训练与测试....

作者头像
OpenCV学堂
发布2019-12-10 11:05:45
9340
发布2019-12-10 11:05:45
举报
文章被收录于专栏:贾志刚-OpenCV学堂

背景知识

本文基于Caffe-Windows系统下实现mnist手写数字识别LeNet网络的训练与测试。关于Caffe-Windows的安装与配置请参考下面的链接即可:

教程 | Caffe在Windows10系统上安装与配置

LeNet网络

只有五层的卷积神经网络,实现0~9数字识别!结构如下:

LMDB

Caffe中训练数据读取通过LMDB实现,支持文本、图像数据的key-value存储,通过数据层表述与训练时加载使用,所以需要把mnist数据集首先生成位LMDB格式的数据。Caffe中只需要运行下面的脚本工具即可实现。

运行mnist example

第一步:制作LMDB数据

发现caffe widnow的工具压根无法在windows系统环境下运行,最后我只好下载已经制作好的LMDB数据。我把下载好的train与test的LMDB放到了\caffe\data\mnist文件夹下。

第二步: 修改数据层

在caffe\examples\mnist文件夹下有两个跟训练与运行相关的文件

  1. lenet_solver.prototxt
  2. lenet_train_test.prototxt

这里需要打开第二个文件,打开之后修改数据输入层的数据路径部分,我修改好之后的显示如下:

第三步:修改训练配置文件参数

打开lenet_solver.prototxt文件,其中:

solver_mode // 表示是CPU运行还是GPU运行 max_iter: 10000 // 表示运行steps的数目 snapshot: 5000 // 表示每5000个step就保存一次caffemodel net:xxxxx // 表示网络描述与定义的文件路径(.prototxt)

最终我的修改如下:

代码语言:javascript
复制
# The train/test net protocol buffer definition
net: "D:/projects/caffe/examples/mnist/lenet_train_test.prototxt"
# test_iter specifies how many forward passes the test should carry out.
# In the case of MNIST, we have test batch size 100 and 100 test iterations,
# covering the full 10,000 testing images.
test_iter: 100
# Carry out testing every 500 training iterations.
test_interval: 500
# The base learning rate, momentum and the weight decay of the network.
base_lr: 0.01
momentum: 0.9
weight_decay: 0.0005
# The learning rate policy
lr_policy: "inv"
gamma: 0.0001
power: 0.75
# Display every 100 iterations
display: 100
# The maximum number of iterations
max_iter: 10000
# snapshot intermediate results
snapshot: 5000
snapshot_prefix: "D:/projects/caffe/examples/mnist/lenet"
# solver mode: CPU or GPU
solver_mode: CPU

一切准备就绪以后,直接在命令中执行如下 切换到如下目录:

代码语言:javascript
复制
D:\projects\caffe\scripts\build\install\bin

然后执行命令行

代码语言:javascript
复制
caffe train -solver D:/projects/caffe/examples/mnist/lenet_solver.prototxt

疯狂训练运行中,mnist示例caffe运行get!

我真的一行都代码都没写,Caffe真香!

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-12-05,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 OpenCV学堂 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 背景知识
    • LeNet网络
    • 运行mnist example
      • 第一步:制作LMDB数据
        • 第二步: 修改数据层
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档